Re: [PATCH blktests v3 10/12] nvme/rc: Calculate IO size for random fio jobs

Shinichiro Kawasaki
2023-05-07T23:31:41Z

The commit title prefix could be "nvme: ". And please find a question in line.

On May 03, 2023 / 10:02, Daniel Wagner wrote:
> _nvme_calc_run_io_size() returns the jobs size for _run_fio_rand_io()
> function. The jobs size is the size per job, thus we have to divide
> through the number of CPUs.
>
> Signed-off-by: Daniel Wagner <dwagner@suse.de>
> ---
> tests/nvme/045 | 4 +++-
> tests/nvme/047 | 6 ++++--
> tests/nvme/rc | 10 ++++++++++
> 3 files changed, 17 insertions(+), 3 deletions(-)
>
> diff --git a/tests/nvme/045 b/tests/nvme/045
> index 99012f6bed8f..f50087cccb6a 100755
> --- a/tests/nvme/045
> +++ b/tests/nvme/045
> @@ -31,6 +31,7 @@ test() {
> local ctrlkey
> local new_ctrlkey
> local ctrldev
> + local rand_io_size
>
> echo "Running ${TEST_NAME}"
>
> @@ -120,7 +121,8 @@ test() {
>
> nvmedev=$(_find_nvme_dev "${subsys_name}")
>
> - _run_fio_rand_io --size=4m --filename="/dev/${nvmedev}n1"
> + rand_io_size="$(_nvme_calc_rand_io_size 4m)"
> + _run_fio_rand_io --size="${rand_io_size}" --filename="/dev/${nvmedev}n1"
>
> _nvme_disconnect_subsys "${subsys_name}"
>
> diff --git a/tests/nvme/047 b/tests/nvme/047
> index b5a8d469a983..6a7599bc2e91 100755
> --- a/tests/nvme/047
> +++ b/tests/nvme/047
> @@ -25,6 +25,7 @@ test() {
> local port
> local nvmedev
> local loop_dev
> + local rand_io_size
> local file_path="$TMPDIR/img"
> local subsys_name="blktests-subsystem-1"
>
> @@ -42,7 +43,8 @@ test() {
>
> nvmedev=$(_find_nvme_dev "${subsys_name}")
>
> - _xfs_run_fio_verify_io /dev/"${nvmedev}n1" "1m" || echo FAIL
> + rand_io_size="$(_nvme_calc_rand_io_size 4M)"
> + _run_fio_rand_io --filename="/dev/${nvmedev}n1" --size="${rand_io_size}"

Here, _xfs_run_fio_verify_io is replaced with _run_fio_rand_io. May I confirm
that this replacement does not affect this test case? Same question for the hunk
below.

>
> _nvme_disconnect_subsys "${subsys_name}" >> "$FULL" 2>&1
>
> @@ -50,7 +52,7 @@ test() {
> --nr-write-queues 1 \
> --nr-poll-queues 1 || echo FAIL
>
> - _xfs_run_fio_verify_io /dev/"${nvmedev}n1" "1m" || echo FAIL
> + _run_fio_rand_io --filename="/dev/${nvmedev}n1" --size="${rand_io_size}"

>
> _nvme_disconnect_subsys "${subsys_name}" >> "$FULL" 2>&1
>
> diff --git a/tests/nvme/rc b/tests/nvme/rc
> index 0b4d5f6570d6..268418e5b3e0 100644
> --- a/tests/nvme/rc
> +++ b/tests/nvme/rc
> @@ -150,6 +150,16 @@ _test_dev_nvme_nsid() {
> cat "${TEST_DEV_SYSFS}/nsid"
> }
>
> +_nvme_calc_rand_io_size() {
> + local img_size_mb
> + local io_size_kb
> +
> + img_size_mb="$(convert_to_mb "$1")"
> + io_size_kb="$(((img_size_mb * 1024) / $(OMP_THREAD_LIMIT=32 nproc)))"
> +
> + echo "${io_size_kb}k"
> +}
> +
> _nvme_fcloop_add_rport() {
> local local_wwnn="$1"
> local local_wwpn="$2"
> --
> 2.40.0
>