zpios(1) Directly test the DMU.

SYNOPSIS

zpios [options] <-p pool>

DESCRIPTION

This utility runs in-kernel DMU performance and stress tests that do not depend on the ZFS Posix Layer ("ZPL").

OPTIONS

-s regex, --threadcount regex
Start this many threads for each test series, specified as a comma delimited regular expression. (eg: "-s 1,2,3")
This option is mutually exclusive with the threadcount_* options.
-l regex_low, --threadcount_low regex_low
-h regex_high, --threadcount_high regex_high
-e regex_incr, --threadcount_incr regex_incr
Start regex_low threads for the first test, add regex_incr threads for each subsequent test, and start regex_high threads for the last test.
These three options must be specified together and are mutually exclusive with the threadcount option.
-n regex, --regioncount regex
Create this many regions for each test series, specified as a comma delimited regular expression. (eg: "-n 512,4096,65536")
This option is mutually exclusive with the regioncount_* options.
-i regex_low, --regioncount_low regex_low
-j regex_high, --regioncount_high regex_high
-k regex_incr, --regioncount_incr regex_incr
Create regex_low regions for the first test, add regex_incr regions for each subsequent test, and create regex_high regions for the last test.
These three options must be specified together and are mutually exclusive with the regioncount option.
-o size, --offset size
Create regions at size offset for each test series, specified as a comma delimited regular expression with an optional unit suffix. (eg: "-o 4M" means four megabytes.)
This option is mutually exclusive with the offset_* options.
-m size_low, --offset_low size_low
-q size_high, --offset_high size_high
-r size_incr, --offset_incr size_incr
Create a region at size_low offset for the first test, add size_incr to the offset for each subsequent test, and create a region at size_high offset for the last test.
These three options must be specified together and are mutually exclusive with the offset option.
-c size, --chunksize size
Use size chunks for each test, specified as a comma delimited regular expression with an optional unit suffix. (eg: "-c 1M" means one megabyte.) The chunk size must be at least the region size.
This option is mutually exclusive with the chunksize_* options.
-a
size_low, --chunksize_low size_low
-b size_high, --chunksize_high size_high
-g size_incr, --chunksize_incr size_incr
Use a size_low chunk size for the first test, add size_incr to the chunk size for each subsequent test, and use a size_high chunk size for the last test.
These three options must be specified together and are mutually exclusive with the chunksize option.
-L dmu_flags, --load dmu_flags
Specify dmuio for regular DMU_IO, ssf for single shared file access, or fpp for per thread access. Use commas to delimit multiple flags. (eg: "-L dmuio,ssf")
-p name, --pool name
The pool name, which is mandatory.
-M test, --name test
An arbitrary string that appears in the program output.
-x, --cleanup
Enable the DMU_REMOVE flag.
-P command, --prerun command
Invoke command from the kernel before running the test. Shell expansion is not performed and the environment is set to HOME=/; TERM=linux; PATH=/sbin:/usr/sbin:/bin:/usr/bin.
-R command, --postrun command
Invoke command from the kernel after running the test. Shell expansion is not performed and the environment is set to HOME=/; TERM=linux; PATH=/sbin:/usr/sbin:/bin:/usr/bin.
-G directory, --log directory
Put logging output in this directory.
-I size, --regionnoise size
Randomly vary the regionsize parameter for each test modulo size bytes.
-N size, --chunknoise size
Randomly vary the chunksize parameter for each test modulo size bytes.
-T time, --threaddelay time
Randomly vary the execution time for each test modulo time kernel jiffies.
-V, --verify
Enable the DMU_VERIFY flag for trivial data verification.
-z, --zerocopy
Enable the DMU_READ_ZC and DMU_WRITE_ZC flags, which are currently unimplemented for Linux.
-O, --nowait
Enable the DMU_WRITE_NOWAIT flag.
-f, --noprefetch
Enable the DMU_READ_NOPF flag.
-H, --human-readable
Print PASS and FAIL results explicitly and put unit suffixes on large numbers.
-v, --verbose
Increase output verbosity.
-? , --help
Print the usage message.

AUTHORS

The original zpios implementation was created by Cluster File Systems Inc and adapted to ZFS on Linux by Brian Behlendorf <[email protected]>.

This man page was written by Darik Horn <[email protected]>.