Samba Performance for MacOS Clients (TrueNAS Scale)

This isn’t going to really make an impact, if APFS is being run in a VM on top of ZFS storage (or on ZFS storage via iSCSI), because ZFS will nod its head sagely at the “location” APFS asks to put sectors/clusters, and go right the hell about writing them wherever ZFS would normally write them anyway, since ZFS is essentially presenting the APFS filesystem with a fake, virtual block address map that ZFS itself translates down to the actual physical sectors of the drives in question.

With that said, if you’re using zvols, you’re going to lose a LOT of performance right there. Zvol performance sucks, a lot. You’re generally much better off using a sparse file (eg truncate -s 100G hundredgig.raw) rather than a zvol.

Make sure to set recordsize (or, if you insist on using zvols, god help you, volblocksize) appropriately to your workload–set it too low, you amplify IOPS demands of a relatively easy workload that otherwise could get more throughput; set it too high, you wind up with read/write amplification that will cripple more difficult, high-IOPS workloads.

1 Like