From: Mohamad Gebai <mogeb@fb.com>
To: <fio@vger.kernel.org>
Cc: Mohamad Gebai <mogeb@fb.com>
Subject: [PATCH v2 3/3] iolog: update man page for version 3
Date: Thu, 7 Apr 2022 07:49:58 -0700 [thread overview]
Message-ID: <20220407144958.3975622-4-mogeb@fb.com> (raw)
In-Reply-To: <20220407144958.3975622-1-mogeb@fb.com>
Add documentation for iolog version 3, mainly the differences between
versions 2 and 3.
Signed-off-by: Mohamad Gebai <mogeb@fb.com>
---
HOWTO.rst | 29 ++++++++++++++++++++++++++++-
1 file changed, 28 insertions(+), 1 deletion(-)
diff --git a/HOWTO.rst b/HOWTO.rst
index 0978879c..24d4c7b0 100644
--- a/HOWTO.rst
+++ b/HOWTO.rst
@@ -4391,33 +4391,60 @@ The `filename` is given as an absolute path. The `action` can be one of these:
The file I/O action format::
filename action offset length
The `filename` is given as an absolute path, and has to have been added and
opened before it can be used with this format. The `offset` and `length` are
given in bytes. The `action` can be one of these:
**wait**
Wait for `offset` microseconds. Everything below 100 is discarded.
- The time is relative to the previous `wait` statement.
+ The time is relative to the previous `wait` statement. Note that
+ action `wait` is not allowed as of version 3, as the same behavior
+ can be achieved using timestamps.
**read**
Read `length` bytes beginning from `offset`.
**write**
Write `length` bytes beginning from `offset`.
**sync**
:manpage:`fsync(2)` the file.
**datasync**
:manpage:`fdatasync(2)` the file.
**trim**
Trim the given file from the given `offset` for `length` bytes.
+Trace file format v3
+~~~~~~~~~~~~~~~~~~~~
+
+The third version of the trace file format was added in fio version 3.30. It
+forces each action to have a timestamp associated with it.
+
+The first line of the trace file has to be::
+
+ fio version 3 iolog
+
+Following this can be lines in two different formats, which are described below.
+
+The file management format::
+
+ timestamp filename action
+
+The file I/O action format::
+
+ timestamp filename action offset length
+
+The `timestamp` is relative to the beginning of the run (ie starts at 0). The
+`filename`, `action`, `offset` and `length` are identical to version 2, except
+that version 3 does not allow the `wait` action.
+
+
I/O Replay - Merging Traces
---------------------------
Colocation is a common practice used to get the most out of a machine.
Knowing which workloads play nicely with each other and which ones don't is
a much harder task. While fio can replay workloads concurrently via multiple
jobs, it leaves some variability up to the scheduler making results harder to
reproduce. Merging is a way to make the order of events consistent.
Merging is integrated into I/O replay and done when a
--
2.30.2
next prev parent reply other threads:[~2022-04-07 14:50 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-04-07 14:49 [PATCH v2 0/3] iolog: add version 3 with timestamp support Mohamad Gebai
2022-04-07 14:49 ` [PATCH v2 1/3] iolog: add version 3 to support timestamp-based replay Mohamad Gebai
2022-04-07 14:49 ` [PATCH v2 2/3] iolog: add iolog_write for version 3 Mohamad Gebai
2022-04-07 14:49 ` Mohamad Gebai [this message]
2022-04-07 15:34 ` [PATCH v2 3/3] iolog: update man page " Vincent Fu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20220407144958.3975622-4-mogeb@fb.com \
--to=mogeb@fb.com \
--cc=fio@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox