From 942d66c85ee8f007ea5f1097d097cf9a44b662a0 Mon Sep 17 00:00:00 2001 From: Ankit Kumar Date: Thu, 1 Dec 2022 10:38:32 +0530 Subject: [PATCH] doc: update about size In few cases with fio option size the number of bytes of data transferred is actually less than what we specified. This can happen if there are gaps or holes while doing I/O's or if we are running a mix of sequential and random workload. Update the documentation for that. Fixes: https://github.com/axboe/fio/issues/1486 Signed-off-by: Ankit Kumar Signed-off-by: Vincent Fu --- HOWTO.rst | 7 +++++-- fio.1 | 7 +++++-- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/HOWTO.rst b/HOWTO.rst index 2ea84558..0aaf033a 100644 --- a/HOWTO.rst +++ b/HOWTO.rst @@ -1875,8 +1875,11 @@ I/O size .. option:: size=int The total size of file I/O for each thread of this job. Fio will run until - this many bytes has been transferred, unless runtime is limited by other options - (such as :option:`runtime`, for instance, or increased/decreased by :option:`io_size`). + this many bytes has been transferred, unless runtime is altered by other means + such as (1) :option:`runtime`, (2) :option:`io_size` (3) :option:`number_ios`, + (4) gaps/holes while doing I/O's such as ``rw=read:16K``, or (5) sequential + I/O reaching end of the file which is possible when :option:`percentage_random` + is less than 100. Fio will divide this size between the available files determined by options such as :option:`nrfiles`, :option:`filename`, unless :option:`filesize` is specified by the job. If the result of division happens to be 0, the size is diff --git a/fio.1 b/fio.1 index 746c4472..62af0bd2 100644 --- a/fio.1 +++ b/fio.1 @@ -1676,8 +1676,11 @@ simulate a smaller amount of memory. The amount specified is per worker. .TP .BI size \fR=\fPint[%|z] The total size of file I/O for each thread of this job. Fio will run until -this many bytes has been transferred, unless runtime is limited by other options -(such as \fBruntime\fR, for instance, or increased/decreased by \fBio_size\fR). +this many bytes has been transferred, unless runtime is altered by other means +such as (1) \fBruntime\fR, (2) \fBio_size\fR, (3) \fBnumber_ios\fR, (4) +gaps/holes while doing I/O's such as `rw=read:16K', or (5) sequential I/O +reaching end of the file which is possible when \fBpercentage_random\fR is +less than 100. Fio will divide this size between the available files determined by options such as \fBnrfiles\fR, \fBfilename\fR, unless \fBfilesize\fR is specified by the job. If the result of division happens to be 0, the size is -- 2.25.1