files between threads in a job or several jobs, specify
a filename for each of them to override the default. If
the ioengine used is 'net', the filename is the host and
- port to connect to in the format of =host:port.
+ port to connect to in the format of =host/port. If the
+ ioengine is file based, you can specify a number of files
+ by seperating the names with a ':' colon. So if you wanted
+ a job to open /dev/sda and /dev/sdb as the two working files,
+ you would use filename=/dev/sda:/dev/sdb
+
+opendir=str Tell fio to recursively add any file it can find in this
+ directory and down the file system tree.
rw=str Type of io pattern. Accepted values are:
size if larger than the current file size. If this parameter
is not given and the file exists, the file size will be used.
+filesize=siint Individual file sizes. May be a range, in which case fio
+ will select sizes for files at random within the given range
+ and limited to 'size' in total (if that is given). If not
+ given, each created file is the same size.
+
bs=siint The block size used for the io units. Defaults to 4k. Values
can be given for both read and writes. If a single siint is
given, it will apply to both. If a second siint is specified
nrfiles=int Number of files to use for this job. Defaults to 1.
+openfiles=int Number of files to keep open at the same time. Defaults to
+ the same as nrfiles, can be set smaller to limit the number
+ simultaneous opens.
+
file_service_type=str Defines how fio decides which file from a job to
service next. The following types are defined:
roundrobin Round robin over open files. This
is the default.
+ The string can have a number appended, indicating how
+ often to switch to a new file. So if option random:4 is
+ given, fio will switch to a new random file after 4 ios
+ have been issued.
+
ioengine=str Defines how the job issues io to the file. The following
types are defined:
net Transfer over the network to given host:port.
'filename' must be set appropriately to
- filename=host:port regardless of send
+ filename=host/port regardless of send
or receive, if the latter only the port
argument is used.
+ cpu Doesn't transfer any data, but burns CPU
+ cycles according to the cpuload= and
+ cpucycle= options. Setting cpuload=85
+ will cause that job to do nothing but burn
+ 85% of the CPU.
+
external Prefix to specify loading an external
IO engine object file. Append the engine
filename, eg ioengine=external:/tmp/foo.o
end_fsync=bool If true, fsync file contents when the job exits.
+fsync_on_close=bool If true, fio will fsync() a dirty file on close.
+ This differs from end_fsync in that it will happen on every
+ file close, not just at the end of the job.
+
rwmixcycle=int Value in milliseconds describing how often to switch between
reads and writes for a mixed workload. The default is
500 msecs.
----------------
For scripted usage where you typically want to generate tables or graphs
-of the results, fio can output the results in a comma separated format.
+of the results, fio can output the results in a semicolon separated format.
The format is one long line of values, such as:
-client1,0,0,936,331,2894,0,0,0.000000,0.000000,1,170,22.115385,34.290410,16,714,84.252874%,366.500000,566.417819,3496,1237,2894,0,0,0.000000,0.000000,0,246,6.671625,21.436952,0,2534,55.465300%,1406.600000,2008.044216,0.000000%,0.431928%,1109
+client1;0;0;1906777;1090804;1790;0;0;0.000000;0.000000;0;0;0.000000;0.000000;929380;1152890;25.510151%;1078276.333333;128948.113404;0;0;0;0;0;0.000000;0.000000;0;0;0.000000;0.000000;0;0;0.000000%;0.000000;0.000000;100.000000%;0.000000%;324;100.0%;0.0%;0.0%;0.0%;0.0%;0.0%;0.0%;100.0%;0.0%;0.0%;0.0%;0.0%;0.0%
+;0.0%;0.0%;0.0%;0.0%;0.0%
Split up, the format is as follows: