X-Git-Url: https://git.kernel.dk/?a=blobdiff_plain;f=fio.1;h=e737906f31d2fd0d4b5457bae6f27c8d2fde0738;hb=1f53e9d84573b1f9b9a23ad3ac4ef3d312d59c78;hp=f216b4cb00c2665796826d37c5df159973b5fe16;hpb=2e266ba6f1235c9201c95026714f8b1e3b99f344;p=fio.git diff --git a/fio.1 b/fio.1 index f216b4cb..e737906f 100644 --- a/fio.1 +++ b/fio.1 @@ -182,6 +182,11 @@ reasons. Allow values are 1024 or 1000, with 1024 being the default. Seed the random number generator in a predictable way so results are repeatable across runs. Default: true. .TP +.BI fallocate \fR=\fPbool +By default, fio will use fallocate() to advise the system of the size of the +file we are going to write. This can be turned off with fallocate=0. May not +be available on all supported platforms. +.TP .BI fadvise_hint \fR=\fPbool Disable use of \fIposix_fadvise\fR\|(2) to advise the kernel what I/O patterns are likely to be issued. Default: true. @@ -206,14 +211,14 @@ same size. .TP .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 +specified separately 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[,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 if only one range is given, but can be specified -seperately with a comma seperating the values. Example: bsrange=1k-4k,2k-8k. +separately with a comma seperating the values. Example: bsrange=1k-4k,2k-8k. Also (see \fBblocksize\fR). .TP .BI bssplit \fR=\fPstr @@ -375,6 +380,27 @@ How many I/Os to perform before issuing an \fBfsync\fR\|(2) of dirty data. If Like \fBfsync\fR, but uses \fBfdatasync\fR\|(2) instead to only sync the data parts of the file. Default: 0. .TP +.BI sync_file_range \fR=\fPstr:int +Use sync_file_range() for every \fRval\fP number of write operations. Fio will +track range of writes that have happened since the last sync_file_range() call. +\fRstr\fP can currently be one or more of: +.RS +.TP +.B wait_before +SYNC_FILE_RANGE_WAIT_BEFORE +.TP +.B write +SYNC_FILE_RANGE_WRITE +.TP +.B wait_after +SYNC_FILE_RANGE_WRITE +.TP +.RE +.P +So if you do sync_file_range=wait_before,write:8, fio would use +\fBSYNC_FILE_RANGE_WAIT_BEFORE | SYNC_FILE_RANGE_WRITE\fP for every 8 writes. +Also see the sync_file_range(2) man page. This option is Linux specific. +.TP .BI overwrite \fR=\fPbool If writing, setup the file first and do overwrites. Default: false. .TP @@ -576,16 +602,19 @@ values are: .RS .TP .B md5 crc16 crc32 crc32c crc32c-intel crc64 crc7 sha256 sha512 sha1 -Store appropriate checksum in the header of each block. +Store appropriate checksum in the header of each block. crc32c-intel is +hardware accelerated SSE4.2 driven, falls back to regular crc32c if +not supported by the system. .TP .B meta Write extra information about each I/O (timestamp, block number, etc.). The block number is verified. .TP .B pattern -Fill I/O buffers with a specific pattern that is used to verify. The pattern is -specified by appending `:\fIint\fR' to the parameter. \fIint\fR cannot be larger -than 32-bits. +Fill I/O buffers with a specific pattern that is used to verify. If the pattern +is < 4bytes, it can either be a decimal or a hexadecimal number. If the pattern +is > 4bytes, currently, it can only be a hexadecimal pattern starting with +either "0x" or "0X". .TP .B null Pretend to verify. Used for testing internals. @@ -626,6 +655,20 @@ allows them to have IO in flight while verifies are running. Tell fio to set the given CPU affinity on the async IO verification threads. See \fBcpus_allowed\fP for the format used. .TP +.BI verify_backlog \fR=\fPint +Fio will normally verify the written contents of a job that utilizes verify +once that job has completed. In other words, everything is written then +everything is read back and verified. You may want to verify continually +instead for a variety of reasons. Fio stores the meta data associated with an +IO block in memory, so for large verify workloads, quite a bit of memory would +be used up holding this meta data. If this option is enabled, fio will verify +the previously written blocks before continuing to write new ones. +.TP +.BI verify_backlog_batch \fR=\fPint +Control how many blocks fio will verify if verify_backlog is set. If not set, +will default to the value of \fBverify_backlog\fR (meaning the entire queue is +read back and verified). +.TP .B stonewall Wait for preceeding jobs in the job file to exit before starting this one. \fBstonewall\fR implies \fBnew_group\fR. @@ -724,13 +767,29 @@ entering the kernel with a gettimeofday() call. The CPU set aside for doing these time calls will be excluded from other uses. Fio will manually clear it from the CPU mask of other jobs. .TP -.BI continue_on_error \fR=\fPbool -Normally fio will exit the job on the first observed failure. If this option is -set, fio will continue the job when there is a 'non-fatal error' -(\fBEIO\fR or \fBEILSEQ\fR) until the runtime is exceeded or the I/O size -specified is completed. If this option is used, there are two more stats that -are appended, the total error count and the first error. The error field given -in the stats is the first error that was hit during the run. +.BI cgroup \fR=\fPstr +Add job to this control group. If it doesn't exist, it will be created. +The system must have a mounted cgroup blkio mount point for this to work. If +your system doesn't have it mounted, you can do so with: + +# mount -t cgroup -o blkio none /cgroup +.TP +.BI cgroup_weight \fR=\fPint +Set the weight of the cgroup to this value. See the documentation that comes +with the kernel, allowed values are in the range of 100..1000. +.TP +.BI cgroup_nodelete \fR=\fPbool +Normally fio will delete the cgroups it has created after the job completion. +To override this behavior and to leave cgroups around after the job completion, +set cgroup_nodelete=1. This can be useful if one wants to inspect various +cgroup files after job completion. Default: false +.TP +.BI uid \fR=\fPint +Instead of running as the invoking user, set the user ID to this value before +the thread/process does any work. +.TP +.BI gid \fR=\fPint +Set group ID, see \fBuid\fR. .SH OUTPUT While running, \fBfio\fR will display the status of the created jobs. For example: @@ -940,7 +999,8 @@ IO latency distribution (ms): .RE .SH AUTHORS .B fio -was written by Jens Axboe . +was written by Jens Axboe , +now Jens Axboe . .br This man page was written by Aaron Carroll based on documentation by Jens Axboe.