242 lines
7.6 KiB
Groff
242 lines
7.6 KiB
Groff
'\" t
|
|
.\"
|
|
.\" CDDL HEADER START
|
|
.\"
|
|
.\" The contents of this file are subject to the terms of the
|
|
.\" Common Development and Distribution License (the "License").
|
|
.\" You may not use this file except in compliance with the License.
|
|
.\"
|
|
.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
|
|
.\" or http://www.opensolaris.org/os/licensing.
|
|
.\" See the License for the specific language governing permissions
|
|
.\" and limitations under the License.
|
|
.\"
|
|
.\" When distributing Covered Code, include this CDDL HEADER in each
|
|
.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
|
|
.\" If applicable, add the following below this CDDL HEADER, with the
|
|
.\" fields enclosed by brackets "[]" replaced with your own identifying
|
|
.\" information: Portions Copyright [yyyy] [name of copyright owner]
|
|
.\"
|
|
.\" CDDL HEADER END
|
|
.\"
|
|
.\"
|
|
.\" Copyright 2013 Darik Horn <dajhorn@vanadac.com>. All rights reserved.
|
|
.\"
|
|
.\" Copyright (c) 2015, Intel Corporation.
|
|
.\"
|
|
.TH zpios 1 "2013 FEB 28" "ZFS on Linux" "User Commands"
|
|
|
|
.SH NAME
|
|
zpios \- Directly test the DMU.
|
|
.SH SYNOPSIS
|
|
.LP
|
|
.BI "zpios [options] <\-p " pool ">"
|
|
|
|
.SH DESCRIPTION
|
|
This utility runs in-kernel DMU performance and stress tests that do
|
|
not depend on the ZFS Posix Layer ("ZPL").
|
|
|
|
.SH OPTIONS
|
|
.HP
|
|
.BI "\-t" " regex" ", \-\-threadcount" " regex"
|
|
.IP
|
|
Start this many threads for each test series, specified as a comma
|
|
delimited regular expression. (eg: "-t 1,2,3")
|
|
.IP
|
|
This option is mutually exclusive with the \fBthreadcount_*\fR
|
|
options.
|
|
.HP
|
|
.BI "\-l" " regex_low" ", \-\-threadcount_low" " regex_low"
|
|
.HP
|
|
.BI "\-h" " regex_high" ", \-\-threadcount_high" " regex_high"
|
|
.HP
|
|
.BI "\-e" " regex_incr" ", \-\-threadcount_incr" " regex_incr"
|
|
.IP
|
|
Start \fIregex_low\fR threads for the first test,
|
|
add \fIregex_incr\fR threads for each subsequent test,
|
|
and start \fIregex_high\fR threads for the last test.
|
|
.IP
|
|
These three options must be specified together and are mutually
|
|
exclusive with the \fBthreadcount\fR option.
|
|
.HP
|
|
.BI "\-n" " regex" ", \-\-regioncount" " regex"
|
|
.IP
|
|
Create this many regions for each test series, specified as a comma
|
|
delimited regular expression. (eg: "-n 512,4096,65536")
|
|
.IP
|
|
This option is mutually exclusive with the \fBregioncount_*\fR
|
|
options.
|
|
.HP
|
|
.BI "\-i" " regex_low" ", \-\-regioncount_low" " regex_low"
|
|
.HP
|
|
.BI "\-j" " regex_high" ", \-\-regioncount_high" " regex_high"
|
|
.HP
|
|
.BI "\-k" " regex_incr" ", \-\-regioncount_incr" " regex_incr"
|
|
.IP
|
|
Create \fIregex_low\fR regions for the first test,
|
|
add \fIregex_incr\fR regions for each subsequent test, and
|
|
create \fIregex_high\fR regions for the last test.
|
|
.IP
|
|
These three options must be specified together and are mutually
|
|
exclusive with the \fBregioncount\fR option.
|
|
.HP
|
|
.BI "\-o" " size" ", \-\-offset" " size"
|
|
.IP
|
|
Create regions at \fIsize\fR offset for each test series, specified as
|
|
a comma delimited regular expression with an optional unit suffix.
|
|
(eg: "-o 4M" means four megabytes.)
|
|
.IP
|
|
This option is mutually exclusive with the \fBoffset_*\fR options.
|
|
.HP
|
|
.BI "\-m" " size_low" ", \-\-offset_low" " size_low"
|
|
.HP
|
|
.BI "\-q" " size_high" ", \-\-offset_high" " size_high"
|
|
.HP
|
|
.BI "\-r" " size_incr" ", \-\-offset_incr" " size_incr"
|
|
.IP
|
|
Create a region at \fIsize_low\fR offset for the first test, add
|
|
\fIsize_incr\fR to the offset for each subsequent test, and create
|
|
a region at \fIsize_high\fR offset for the last test.
|
|
.IP
|
|
These three options must be specified together and are mutually
|
|
exclusive with the \fBoffset\fR option.
|
|
.HP
|
|
.BI "\-c" " size" ", \-\-chunksize" " size"
|
|
.IP
|
|
Use \fIsize\fR 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.
|
|
.IP
|
|
This option is mutually exclusive with the \fBchunksize_*\fB options.
|
|
.HP
|
|
.BI "\-a" " size_low" ", \-\-chunksize_low" " size_low"
|
|
.HP
|
|
.BI "\-b" " size_high" ", \-\-chunksize_high" " size_high"
|
|
.HP
|
|
.BI "\-g" " size_incr" ", \-\-chunksize_incr" " size_incr"
|
|
.IP
|
|
Use a \fIsize_low\fR chunk size for the first test, add \fIsize_incr\fR
|
|
to the chunk size for each subsequent test, and use a \fIsize_high\fR
|
|
chunk size for the last test.
|
|
.IP
|
|
These three options must be specified together and are mutually
|
|
exclusive with the \fBchunksize\fR option.
|
|
.HP
|
|
.BI "\-s" " size" ", \-\-regionsize" " size"
|
|
.IP
|
|
Use \fIsize\fR regions for each test, specified as a comma delimited
|
|
regular expression with an optional unit suffix. (eg: "-s 1M" means
|
|
one megabyte.)
|
|
.IP
|
|
This option is mutually exclusive with the \fBregionsize_*\fB options.
|
|
.HP
|
|
.BI "\-A" " size_low" ", \-\-regionsize_low" " size_low"
|
|
.HP
|
|
.BI "\-B" " size_high" ", \-\-regionsize_high" " size_high"
|
|
.HP
|
|
.BI "\-C" " size_incr" ", \-\-regionsize_incr" " size_incr"
|
|
.IP
|
|
Use a \fIsize_low\fR region size for the first test, add \fIsize_incr\fR
|
|
to the region size for each subsequent test, and use a \fIsize_high\fR
|
|
region size for the last test.
|
|
.IP
|
|
These three options must be specified together and are mutually
|
|
exclusive with the \fBregionsize\fR option.
|
|
.HP
|
|
.BI "\-S" " size | sizes" ", \-\-blocksize" " size | sizes"
|
|
.IP
|
|
Use \fIsize\fR ZFS blocks for each test, specified as a comma delimited
|
|
regular expression with an optional unit suffix. (eg: "-S 1M" means
|
|
one megabyte.) The supported range is powers of two from 128K through 16M.
|
|
A range of blocks can be tested as follows: "-S 128K,256K,512K,1M".
|
|
.IP
|
|
.HP
|
|
.BI "\-L" " dmu_flags" ", \-\-load" " dmu_flags"
|
|
.IP
|
|
Specify \fIdmuio\fR for regular DMU_IO, \fIssf\fR for single shared
|
|
file access, or \fIfpp\fR for per thread access. Use commas to delimit
|
|
multiple flags. (eg: "-L dmuio,ssf")
|
|
.HP
|
|
.BI "\-p" " name" ", \-\-pool" " name"
|
|
.IP
|
|
The pool name, which is mandatory.
|
|
.HP
|
|
.BI "\-M" " test" ", \-\-name" " test"
|
|
.IP
|
|
An arbitrary string that appears in the program output.
|
|
.HP
|
|
.BI "-x, \-\-cleanup"
|
|
.IP
|
|
Enable the DMU_REMOVE flag.
|
|
.HP
|
|
.BI "\-P" " command" ", \-\-prerun" " command"
|
|
.IP
|
|
Invoke \fIcommand\fR 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.
|
|
.HP
|
|
.BI "\-R" " command" ", \-\-postrun" " command"
|
|
.IP
|
|
Invoke \fIcommand\fR 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.
|
|
.HP
|
|
.BI "\-G" " directory" ", \-\-log" " directory"
|
|
.IP
|
|
Put logging output in this directory.
|
|
.HP
|
|
.BI "\-I" " size" ", \-\-regionnoise" " size"
|
|
.IP
|
|
Randomly vary the \fBregionsize\fR parameter for each test
|
|
modulo \fIsize\fR bytes.
|
|
.HP
|
|
.BI "\-N" " size" ", \-\-chunknoise" " size"
|
|
.IP
|
|
Randomly vary the \fBchunksize\fR parameter for each test
|
|
modulo \fIsize\fR bytes.
|
|
.HP
|
|
.BI "\-T" " time" ", \-\-threaddelay" " time"
|
|
.IP
|
|
Randomly vary the execution time for each test
|
|
modulo \fItime\fR kernel jiffies.
|
|
.HP
|
|
.BI "\-V" "" ", \-\-verify" ""
|
|
.IP
|
|
Enable the DMU_VERIFY flag for trivial data verification.
|
|
.HP
|
|
.BI "\-z" "" ", \-\-zerocopy" ""
|
|
.IP
|
|
Enable the DMU_READ_ZC and DMU_WRITE_ZC flags, which are
|
|
currently unimplemented for Linux.
|
|
.IP
|
|
.HP
|
|
.BI "\-O" "" ", \-\-nowait" ""
|
|
.IP
|
|
Enable the DMU_WRITE_NOWAIT flag.
|
|
.HP
|
|
.BI "\-f" "" ", \-\-noprefetch" ""
|
|
.IP
|
|
Enable the DMU_READ_NOPF flag.
|
|
.HP
|
|
.BI "\-H" "" ", \-\-human\-readable" ""
|
|
.IP
|
|
Print PASS and FAIL results explicitly and put unit suffixes on large
|
|
numbers.
|
|
.HP
|
|
.BI "\-v" "" ", \-\-verbose" ""
|
|
.IP
|
|
Increase output verbosity.
|
|
.HP
|
|
.BI "\-?" " " ", \-\-help" " "
|
|
.IP
|
|
Print the usage message.
|
|
.SH "AUTHORS"
|
|
The original zpios implementation was created by Cluster File Systems
|
|
Inc and adapted to ZFS on Linux by Brian Behlendorf
|
|
<behlendorf1@llnl.gov>.
|
|
|
|
This man page was written by Darik Horn <dajhorn@vanadac.com>.
|
|
.SH "SEE ALSO"
|
|
.BR zpool (8),
|
|
.BR zfs (8)
|