[dm-devel] About dm-integrity layer and fsync
Mikulas Patocka
mpatocka at redhat.com
Fri Jan 3 17:14:07 UTC 2020
On Fri, 3 Jan 2020, Patrick Dung wrote:
> Hello,
>
> A quick question on dm-integrity. Does dm-integrity layer honors fsync?
Yes it does.
However, it writes data into the journal and when the journal is flushed,
it reports the fsync function as finished.
On a mechanical disk, writes to contiguous space (i.e. the journal) are
faster than random writes all over the disk, that's why you see better
performance with dm-integrity than without it.
Mikulas
> I was testing dm-integrity and performance. It had a strange result that using dm-integrity with journal is faster than a normal file system or dm-integrity with
> bitmap (no journal). fio is used for testing the storage performance. The device is a SATA hard disk drive. Then I created a 100GB partition for testing.
>
> Below is the test cases:
>
> 1) XFS on a partition directly test case
>
> 2) dm-integrity: crc32c on a partition with default setting journal commit interval is 10 seconds. Then create XFS on it. test case
>
> 3) dm-integrity: crc32c on a partition default setting journal commit interval set to 5 seconds. Then create XFS on it.
>
> 4) dm-integrity: crc32c on a partition default setting but using bitmap instead of journal. Then create XFS on it.
>
> FIO command:
>
> fio --filename=./t1 --direct=1 --rw=randrw --refill_buffers --norandommap --randrepeat=0 --ioengine=sync --bs=4k --rwmixread=75 --iodepth=16 --numjobs=8 --runtime=60
> --group_reporting --fsync=1 --name=4ktest --size=4G
>
> Result:
>
> 1. Read/Write IOPS: 117/41. Read/Write Speed 481KB/s 168KB/s
> 2. Read/Write IOPS: 178/59. Read/Write Speed 732KB/s 244KB/s
> 3. Read/Write IOPS: 169/57. Read/Write Speed 695KB/s 236KB/s
> 4. Read/Write IOPS: 97/32. Read/Write Speed 400K/s 131KB/s
> The original discussion in: https://gitlab.com/cryptsetup/cryptsetup/issues/513 . Milan Broz said the dm-devel mailing list is a suitable place to discuss the probem.
>
> Thanks in advance.
>
> Patrick
>
>
More information about the dm-devel
mailing list