On Wed, 18 Jul 2012, Michael Traffanstead wrote:
I have an 8 drive ZFS array (RAIDZ2 - 1 Spare) using 5900rpm 2TB SATA drives
with an hpt27xx controller under FreeBSD 10
(but I've seen the same issue with FreeBSD 9).
The system has 8gigs and I'm letting FreeBSD auto-size the ARC.
Running iozone (from ports), everything is fine for file sizes up to 8GB, but
when it runs with a 16GB file the random write
performance plummets using 64K record sizes.
This is normal. The problem is that with zfs 128k block sizes, zfs
needs to re-read the original 128k block so that it can compose and
write the new 128k block. With sufficient RAM, this is normally
avoided because the original block is already cached in the ARC.
If you were to reduce the zfs blocksize to 64k then the performance
dive at 64k would go away but there would still be write performance
loss at sizes other than a multiple of 64k.
GraphicsMagick Maintainer, http://www.GraphicsMagick.org/
zfs-discuss mailing list