Flexible I/O Tester development
 help / color / mirror / Atom feed
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



             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