Add string condensing for the ETA output
[fio.git] / HOWTO
diff --git a/HOWTO b/HOWTO
index 7e77c40372066a56a0f6ab9533b197ca4b630a50..cad175c6fb59fed73407afe48ffc9cf43e6759f6 100644 (file)
--- a/HOWTO
+++ b/HOWTO
@@ -430,6 +430,14 @@ size=int   The total size of file io for this job. Fio will run until
                is given, fio will use 20% of the full size of the given
                files or devices.
 
+io_limit=int   Normally fio operates within the region set by 'size', which
+               means that the 'size' option sets both the region and size of
+               IO to be performed. Sometimes that is not what you want. With
+               this option, it is possible to define just the amount of IO
+               that fio should do. For instance, if 'size' is set to 20G and
+               'io_limit' is set to 5G, fio will perform IO within the first
+               20G but exit when 5G have been done.
+
 filesize=int   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
@@ -438,7 +446,8 @@ filesize=int        Individual file sizes. May be a range, in which case fio
 file_append=bool       Perform IO after the end of the file. Normally fio will
                operate within the size of a file. If this option is set, then
                fio will append to the file instead. This has identical
-               behavior to setting offset to the size of a file.
+               behavior to setting offset to the size of a file. This option
+               is ignored on non-regular files.
 
 fill_device=bool
 fill_fs=bool   Sets size to something really large and waits for ENOSPC (no
@@ -1504,6 +1513,8 @@ that defines them is selected.
 [cpu] cpuchunks=int Split the load into cycles of the given time. In
                microseconds.
 
+[cpu] exit_on_io_done=bool Detect when IO threads are done, then exit.
+
 [netsplice] hostname=str
 [net] hostname=str The host name or IP address to use for TCP or UDP based IO.
                If the job is a TCP listener or UDP reader, the hostname is not
@@ -1589,12 +1600,22 @@ I               Thread initialized, waiting or generating necessary data.
        M       Running, doing mixed sequential reads/writes.
        m       Running, doing mixed random reads/writes.
        F       Running, currently waiting for fsync()
+       f       Running, finishing up (writing IO logs, etc)
        V       Running, doing verification of written data.
 E              Thread exited, not reaped by main thread yet.
 _              Thread reaped, or
 X              Thread reaped, exited with an error.
 K              Thread reaped, exited due to signal.
 
+Fio will condense the thread string as not to take up more space on the
+command line as is needed. For instance, if you have 10 readers and 10
+writers running, the output would look like this:
+
+Jobs: 20 (f=20): [R(10),W(10)] [4.0% done] [2103MB/0KB/0KB /s] [538K/0/0 iops] [eta 57m:36s]
+
+Fio will still maintain the ordering, though. So the above means that jobs
+1..10 are readers, and 11..20 are writers.
+
 The other values are fairly self explanatory - number of threads
 currently running and doing io, rate of io since last check (read speed
 listed first, then write speed), and the estimated completion percentage