[PATCH] Fixup client error exit
[fio.git] / HOWTO
diff --git a/HOWTO b/HOWTO
index 40f974cba7fdfce741c3ca641ef9975c8cd9b61c..e5b09fd6af18b11877aeb00a51c8fc84477afad3 100644 (file)
--- a/HOWTO
+++ b/HOWTO
@@ -49,7 +49,7 @@ bottom, it contains the following basic parameters:
 
        IO engine       How do we issue io? We could be memory mapping the
                        file, we could be using regular read/write, we
-                       could be using splice, async io, or even
+                       could be using splice, async io, syslet, or even
                        SG (SCSI generic sg).
 
        IO depth        If the io engine is async, how large a queuing
@@ -193,13 +193,19 @@ name=str  ASCII name of the job. This may be used to override the
                special purpose of also signaling the start of a new
                job.
 
+description=str        Text description of the job. Doesn't do anything except
+               dump this text description when this job is run. It's
+               not parsed.
+
 directory=str  Prefix filenames with this directory. Used to places files
                in a different location than "./".
 
 filename=str   Fio normally makes up a filename based on the job name,
                thread number, and file number. If you want to share
                files between threads in a job or several jobs, specify
-               a filename for each of them to override the default.
+               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.
 
 rw=str         Type of io pattern. Accepted values are:
 
@@ -264,6 +270,9 @@ ioengine=str        Defines how the job issues io to the file. The following
                                vmsplice(2) to transfer data from user
                                space to the kernel.
 
+                       syslet-rw Use the syslet system calls to make
+                               regular read/write async.
+
                        sg      SCSI generic sg v3 io. May either be
                                synchronous using the SG_IO ioctl, or if
                                the target is an sg character device
@@ -274,6 +283,12 @@ ioengine=str       Defines how the job issues io to the file. The following
                                to. This is mainly used to exercise fio
                                itself and for debugging/testing purposes.
 
+                       net     Transfer over the network to given host:port.
+                               'filename' must be set appropriately to
+                               filename=host:port regardless of send
+                               or receive, if the latter only the port
+                               argument is used.
+
 iodepth=int    This defines how many io units to keep in flight against
                the file. The default is 1 for each file defined in this
                job, can be overridden with a larger value for higher
@@ -423,8 +438,9 @@ create_serialize=bool       If true, serialize the file creating for the jobs.
 create_fsync=bool      fsync the data file after creation. This is the
                        default.
 
-unlink=bool    Unlink the job files when done. fio defaults to doing this,
-               if it created the file itself.
+unlink=bool    Unlink the job files when done. Not the default, as repeated
+               runs of that job would then waste time recreating the fileset
+               again and again.
 
 loops=int      Run the specified number of iterations of this job. Used
                to repeat the same workload a given number of times. Defaults
@@ -539,6 +555,7 @@ Client1 (g=0): err= 0:
     clat (msec): min=    0, max=  631, avg=48.50, stdev=86.82
     bw (KiB/s) : min=    0, max= 1196, per=51.00%, avg=664.02, stdev=681.68
   cpu        : usr=1.49%, sys=0.25%, ctx=7969
+  IO depths    : 1=0.1%, 2=0.3%, 4=0.5%, 8=99.0%, 16=0.0%, 32=0.0%, >32=0.0%
 
 The client number is printed, along with the group id and error of that
 thread. Below is the io statistics, here for writes. In the order listed,
@@ -563,6 +580,11 @@ runt=              The runtime of that thread
                same disk, since they are then competing for disk access.
 cpu=           CPU usage. User and system time, along with the number
                of context switches this thread went through.
+IO depths=     The distribution of io depths over the job life time. The
+               numbers are divided into powers of 2, so for example the
+               16= entries includes depths up to that value but higher
+               than the previous entry. In other words, it covers the
+               range from 16 to 31.
 
 After each client has been listed, the group statistics are printed. They
 will look like this: