Skip to content

Commit

Permalink
Update size/io_size descriptions
Browse files Browse the repository at this point in the history
Hopefully this is clearer. Also add an alias for io_limit to io_size,
since that is probably more descriptive of what this option does.

Signed-off-by: Jens Axboe <[email protected]>
  • Loading branch information
axboe committed Dec 11, 2014
1 parent ccfcf5b commit a4d3b4d
Show file tree
Hide file tree
Showing 3 changed files with 30 additions and 24 deletions.
27 changes: 15 additions & 12 deletions HOWTO
Original file line number Diff line number Diff line change
Expand Up @@ -462,23 +462,26 @@ fadvise_hint=bool By default, fio will use fadvise() to advise the kernel

size=int The total size of file io for this job. Fio will run until
this many bytes has been transferred, unless runtime is
limited by other options (such as 'runtime', for instance).
Unless specific nrfiles and filesize options are given,
fio will divide this size between the available files
specified by the job. If not set, fio will use the full
size of the given files or devices. If the files do not
exist, size must be given. It is also possible to give
size as a percentage between 1 and 100. If size=20% is
given, fio will use 20% of the full size of the given
files or devices.

limited by other options (such as 'runtime', for instance,
or increased/decreased by 'io_size'). Unless specific nrfiles
and filesize options are given, fio will divide this size
between the available files specified by the job. If not set,
fio will use the full size of the given files or devices.
If the files do not exist, size must be given. It is also
possible to give size as a percentage between 1 and 100. If
size=20% is given, fio will use 20% of the full size of the
given files or devices.

io_size=int
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.
'io_size' is set to 5G, fio will perform IO within the first
20G but exit when 5G have been done. The opposite is also
possible - if 'size' is set to 20G, and 'io_size' is set to
40G, then fio will do 40G of IO within the 0..20G region.

filesize=int Individual file sizes. May be a range, in which case fio
will select sizes for files at random within the given range
Expand Down
22 changes: 12 additions & 10 deletions fio.1
Original file line number Diff line number Diff line change
Expand Up @@ -377,21 +377,23 @@ are likely to be issued. Default: true.
.TP
.BI size \fR=\fPint
Total size of I/O for this job. \fBfio\fR will run until this many bytes have
been transferred, unless limited by other options (\fBruntime\fR, for instance).
Unless \fBnrfiles\fR and \fBfilesize\fR options are given, this amount will be
divided between the available files for the job. If not set, fio will use the
full size of the given files or devices. If the files do not exist, size
must be given. It is also possible to give size as a percentage between 1 and
100. If size=20% is given, fio will use 20% of the full size of the given
files or devices.
.TP
.BI io_limit \fR=\fPint
been transferred, unless limited by other options (\fBruntime\fR, for instance,
or increased/descreased by \fBio_size\fR). Unless \fBnrfiles\fR and
\fBfilesize\fR options are given, this amount will be divided between the
available files for the job. If not set, fio will use the full size of the
given files or devices. If the files do not exist, size must be given. It is
also possible to give size as a percentage between 1 and 100. If size=20% is
given, fio will use 20% of the full size of the given files or devices.
.TP
.BI io_size \fR=\fPint "\fR,\fB io_limit \fR=\fPint
Normally fio operates within the region set by \fBsize\fR, which means that
the \fBsize\fR 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 \fBsize\fR
is set to 20G and \fBio_limit\fR is set to 5G, fio will perform IO within
the first 20G but exit when 5G have been done.
the first 20G but exit when 5G have been done. The opposite is also
possible - if \fBsize\fR is set to 20G, and \fBio_size\fR is set to 40G, then
fio will do 40G of IO within the 0..20G region.
.TP
.BI fill_device \fR=\fPbool "\fR,\fB fill_fs" \fR=\fPbool
Sets size to something really large and waits for ENOSPC (no space left on
Expand Down
5 changes: 3 additions & 2 deletions options.c
Original file line number Diff line number Diff line change
Expand Up @@ -1641,8 +1641,9 @@ struct fio_option fio_options[FIO_MAX_OPTS] = {
.group = FIO_OPT_G_INVALID,
},
{
.name = "io_limit",
.lname = "IO Limit",
.name = "io_size",
.alias = "io_limit",
.lname = "IO Size",
.type = FIO_OPT_STR_VAL,
.off1 = td_var_offset(io_limit),
.interval = 1024 * 1024,
Expand Down

0 comments on commit a4d3b4d

Please sign in to comment.