Documentation update request - iozone
FreeNAS 9.2 (? I think) enables compression by default on new ZFS pools. Can you update the section of the documentation about performance testing to mention this and how it might affect performance testing?
For example, Section 14.3 could include a suggestion to use the following additional iozone command line parameters which tell it use test data that is not compressible: "-+w 0 -+y 0 -+C 0"
#6 Updated by eraser - over 6 years ago
I contacted the ioZone developer. Turns out that there are two issues here:
64-bit builds of ioZone prior to v3.424 have a bug where the "-+w # -+y # -+C #" options generate data that is more compressible then expected. This has been fixed in version 3.424 released on April 9th (yesterday).
ioZone does not consider zero (0) to be a valid parameter for the -+w, -+y, or -+C options. End result is the same as not specifying those options at all.
I updated the wiki to reflect this information.
#7 Updated by Anonymous over 6 years ago
You can also create a dataset, turn off compression in it, and put the test files there.
Compression is a dataset property, not a pool property, and like recordsize is inherited by newly created files.
Using flags to create "uncompressible" streams on a compressible filesystem will distort the test results as iozone will consume excessive CPU generating the data stream. Much easier to just turn off compression if you are not interested in testing it.
#9 Updated by Anonymous over 6 years ago
Not saying there isn't value, but you have to understand the tradeoffs and what you are actually testing. Uncompressible data though a compressing filesystem onto a compressing device is getting into rare corner cases and worst-worst case performance. You have to be sure that this is important to you and your application before running it.
#10 Updated by eraser - over 6 years ago
Completely agree. I just didn't want people to start running iozone tests without realizing that their ZFS datasets have compression enabled by default. I updated the wiki documentation to also include the suggestion of disabling compression on the ZFS dataset instead.