Merge branch 'fix-corrupt-hist-log' of https://github.com/sitsofe/fio
[fio.git] / HOWTO
diff --git a/HOWTO b/HOWTO
index 41b959d176dd2f3a52b6db81d76ac67adebe9f6e..96a047de7b1e26f698b92e2e8309a15769bc6712 100644 (file)
--- a/HOWTO
+++ b/HOWTO
@@ -93,6 +93,12 @@ Command line options
                        Dump info related to I/O rate switching.
        *compress*
                        Dump info related to log compress/decompress.
+       *steadystate*
+                       Dump info related to steadystate detection.
+       *helperthread*
+                       Dump info related to the helper thread.
+       *zbd*
+                       Dump info related to support for zoned block devices.
        *?* or *help*
                        Show available debug options.
 
@@ -216,8 +222,8 @@ Command line options
 
 .. option:: --alloc-size=kb
 
-       Set the internal smalloc pool size to `kb` in KiB.  The
-       ``--alloc-size`` switch allows one to use a larger pool size for smalloc.
+       Allocate additional internal smalloc pools of size `kb` in KiB.  The
+       ``--alloc-size`` option increases shared memory set aside for use by fio.
        If running large jobs with randommap enabled, fio can run out of memory.
        Smalloc is an internal allocator for shared structures from a fixed size
        memory pool and can grow to 16 pools. The pool size defaults to 16MiB.
@@ -1246,7 +1252,9 @@ I/O type
        is incremented for each sub-job (i.e. when :option:`numjobs` option is
        specified). This option is useful if there are several jobs which are
        intended to operate on a file in parallel disjoint segments, with even
-       spacing between the starting points.
+       spacing between the starting points. Percentages can be used for this option.
+       If a percentage is given, the generated offset will be aligned to the minimum
+       ``blocksize`` or to the value of ``offset_align`` if provided.
 
 .. option:: number_ios=int
 
@@ -1271,7 +1279,7 @@ I/O type
 .. option:: fdatasync=int
 
        Like :option:`fsync` but uses :manpage:`fdatasync(2)` to only sync data and
-       not metadata blocks.  In Windows, FreeBSD, and DragonFlyBSD there is no
+       not metadata blocks. In Windows, FreeBSD, DragonFlyBSD or OSX there is no
        :manpage:`fdatasync(2)` so this falls back to using :manpage:`fsync(2)`.
        Defaults to 0, which means fio does not periodically issue and wait for a
        data-only sync to complete.
@@ -2025,6 +2033,12 @@ with the caveat that when used on the command line, they must come after the
        map and release for each IO. This is more efficient, and reduces the
        IO latency as well.
 
+.. option:: registerfiles : [io_uring]
+       With this option, fio registers the set of files being used with the
+       kernel. This avoids the overhead of managing file counts in the kernel,
+       making the submission and completion part more lightweight. Required
+       for the below :option:`sqthread_poll` option.
+
 .. option:: sqthread_poll : [io_uring]
 
        Normally fio will submit IO by issuing a system call to notify the
@@ -2388,7 +2402,7 @@ I/O depth
        this option can reduce both performance and the :option:`iodepth` achieved.
 
        This option only applies to I/Os issued for a single job except when it is
-       enabled along with :option:`io_submit_mode`=offload. In offload mode, fio
+       enabled along with :option:`io_submit_mode`\=offload. In offload mode, fio
        will check for overlap among all I/Os submitted by offload jobs with :option:`serialize_overlap`
        enabled.