Hi Folks,
I am experimenting with ZFS on the latest FreeBSD release, and looking at its performance. Particularly interested in synchronous write performance. Using iozone for testing.
Hardware Setup/Tuning
=====================
Memory = 16GB
Default ARC settings ~15GB
L2ARC = 240 GB on a SSD1 partition 1
ZIL/SLOG = 16 GB on the SSD1 partition 2
HDD = 2 partitions of 924g each from different disks. Striped(by default). No RAID.
Compression off
Dedup off
Rest of the settings are mostly default.
======================
WIth this I get the following numbers for a single stream write of 32G file, with 512K record size (512k on each write)
Sequential write without O_SYNC = 211 MB/s
Sequential write with O_SYNC = 112 MB/s
Random write without O_SYNC = 199 MB/s
Random write with O_SYNC = 103 MB/s
The sync write performance is almost half. While monitoring the disk usages and performance while the test is running, I notice there is flushing of data from the ZIL which is causing the bursty writes. ZIL seems to accumulate about 990 MB of data before flushing it out.
I played around a bit with the tunables mentioned in https://wiki.freebsd.org/ZFSTuningGuide. But could not improve sync write performance much.
Could you please suggest best practices and tuning suggestions to improve sync write performance.
Thanks
I am experimenting with ZFS on the latest FreeBSD release, and looking at its performance. Particularly interested in synchronous write performance. Using iozone for testing.
Hardware Setup/Tuning
=====================
Memory = 16GB
Default ARC settings ~15GB
L2ARC = 240 GB on a SSD1 partition 1
ZIL/SLOG = 16 GB on the SSD1 partition 2
HDD = 2 partitions of 924g each from different disks. Striped(by default). No RAID.
Compression off
Dedup off
Rest of the settings are mostly default.
======================
WIth this I get the following numbers for a single stream write of 32G file, with 512K record size (512k on each write)
Sequential write without O_SYNC = 211 MB/s
Sequential write with O_SYNC = 112 MB/s
Random write without O_SYNC = 199 MB/s
Random write with O_SYNC = 103 MB/s
The sync write performance is almost half. While monitoring the disk usages and performance while the test is running, I notice there is flushing of data from the ZIL which is causing the bursty writes. ZIL seems to accumulate about 990 MB of data before flushing it out.
I played around a bit with the tunables mentioned in https://wiki.freebsd.org/ZFSTuningGuide. But could not improve sync write performance much.
Could you please suggest best practices and tuning suggestions to improve sync write performance.
Thanks