Mention cpuio never finishes without real I/O in documentation
authorTomohiro Kusumi <kusumi.tomohiro@gmail.com>
Wed, 27 Jul 2016 13:37:12 +0000 (22:37 +0900)
committerJens Axboe <axboe@fb.com>
Wed, 27 Jul 2016 14:29:45 +0000 (08:29 -0600)
reap_threads() terminates cpuio threads only when there is
at least one real I/O thread that is exiting.

> if (*nr_running == cputhreads && !pending && realthreads)
> fio_terminate_threads(TERMINATE_ALL);

Signed-off-by: Tomohiro Kusumi <kusumi.tomohiro@gmail.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
HOWTO
fio.1

diff --git a/HOWTO b/HOWTO
index ca1542d5fdf88b7fa0e6e607ab019a98c5d2d770..b9076d5e7708c8565b9ef35af304262a300972a4 100644 (file)
--- a/HOWTO
+++ b/HOWTO
@@ -757,7 +757,8 @@ ioengine=str        Defines how the job issues io to the file. The following
                                85% of the CPU. In case of SMP machines,
                                use numjobs=<no_of_cpu> to get desired CPU
                                usage, as the cpuload only loads a single
                                85% of the CPU. In case of SMP machines,
                                use numjobs=<no_of_cpu> to get desired CPU
                                usage, as the cpuload only loads a single
-                               CPU at the desired rate.
+                               CPU at the desired rate. A job never finishes
+                               unless there is at least one non-cpuio job.
 
                        guasi   The GUASI IO engine is the Generic Userspace
                                Asyncronous Syscall Interface approach
 
                        guasi   The GUASI IO engine is the Generic Userspace
                                Asyncronous Syscall Interface approach
diff --git a/fio.1 b/fio.1
index 0461d90e1f8ba6077fe38507021662f17c5f87ba..a9abe3fcec4e6a87cce2c425800d3e894d02ddb1 100644 (file)
--- a/fio.1
+++ b/fio.1
@@ -656,7 +656,8 @@ and send/receive. This ioengine defines engine specific options.
 .TP
 .B cpuio
 Doesn't transfer any data, but burns CPU cycles according to \fBcpuload\fR and
 .TP
 .B cpuio
 Doesn't transfer any data, but burns CPU cycles according to \fBcpuload\fR and
-\fBcpuchunks\fR parameters.
+\fBcpuchunks\fR parameters. A job never finishes unless there is at least one
+non-cpuio job.
 .TP
 .B guasi
 The GUASI I/O engine is the Generic Userspace Asynchronous Syscall Interface
 .TP
 .B guasi
 The GUASI I/O engine is the Generic Userspace Asynchronous Syscall Interface