X-Git-Url: https://git.kernel.dk/?a=blobdiff_plain;f=fio.1;h=b12381b584ce3320084d6bcca97ebb82ce6273e4;hb=9326926bef943245c244eb0e6129ae046a3719a9;hp=1cafc74d4992b667899c9ba32926010b9724bacc;hpb=2b728756ade8545c340f8758125a7de83c0f0f4b;p=fio.git diff --git a/fio.1 b/fio.1 index 1cafc74d..b12381b5 100644 --- a/fio.1 +++ b/fio.1 @@ -348,6 +348,9 @@ us or usec means microseconds .PD .RE .P +`z' suffix specifies that the value is measured in zones. +Value is recalculated once block device's zone size becomes known. +.P If the option accepts an upper and lower range, use a colon ':' or minus '\-' to separate such values. See \fIirange\fR parameter type. If the lower value specified happens to be larger than the upper value @@ -584,6 +587,9 @@ string: .B $jobname The name of the worker thread or process. .TP +.B $clientuid +IP of the fio process when using client/server mode. +.TP .B $jobnum The incremental number of the worker thread or process. .TP @@ -780,7 +786,7 @@ If not specified it defaults to the zone size. If the target device is a zoned block device, the zone capacity is obtained from the device information and this option is ignored. .TP -.BI zoneskip \fR=\fPint +.BI zoneskip \fR=\fPint[z] For \fBzonemode\fR=strided, the number of bytes to skip after \fBzonesize\fR bytes of data have been transferred. @@ -918,10 +924,32 @@ behaves in a similar fashion, except it sends the same offset 8 number of times before generating a new offset. .RE .TP -.BI unified_rw_reporting \fR=\fPbool +.BI unified_rw_reporting \fR=\fPstr Fio normally reports statistics on a per data direction basis, meaning that -reads, writes, and trims are accounted and reported separately. If this -option is set fio sums the results and report them as "mixed" instead. +reads, writes, and trims are accounted and reported separately. This option +determines whether fio reports the results normally, summed together, or as +both options. +Accepted values are: +.RS +.TP +.B none +Normal statistics reporting. +.TP +.B mixed +Statistics are summed per data direction and reported together. +.TP +.B both +Statistics are reported normally, followed by the mixed statistics. +.TP +.B 0 +Backward-compatible alias for \fBnone\fR. +.TP +.B 1 +Backward-compatible alias for \fBmixed\fR. +.TP +.B 2 +Alias for \fBboth\fR. +.RE .TP .BI randrepeat \fR=\fPbool Seed the random number generator used for random I/O patterns in a @@ -1030,7 +1058,7 @@ The values are all relative to each other, and no absolute meaning should be associated with them. .RE .TP -.BI offset \fR=\fPint +.BI offset \fR=\fPint[%|z] Start I/O at the provided offset in the file, given as either a fixed size in bytes or a percentage. If a percentage is given, the generated offset will be aligned to the minimum \fBblocksize\fR or to the value of \fBoffset_align\fR if @@ -1045,7 +1073,7 @@ If set to non-zero value, the byte offset generated by a percentage \fBoffset\fR is aligned upwards to this value. Defaults to 0 meaning that a percentage offset is aligned to the minimum block size. .TP -.BI offset_increment \fR=\fPint +.BI offset_increment \fR=\fPint[%|z] If this is provided, then the real offset becomes `\fBoffset\fR + \fBoffset_increment\fR * thread_number', where the thread number is a counter that starts at 0 and is incremented for each sub-job (i.e. when \fBnumjobs\fR option is @@ -1567,7 +1595,7 @@ Pin the specified amount of memory with \fBmlock\fR\|(2). Can be used to simulate a smaller amount of memory. The amount specified is per worker. .SS "I/O size" .TP -.BI size \fR=\fPint +.BI size \fR=\fPint[%|z] The total size of file I/O for each thread of this job. Fio will run until this many bytes has been transferred, unless runtime is limited by other options (such as \fBruntime\fR, for instance, or increased/decreased by \fBio_size\fR). @@ -1582,7 +1610,7 @@ given, fio will use 20% of the full size of the given files or devices. Can be combined with \fBoffset\fR to constrain the start and end range that I/O will be done within. .TP -.BI io_size \fR=\fPint "\fR,\fB io_limit" \fR=\fPint +.BI io_size \fR=\fPint[%|z] "\fR,\fB io_limit" \fR=\fPint[%|z] Normally fio operates within the region set by \fBsize\fR, which means that the \fBsize\fR option sets both the region and size of I/O to be performed. Sometimes that is not what you want. With this option, it is @@ -1850,6 +1878,16 @@ GPUDirect Storage-supported filesystem. This engine performs I/O without transferring buffers between user-space and the kernel, unless \fBverify\fR is set or \fBcuda_io\fR is \fBposix\fR. \fBiomem\fR must not be \fBcudamalloc\fR. This ioengine defines engine specific options. +.TP +.B dfs +I/O engine supporting asynchronous read and write operations to the DAOS File +System (DFS) via libdfs. +.TP +.B nfs +I/O engine supporting asynchronous read and write operations to +NFS filesystems from userspace via libnfs. This is useful for +achieving higher concurrency and thus throughput than is possible +via kernel NFS. .SS "I/O engine specific parameters" In addition, there are some parameters which are only valid when a specific \fBioengine\fR is in use. These are used identically to normal parameters, @@ -1946,7 +1984,7 @@ The TCP or UDP port to bind to or connect to. If this is used with this will be the starting port number since fio will use a range of ports. .TP -.BI (rdma)port +.BI (rdma, librpma_*)port The port to use for RDMA-CM communication. This should be the same value on the client and the server side. .TP @@ -1955,6 +1993,12 @@ The hostname or IP address to use for TCP, UDP or RDMA-CM based I/O. If the job is a TCP listener or UDP reader, the hostname is not used and must be omitted unless it is a valid UDP multicast address. .TP +.BI (librpma_*)serverip \fR=\fPstr +The IP address to be used for RDMA-CM based I/O. +.TP +.BI (librpma_*_server)direct_write_to_pmem \fR=\fPbool +Set to 1 only when Direct Write to PMem from the remote host is possible. Otherwise, set to 0. +.TP .BI (netsplice,net)interface \fR=\fPstr The IP address of the network interface used to send or receive UDP multicast. @@ -2208,6 +2252,24 @@ from RAM to GPU after a read. \fBverify\fR does not affect the use of cudaMemcpy. .RE .RE +.TP +.BI (dfs)pool +Specify the UUID of the DAOS pool to connect to. +.TP +.BI (dfs)cont +Specify the UUID of the DAOS DAOS container to open. +.TP +.BI (dfs)chunk_size +Specificy a different chunk size (in bytes) for the dfs file. +Use DAOS container's chunk size by default. +.TP +.BI (dfs)object_class +Specificy a different object class for the dfs file. +Use DAOS container's object class by default. +.TP +.BI (nfs)nfs_url +URL in libnfs format, eg nfs:///path[?arg=val[&arg=val]*] +Refer to the libnfs README for more details. .SS "I/O depth" .TP .BI iodepth \fR=\fPint @@ -2402,10 +2464,11 @@ Used with \fBlatency_target\fR. If false (default), fio will find the highest queue depth that meets \fBlatency_target\fR and exit. If true, fio will continue running and try to meet \fBlatency_target\fR by adjusting queue depth. .TP -.BI max_latency \fR=\fPtime +.BI max_latency \fR=\fPtime[,time][,time] If set, fio will exit the job with an ETIMEDOUT error if it exceeds this maximum latency. When the unit is omitted, the value is interpreted in -microseconds. +microseconds. Comma-separated values may be specified for reads, writes, +and trims as described in \fBblocksize\fR. .TP .BI rate_cycle \fR=\fPint Average bandwidth for \fBrate\fR and \fBrate_min\fR over this number