X-Git-Url: https://git.kernel.dk/?a=blobdiff_plain;f=fio.1;h=6b7e945909bccd0192c138f01523ad1e3194323a;hb=98ffb8f3ecebed9984d1744f142eb8be10c14dbd;hp=2db9793fac5470f840b95db192f5ed6aad8e7334;hpb=92d42d69755e9547f73d782466c453c5c9b67517;p=fio.git diff --git a/fio.1 b/fio.1 index 2db9793f..6b7e9459 100644 --- a/fio.1 +++ b/fio.1 @@ -50,9 +50,6 @@ List all commands defined by \fIioengine\fR, or print help for \fIcommand\fR def .BI \-\-showcmd \fR=\fPjobfile Convert \fIjobfile\fR to a set of command-line options. .TP -.B \-\-readonly -Enable read-only safety checks. -.TP .BI \-\-eta \fR=\fPwhen Specifies when real-time ETA estimate should be printed. \fIwhen\fR may be one of `always', `never' or `auto'. @@ -80,6 +77,9 @@ Background a fio server, writing the pid to the given pid file. .TP .BI \-\-client \fR=\fPhost Instead of running the jobs locally, send and run them on the given host. +.TP +.BI \-\-idle\-prof \fR=\fPoption +Report cpu idleness on a system or percpu basis (\fIoption\fP=system,percpu) or run unit work calibration only (\fIoption\fP=calibrate). .SH "JOB FILE FORMAT" Job files are in `ini' format. They consist of one or more job definitions, which begin with a job name in square brackets and @@ -243,6 +243,11 @@ The base unit for a kilobyte. The defacto base is 2^10, 1024. Storage manufacturers like to use 10^3 or 1000 as a base ten unit instead, for obvious reasons. Allow values are 1024 or 1000, with 1024 being the default. .TP +.BI unified_rw_reporting \fR=\fPbool +Fio normally reports statistics on a per data direction basis, meaning that +read, write, and trim are accounted and reported separately. If this option is +set, the fio will sum the results and report them as "mixed" instead. +.TP .BI randrepeat \fR=\fPbool Seed the random number generator in a predictable way so results are repeatable across runs. Default: true. @@ -486,8 +491,8 @@ transfer as fio ioengine .B e4defrag IO engine that does regular EXT4_IOC_MOVE_EXT ioctls to simulate defragment activity request to DDIR_WRITE event -.TP .RE +.P .RE .TP .BI iodepth \fR=\fPint @@ -564,7 +569,7 @@ Also see the sync_file_range(2) man page. This option is Linux specific. If writing, setup the file first and do overwrites. Default: false. .TP .BI end_fsync \fR=\fPbool -Sync file contents when job exits. Default: false. +Sync file contents when a write stage has completed. Default: false. .TP .BI fsync_on_close \fR=\fPbool If true, sync file contents on close. This differs from \fBend_fsync\fR in that @@ -617,6 +622,26 @@ fails to allocate the map, if this option is set it will continue without a random block map. As coverage will not be as complete as with random maps, this option is disabled by default. .TP +.BI random_generator \fR=\fPstr +Fio supports the following engines for generating IO offsets for random IO: +.RS +.TP +.B tausworthe +Strong 2^88 cycle random number generator +.TP +.B lfsr +Linear feedback shift register generator +.TP +.RE +.P +Tausworthe is a strong random number generator, but it requires tracking on the +side if we want to ensure that blocks are only read or written once. LFSR +guarantees that we never generate the same offset twice, and it's also less +computationally expensive. It's not a true random generator, however, though +for IO purposes it's typically good enough. LFSR only works with single block +sizes, not with workloads that use multiple block sizes. If used with such a +workload, fio may read or write some blocks multiple times. +.TP .BI nice \fR=\fPint Run job with given nice value. See \fInice\fR\|(2). .TP @@ -1007,6 +1032,27 @@ given time in milliseconds. .BI disk_util \fR=\fPbool Generate disk utilization statistics if the platform supports it. Default: true. .TP +.BI clocksource \fR=\fPstr +Use the given clocksource as the base of timing. The supported options are: +.RS +.TP +.B gettimeofday +gettimeofday(2) +.TP +.B clock_gettime +clock_gettime(2) +.TP +.B cpu +Internal CPU clock source +.TP +.RE +.P +\fBcpu\fR is the preferred clocksource if it is reliable, as it is very fast +(and fio is heavy on time calls). Fio will automatically use this clocksource +if it's supported and considered reliable on the system it is running on, +unless another clocksource is specifically set. For x86/x86-64 CPUs, this +means supporting TSC Invariant. +.TP .BI gtod_reduce \fR=\fPbool Enable all of the gettimeofday() reducing options (disable_clat, disable_slat, disable_bw) plus reduce precision of the timeout somewhat to really shrink the @@ -1142,6 +1188,15 @@ For TCP network connections, tell fio to listen for incoming connections rather than initiating an outgoing connection. The hostname must be omitted if this option is used. .TP +.BI (net, pingpong) \fR=\fPbool +Normal a network writer will just continue writing data, and a network reader +will just consume packages. If pingpong=1 is set, a writer will send its normal +payload to the reader, then wait for the reader to send the same payload back. +This allows fio to measure network latencies. The submission and completion +latencies then measure local time spent sending or receiving, and the +completion latency measures how long it took for the other end to receive and +send back. +.TP .BI (e4defrag,donorname) \fR=\fPstr File will be used as a block donor (swap extents between files) .TP