net: support for unix domain sockets
[fio.git] / HOWTO
diff --git a/HOWTO b/HOWTO
index ad4e45402172f04a4563b2974c5e997462b4d30d..2e4cdbdf146e17394a8ebcd481097e43846131ba 100644 (file)
--- a/HOWTO
+++ b/HOWTO
@@ -267,7 +267,7 @@ filename=str        Fio normally makes up a filename based on the job name,
                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, port,
-               and protocol to use in the format of =host/port/protocol.
+               and protocol to use in the format of =host,port,protocol.
                See ioengine=net for more. If the ioengine is file based, you
                can specify a number of files by separating the names with a
                ':' colon. So if you wanted a job to open /dev/sda and /dev/sdb
@@ -481,6 +481,13 @@ refill_buffers     If this option is given, fio will refill the IO buffers
                isn't specified, naturally. If data verification is enabled,
                refill_buffers is also automatically enabled.
 
+scramble_buffers=bool  If refill_buffers is too costly and the target is
+               using data deduplication, then setting this option will
+               slightly modify the IO buffer contents to defeat normal
+               de-dupe attempts. This is not enough to defeat more clever
+               block compression attempts, but it will stop naive dedupe of
+               blocks. Default: true.
+
 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
@@ -517,6 +524,16 @@ ioengine=str       Defines how the job issues io to the file. The following
                        libaio  Linux native asynchronous io. Note that Linux
                                may only support queued behaviour with
                                non-buffered IO (set direct=1 or buffered=0).
+                               This engine also has a sub-option,
+                               userspace_reap. To set it, use
+                               ioengine=libaio:userspace_reap. Normally, with
+                               the libaio engine in use, fio will use the
+                               io_getevents system call to reap newly returned
+                               events. With this flag turned on, the AIO ring
+                               will be read directly from user-space to reap
+                               events. The reaping mode is only enabled when
+                               polling for a minimum of 0 events (eg when
+                               iodepth_batch_complete=0).
 
                        posixaio glibc posix asynchronous io.
 
@@ -847,6 +864,9 @@ exitall             When one job finishes, terminate the rest. The default is
 bwavgtime=int  Average the calculated bandwidth over the given time. Value
                is specified in milliseconds.
 
+iopsavgtime=int        Average the calculated IOPS over the given time. Value
+               is specified in milliseconds.
+
 create_serialize=bool  If true, serialize the file creating for the jobs.
                        This may be handy to avoid interleaving of data
                        files, which may greatly depend on the filesystem
@@ -1087,6 +1107,9 @@ write_lat_log=str Same as write_bw_log, except that this option stores io
                and foo_lat.log. This helps fio_generate_plot fine the logs
                automatically.
 
+write_bw_log=str If given, write an IOPS log of the jobs in this job
+               file. See write_bw_log.
+
 lockmem=int    Pin down the specified amount of memory with mlock(2). Can
                potentially be used instead of removing memory or booting
                with less memory to simulate a smaller amount of memory.
@@ -1187,13 +1210,6 @@ uid=int          Instead of running as the invoking user, set the user ID to
 
 gid=int                Set group ID, see uid.
 
-userspace_libaio_reap=bool  Normally, with the libaio engine in use, fio
-               will use the io_getevents system call to reap newly returned
-               events. With this flag turned on, the AIO ring will be read
-               directly from user-space to reap events. The reaping mode is
-               only enabled when polling for a minimum of 0 events (eg when
-               iodepth_batch_complete=0).
-
 6.0 Interpreting the output
 ---------------------------
 
@@ -1346,13 +1362,13 @@ Split up, the format is as follows:
 
        version, jobname, groupid, error
        READ status:
-               KB IO, bandwidth (KB/sec), runtime (msec)
+               Total IO (KB), bandwidth (KB/sec), runtime (msec)
                Submission latency: min, max, mean, deviation
                Completion latency: min, max, mean, deviation
                Total latency: min, max, mean, deviation
                Bw: min, max, aggregate percentage of total, mean, deviation
        WRITE status:
-               KB IO, bandwidth (KB/sec), runtime (msec)
+               Total IO (KB), bandwidth (KB/sec), runtime (msec)
                Submission latency: min, max, mean, deviation
                Completion latency: min, max, mean, deviation
                Total latency: min, max, mean, deviation