http://dag.wieers.com/rpm/packages/fio/
+Mandriva has integrated fio into their package repository, so installing
+on that distro should be as easy as typing 'urpmi fio'.
+
Mailing list
------------
------------
$ fio
+ --debug Enable some debugging options (see below)
--output Write output to file
--runtime Runtime in seconds
--latency-log Generate per-job latency logs
--help Print this page
--cmdhelp=cmd Print command help, "all" for all of them
--showcmd Turn a job file into command line options
+ --readonly Turn on safety read-only checks
+ --eta=when When ETA estimate should be printed
+ May be "always", "never" or "auto"
+
Any parameters following the options will be assumed to be job files,
unless they match a job file parameter. You can add as many as you want,
each job file will be regarded as a separate group and fio will stonewall
its execution.
+The --readonly switch is an extra safety guard to prevent accidentically
+turning on a write setting when that is not desired. Fio will only write
+if rw=write/randwrite/rw/randrw is given, but this extra safety net can
+be used as an extra precaution. It will also enable a write check in the
+io engine core to prevent an accidental write due to a fio bug.
+
+The debug switch allows adding options that trigger certain logging
+options in fio. Currently the options are:
+
+ process Dump info related to processes
+ file Dump info related to file actions
+ io Dump info related to IO queuing
+ mem Dump info related to memory allocations
+ blktrace Dump info related to blktrace setup
+ verify Dump info related to IO verification
+ all Enable all debug options
+ ? or help Show available debug options.
+
+You can specify as many as you want, eg --debug=file,mem will enable
+file and memory debugging.
+
Job file
--------
See the HOWTO file for a more detailed description of parameters and what
-they mean. This file contains the terse version. Only a few options can
-be controlled with command line parameters, generally it's a lot easier to
+they mean. This file contains the terse version. You can describe big and
+complex setups with the command line, but generally it's a lot easier to
just write a simple job file to describe the workload. The job file format
-is in the ini style format, as it's easy to read and write for the user.
+is in the ini style format, as that is easy to read and write for the user.
The job file parameters are:
size=x Set file size to x bytes (x string can include k/m/g)
ioengine=x 'x' may be: aio/libaio/linuxaio for Linux aio,
posixaio for POSIX aio, sync for regular read/write io,
- mmap for mmap'ed io, syslet-rw for syslet driven
- read/write, splice for using splice/vmsplice,
- sgio for direct SG_IO io, net for network io, or cpuio
- for a cycler burner load. sgio only works on Linux on
- SCSI (or SCSI-like devices, such as usb-storage or
- sata/libata driven) devices. Fio also has a null io
- engine, which is mainly used for testing fio itself.
+ psync for regular pread/pwrite io, mmap for mmap'ed io,
+ syslet-rw for syslet driven read/write, splice for using
+ splice/vmsplice, sgio for direct SG_IO io, net for
+ network io, or cpuio for a cycler burner load. sgio only
+ works on Linux on SCSI (or SCSI-like devices, such as
+ usb-storage or sata/libata driven) devices. Fio also has
+ a null io engine, which is mainly used for testing fio
+ itself.
iodepth=x For async io, allow 'x' ios in flight
overwrite=x If 'x', layout a write file first.
nrfiles=x Spread io load over 'x' number of files per job,