From 193aaf6a41329b1858d75970cdc4e1777b87c07a Mon Sep 17 00:00:00 2001 From: Gonzalez Date: Thu, 6 May 2021 11:15:41 -0700 Subject: [PATCH] Add Documentation for z unit --- HOWTO | 14 ++++++++++---- fio.1 | 26 +++++++++++++++++++------- 2 files changed, 29 insertions(+), 11 deletions(-) diff --git a/HOWTO b/HOWTO index 889526d9..177310f6 100644 --- a/HOWTO +++ b/HOWTO @@ -544,6 +544,9 @@ Parameter types * *Ti* -- means tebi (Ti) or 1024**4 * *Pi* -- means pebi (Pi) or 1024**5 + For Zone Block Device Mode: + * *z* -- means Zone + With :option:`kb_base`\=1024 (the default), the unit prefixes are opposite from those specified in the SI and IEC 80000-13 standards to provide compatibility with old scripts. For example, 4k means 4096. @@ -1277,13 +1280,14 @@ I/O type .. option:: offset=int Start I/O at the provided offset in the file, given as either a fixed size in - bytes or a percentage. If a percentage is given, the generated offset will be + bytes, zones or a percentage. If a percentage is given, the generated offset will be aligned to the minimum ``blocksize`` or to the value of ``offset_align`` if provided. Data before the given offset will not be touched. This effectively caps the file size at `real_size - offset`. Can be combined with :option:`size` to constrain the start and end range of the I/O workload. A percentage can be specified by a number between 1 and 100 followed by '%', - for example, ``offset=20%`` to specify 20%. + for example, ``offset=20%`` to specify 20%. In ZBD mode, value can be set as + number of zones using 'z'. .. option:: offset_align=int @@ -1300,7 +1304,8 @@ I/O type intended to operate on a file in parallel disjoint segments, with even 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. + ``blocksize`` or to the value of ``offset_align`` if provided. In ZBD mode, value can + also be set as number of zones using 'z'. .. option:: number_ios=int @@ -1818,7 +1823,8 @@ I/O size If this option is not specified, 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. + given, fio will use 20% of the full size of the given files or devices. + In ZBD mode, value can also be set as number of zones using 'z'. Can be combined with :option:`offset` to constrain the start and end range that I/O will be done within. diff --git a/fio.1 b/fio.1 index c3916168..e7da5c68 100644 --- a/fio.1 +++ b/fio.1 @@ -288,6 +288,15 @@ Pi means pebi (Pi) or 1024**5 .PD .RE .P +For Zone Block Device Mode: +.RS +.P +.PD 0 +z means Zone +.P +.PD +.RE +.P With `kb_base=1024' (the default), the unit prefixes are opposite from those specified in the SI and IEC 80000-13 standards to provide compatibility with old scripts. For example, 4k means 4096. @@ -1061,13 +1070,14 @@ should be associated with them. .TP .BI offset \fR=\fPint[%|z] Start I/O at the provided offset in the file, given as either a fixed size in -bytes or a percentage. If a percentage is given, the generated offset will be +bytes, zones or a percentage. If a percentage is given, the generated offset will be aligned to the minimum \fBblocksize\fR or to the value of \fBoffset_align\fR if provided. Data before the given offset will not be touched. This effectively caps the file size at `real_size \- offset'. Can be combined with \fBsize\fR to constrain the start and end range of the I/O workload. A percentage can be specified by a number between 1 and 100 followed by '%', -for example, `offset=20%' to specify 20%. +for example, `offset=20%' to specify 20%. In ZBD mode, value can be set as +number of zones using 'z'. .TP .BI offset_align \fR=\fPint If set to non-zero value, the byte offset generated by a percentage \fBoffset\fR @@ -1082,7 +1092,8 @@ 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. Percentages can be used for this option. If a percentage is given, the generated offset will be aligned to the minimum -\fBblocksize\fR or to the value of \fBoffset_align\fR if provided. +\fBblocksize\fR or to the value of \fBoffset_align\fR if provided.In ZBD mode, value +can be set as number of zones using 'z'. .TP .BI number_ios \fR=\fPint Fio will normally perform I/Os until it has exhausted the size of the region @@ -1607,9 +1618,9 @@ set to the physical size of the given files or devices if they exist. If this option is not specified, 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. -Can be combined with \fBoffset\fR to constrain the start and end range -that I/O will be done within. +given, fio will use 20% of the full size of the given files or devices. In ZBD mode, +size can be given in units of number of zones using 'z'. Can be combined with \fBoffset\fR to +constrain the start and end range that I/O will be done within. .TP .BI io_size \fR=\fPint[%|z] "\fR,\fB io_limit" \fR=\fPint[%|z] Normally fio operates within the region set by \fBsize\fR, which means @@ -1621,7 +1632,8 @@ will perform I/O within the first 20GiB but exit when 5GiB have been done. The opposite is also possible \-\- if \fBsize\fR is set to 20GiB, and \fBio_size\fR is set to 40GiB, then fio will do 40GiB of I/O within the 0..20GiB region. Value can be set as percentage: \fBio_size\fR=N%. -In this case \fBio_size\fR multiplies \fBsize\fR= value. +In this case \fBio_size\fR multiplies \fBsize\fR= value. In ZBD mode, value can +also be set as number of zones using 'z'. .TP .BI filesize \fR=\fPirange(int) Individual file sizes. May be a range, in which case fio will select sizes -- 2.25.1