From 1ad01bd10933858347d4837eaea520efc4e60c2f Mon Sep 17 00:00:00 2001 From: Jens Axboe Date: Wed, 15 Apr 2015 09:58:58 -0600 Subject: [PATCH] Add man page and HOWTO for io_submit_mode option Signed-off-by: Jens Axboe --- HOWTO | 12 ++++++++++++ fio.1 | 11 +++++++++++ 2 files changed, 23 insertions(+) diff --git a/HOWTO b/HOWTO index 60eab243..bcc72b58 100644 --- a/HOWTO +++ b/HOWTO @@ -820,6 +820,18 @@ iodepth_low=int The low water mark indicating when to start filling after fio has filled the queue of 16 requests, it will let the depth drain down to 4 before starting to fill it again. +io_submit_mode=str This option controls how fio submits the IO to + the IO engine. The default is 'inline', which means that the + fio job threads submit and reap IO directly. If set to + 'offload', the job threads will offload IO submission to a + dedicated pool of IO threads. This requires some coordination + and thus has a bit of extra overhead, especially for lower + queue depth IO where it can increase latencies. The benefit + is that fio can manage submission rates independently of + the device completion rates. This avoids skewed latency + reporting if IO gets back up on the device side (the + coordinated omission problem). + direct=bool If value is true, use non-buffered io. This is usually O_DIRECT. Note that ZFS on Solaris doesn't support direct io. On Windows the synchronous ioengines don't support direct io. diff --git a/fio.1 b/fio.1 index 81bcf061..a77c71c3 100644 --- a/fio.1 +++ b/fio.1 @@ -694,6 +694,17 @@ cost of more retrieval system calls. Low watermark indicating when to start filling the queue again. Default: \fBiodepth\fR. .TP +.BI io_submit_mode \fR=\fPstr +This option controls how fio submits the IO to the IO engine. The default is +\fBinline\fR, which means that the fio job threads submit and reap IO directly. +If set to \fBoffload\fR, the job threads will offload IO submission to a +dedicated pool of IO threads. This requires some coordination and thus has a +bit of extra overhead, especially for lower queue depth IO where it can +increase latencies. The benefit is that fio can manage submission rates +independently of the device completion rates. This avoids skewed latency +reporting if IO gets back up on the device side (the coordinated omission +problem). +.TP .BI direct \fR=\fPbool If true, use non-buffered I/O (usually O_DIRECT). Default: false. .TP -- 2.25.1