Add ->open to struct fio_file
[fio.git] / HOWTO
diff --git a/HOWTO b/HOWTO
index de4b0a9932b43f207260a569a5e33349efebc63b..ea943ee04544408a60776a67807dec5737d741a8 100644 (file)
--- a/HOWTO
+++ b/HOWTO
@@ -253,6 +253,14 @@ bs_unaligned       If this option is given, any byte size value within bsrange
 
 nrfiles=int    Number of files to use for this job. Defaults to 1.
 
 
 nrfiles=int    Number of files to use for this job. Defaults to 1.
 
+file_service_type=str  Defines how fio decides which file from a job to
+               service next. The following types are defined:
+
+                       random  Just choose a file at random.
+
+                       roundrobin  Round robin over open files. This
+                               is the default.
+
 ioengine=str   Defines how the job issues io to the file. The following
                types are defined:
 
 ioengine=str   Defines how the job issues io to the file. The following
                types are defined:
 
@@ -289,6 +297,11 @@ ioengine=str       Defines how the job issues io to the file. The following
                                or receive, if the latter only the port
                                argument is used.
 
                                or receive, if the latter only the port
                                argument is used.
 
+                       external Prefix to specify loading an external
+                               IO engine object file. Append the engine
+                               filename, eg ioengine=external:/tmp/foo.o
+                               to load ioengine foo.o in /tmp.
+
 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
 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
@@ -483,7 +496,15 @@ stonewall  Wait for preceeding jobs in the job file to exit, before
 
 numjobs=int    Create the specified number of clones of this job. May be
                used to setup a larger number of threads/processes doing
 
 numjobs=int    Create the specified number of clones of this job. May be
                used to setup a larger number of threads/processes doing
-               the same thing.
+               the same thing. We regard that grouping of jobs as a
+               specific group.
+
+group_reporting        If 'numjobs' is set, it may be interesting to display
+               statistics for the group as a whole instead of for each
+               individual job. This is especially true of 'numjobs' is
+               large, looking at individual thread/process output quickly
+               becomes unwieldy. If 'group_reporting' is specified, fio
+               will show the final report per-group instead of per-job.
 
 thread         fio defaults to forking jobs, however if this option is
                given, fio will use pthread_create(3) to create threads
 
 thread         fio defaults to forking jobs, however if this option is
                given, fio will use pthread_create(3) to create threads
@@ -648,10 +669,11 @@ util=             The disk utilization. A value of 100% means we kept the disk
 ----------------
 
 For scripted usage where you typically want to generate tables or graphs
 ----------------
 
 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:
 
 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:
 
 
 Split up, the format is as follows:
 
@@ -667,4 +689,7 @@ Split up, the format is as follows:
                Completion latency: min, max, mean, deviation
                Bw: min, max, aggregate percentage of total, mean, deviation
        CPU usage: user, system, context switches
                Completion latency: min, max, mean, deviation
                Bw: min, max, aggregate percentage of total, mean, deviation
        CPU usage: user, system, context switches
+       IO depths: <=1, 2, 4, 8, 16, 32, >=64
+       IO latencies: <=2, 4, 10, 20, 50, 100, 250, 500, 750, 1000, >=2000
+       Text description