X-Git-Url: https://git.kernel.dk/?p=fio.git;a=blobdiff_plain;f=fio.1;h=4ae0a5c860898d44376fd18c5403ed7c0c021a34;hp=adab043b893860b51a1dc97868ca94aae476850a;hb=f7fa2653589f9ecf0d3d106286f17620bcf32de0;hpb=d9956b64373522fcbe5acb5015fef6d315f252da diff --git a/fio.1 b/fio.1 index adab043b..4ae0a5c8 100644 --- a/fio.1 +++ b/fio.1 @@ -37,9 +37,17 @@ Enable read-only safety checks. Specifies when real-time ETA estimate should be printed. \fIwhen\fR may be one of `always', `never' or `auto'. .TP +.BI \-\-section \fR=\fPsec +Only run section \fIsec\fR from job file. +.TP .BI \-\-cmdhelp \fR=\fPcommand Print help information for \fIcommand\fR. May be `all' for all commands. .TP +.BI \-\-debug \fR=\fPtype +Enable verbose tracing of various fio actions. May be `all' for all types +or individual types seperated by a comma (eg --debug=io,file). `help' will +list all available tracing options. +.TP .B \-\-help Display usage information and exit. .TP @@ -69,13 +77,10 @@ Some parameters may take arguments of a specific type. The types used are: String: a sequence of alphanumeric characters. .TP .I int -Integer: a whole number, possibly negative. If prefixed with `0x', the value -is assumed to be base 16 (hexadecimal). -.TP -.I siint SI integer: a whole number, possibly containing a suffix denoting the base unit of the value. Accepted suffixes are `k', 'M' and 'G', denoting kilo (1024), -mega (1024*1024) and giga (1024*1024*1024) respectively. +mega (1024*1024) and giga (1024*1024*1024) respectively. If prefixed with '0x', +the value is assumed to be base 16 (hexadecimal). .TP .I bool Boolean: a true or false value. `0' denotes false, `1' denotes true. @@ -151,7 +156,7 @@ across runs. Default: true. Disable use of \fIposix_fadvise\fR\|(2) to advise the kernel what I/O patterns are likely to be issued. Default: true. .TP -.BI size \fR=\fPsiint +.BI size \fR=\fPint Total size of I/O for this job. \fBfio\fR will run until this many bytes have been transfered, unless limited by other options (\fBruntime\fR, for instance). Unless \fBnr_files\fR and \fBfilesize\fR options are given, this amount will be @@ -163,15 +168,26 @@ for files at random within the given range, limited to \fBsize\fR in total (if that is given). If \fBfilesize\fR is not specified, each created file is the same size. .TP -.BI blocksize \fR=\fPsiint "\fR,\fB bs" \fR=\fPsiint +.BI blocksize \fR=\fPint[,int] "\fR,\fB bs" \fR=\fPint[,int] Block size for I/O units. Default: 4k. Values for reads and writes can be specified seperately in the format \fIread\fR,\fIwrite\fR, either of which may be empty to leave that value at its default. .TP -.BI blocksize_range \fR=\fPirange "\fR,\fB bsrange" \fR=\fPirange +.BI blocksize_range \fR=\fPirange[,irange] "\fR,\fB bsrange" \fR=\fPirange[,irange] Specify a range of I/O block sizes. The issued I/O unit will always be a multiple of the minimum size, unless \fBblocksize_unaligned\fR is set. Applies -to both reads and writes, but can be specified seperately (see \fBblocksize\fR). +to both reads and writes if only one range is given, but can be specified +seperately with a comma seperating the values. Example: bsrange=1k-4k,2k-8k. +Also (see \fBblocksize\fR). +.TP +.BI bssplit \fR=\fPstr +This option allows even finer grained control of the block sizes issued, +not just even splits between them. With this option, you can weight various +block sizes for exact control of the issued IO for a job that has mixed +block sizes. The format of the option is bssplit=blocksize/percentage, +optionally adding as many definitions as needed seperated by a colon. +Example: bssplit=4k/10:64k/50:32k/40 would issue 50% 64k blocks, 10% 4k +blocks and 40% 32k blocks. .TP .B blocksize_unaligned\fR,\fP bs_unaligned If set, any size in \fBblocksize_range\fR may be used. This typically won't @@ -214,6 +230,10 @@ position the I/O location. .B psync Basic \fIpread\fR\|(2) or \fIpwrite\fR\|(2) I/O. .TP +.B vsync +Basic \fIreadv\fR\|(2) or \fIwritev\fR\|(2) I/O. Will emulate queuing by +coalescing adjacents IOs into a single submission. +.TP .B libaio Linux native asynchronous I/O. .TP @@ -282,7 +302,7 @@ If true, use non-buffered I/O (usually O_DIRECT). Default: false. If true, use buffered I/O. This is the opposite of the \fBdirect\fR parameter. Default: true. .TP -.BI offset \fR=\fPsiint +.BI offset \fR=\fPint Offset in the file to start I/O. Data before the offset will not be touched. .TP .BI fsync \fR=\fPint @@ -408,7 +428,7 @@ the system must have free huge pages allocated. \fBmmaphuge\fR also needs to have hugetlbfs mounted, and \fIfile\fR must point there. .RE .TP -.BI hugepage\-size \fR=\fPsiint +.BI hugepage\-size \fR=\fPint Defines the size of a huge page. Must be at least equal to the system setting. Should be a multiple of 1MiB. Default: 4MiB. .TP @@ -463,11 +483,11 @@ Pretend to verify. Used for testing internals. If true, written verify blocks are sorted if \fBfio\fR deems it to be faster to read them back in a sorted manner. Default: true. .TP -.BI verify_offset \fR=\fPsiint +.BI verify_offset \fR=\fPint Swap the verification header with data somewhere else in the block before writing. It is swapped back before verifying. .TP -.BI verify_interval \fR=\fPsiint +.BI verify_interval \fR=\fPint Write the verification header for this number of bytes, which should divide \fBblocksize\fR. Default: \fBblocksize\fR. .TP @@ -495,10 +515,10 @@ specified. Use threads created with \fBpthread_create\fR\|(3) instead of processes created with \fBfork\fR\|(2). .TP -.BI zonesize \fR=\fPsiint +.BI zonesize \fR=\fPint Divide file into zones of the specified size in bytes. See \fBzoneskip\fR. .TP -.BI zoneskip \fR=\fPsiint +.BI zoneskip \fR=\fPint Skip the specified number of bytes when \fBzonesize\fR bytes of data have been read. .TP @@ -515,7 +535,7 @@ If given, write bandwidth logs of the jobs in this file. .B write_lat_log Same as \fBwrite_bw_log\fR, but writes I/O completion latencies. .TP -.BI lockmem \fR=\fPsiint +.BI lockmem \fR=\fPint Pin the specified amount of memory with \fBmlock\fR\|(2). Can be used to simulate a smaller amount of memory. .TP @@ -730,7 +750,7 @@ Bandwidth: .P CPU usage: .RS -.B user, system, context switches +.B user, system, context switches, major page faults, minor page faults .RE .P IO depth distribution: