Use min_bs in rate_process=poisson
authorRyan Hardin <ryan.hardin@nutanix.com>
Mon, 18 Oct 2021 20:43:22 +0000 (16:43 -0400)
committerRyan Hardin <ryan.hardin@nutanix.com>
Tue, 19 Oct 2021 01:24:39 +0000 (21:24 -0400)
This fixes an issue where IOPS targets were not met
when the `bs` parameter was not given explicitly, such
as when using `bssplit`.

Fixes #1290

Signed-off-by: Ryan Hardin <ryan.hardin@nutanix.com>
backend.c

index 2f46329376451f18a49c94696e84687dda4390d8..e2ffec513c67b5b44d24c685289cf98e8feb4412 100644 (file)
--- a/backend.c
+++ b/backend.c
@@ -836,7 +836,7 @@ static long long usec_for_io(struct thread_data *td, enum fio_ddir ddir)
        if (td->o.rate_process == RATE_PROCESS_POISSON) {
                uint64_t val, iops;
 
-               iops = bps / td->o.bs[ddir];
+               iops = bps / td->o.min_bs[ddir];
                val = (int64_t) (1000000 / iops) *
                                -logf(__rand_0_1(&td->poisson_state[ddir]));
                if (val) {