From: Hongwei Qin <glqinhongwei@gmail.com>
To: fio@vger.kernel.org
Cc: axboe@kernel.dk, sitsofe@gmail.com, Hongwei Qin <glqinhongwei@gmail.com>
Subject: [PATCH v3 0/2] Add a new parameter and fix minimal rate calculation.
Date: Mon, 18 Jan 2021 13:19:53 +0800 [thread overview]
Message-ID: <cover.1610946213.git.glqinhongwei@gmail.com> (raw)
The first patch adds a new parameter thinktime_blocks_type to control
the behavior of thinktime_blocks. It can be either `complete`
or `issue`.
If it is `complete` (default), fio triggers thinktime when
thinktime_blocks number of blocks are **completed**.
If it is `issue`, fio triggers thinktime when thinktime_blocks
number of blocks are **issued**
The second patch updates the compare time if handle_thinktime
sleeps or spin.
I bring the test results from the first patch to here
for your convenience:
Tests:
jobfile1:
```
[global]
thread
kb_base=1000
direct=1
size=1GiB
group_reporting
io_size=96KiB
ioengine=libaio
iodepth=8
bs=4096
filename=/dev/qblkdev
rw=randwrite
[fio_randwrite]
thinktime=2s
thinktime_blocks=4
```
jobfile2:
```
[global]
thread
kb_base=1000
direct=1
size=1GiB
group_reporting
io_size=96KiB
ioengine=libaio
iodepth=8
bs=4096
filename=/dev/qblkdev
rw=randwrite
[fio_randwrite]
thinktime=2s
thinktime_blocks=4
thinktime_blocks_type=issue
```
Results:
Current HEAD:
fio jobfile1:
write: IOPS=5, BW=24.6kB/s (24.0KiB/s)(98.3kB/4002msec); 0 zone resets
- issue 11 requests
- sleep 2s
- issue 8 requests
- sleep 2s
- issue 5 requests
- finish
This patch:
fio jobfile1:
write: IOPS=5, BW=24.6kB/s (24.0KiB/s)(98.3kB/4001msec); 0 zone resets
- issue 11 requests
- sleep 2s
- issue 8 requests
- sleep 2s
- issue 5 requests
- finish
fio jobfile2:
write: IOPS=1, BW=8191B/s (8191B/s)(98.3kB/12001msec); 0 zone resets
- issue 4 requests
- sleep 2s
***
- issue 4 requests
- sleep 2s
- finish
Hongwei Qin (2):
Add a new parameter.
Calculate min_rate with the consideration of thinktime
HOWTO | 7 +++++++
backend.c | 22 ++++++++++++++++------
cconv.c | 2 ++
engines/cpu.c | 1 +
fio.h | 5 +++++
options.c | 22 ++++++++++++++++++++++
thread_options.h | 2 ++
7 files changed, 55 insertions(+), 6 deletions(-)
--
1.8.3.1
next reply other threads:[~2021-01-18 5:19 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-01-18 5:19 Hongwei Qin [this message]
2021-01-18 5:19 ` [PATCH v3 1/2] Add a new parameter Hongwei Qin
2021-01-18 9:18 ` Hongwei Qin
2021-01-18 13:00 ` Sitsofe Wheeler
2021-01-18 15:00 ` Hongwei Qin
2021-01-20 8:30 ` Sitsofe Wheeler
2021-01-18 5:19 ` [PATCH v3 2/2] Calculate min_rate with the consideration of thinktime Hongwei Qin
2021-01-18 13:02 ` Sitsofe Wheeler
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=cover.1610946213.git.glqinhongwei@gmail.com \
--to=glqinhongwei@gmail.com \
--cc=axboe@kernel.dk \
--cc=fio@vger.kernel.org \
--cc=sitsofe@gmail.com \
/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