Add poisson rate selection to FD_RATE output
authorJens Axboe <axboe@fb.com>
Mon, 9 Nov 2015 22:07:14 +0000 (15:07 -0700)
committerJens Axboe <axboe@fb.com>
Mon, 9 Nov 2015 22:07:14 +0000 (15:07 -0700)
Signed-off-by: Jens Axboe <axboe@fb.com>
backend.c

index 85a981dc4d3fdf05183661fd9b012522a60c2aed..b329fa31f62dc929a5bb7c5796b27a2dd03d1cd2 100644 (file)
--- a/backend.c
+++ b/backend.c
@@ -783,9 +783,15 @@ static long long usec_for_io(struct thread_data *td, enum fio_ddir ddir)
        bps = td->rate_bps[ddir];
 
        if (td->o.poisson_rate) {
+               uint64_t val;
                iops = bps / td->o.bs[ddir];
-               td->last_usec += (int64_t) (1000000 / iops) *
-                                       -logf(__rand_0_1(&td->poisson_state));
+               val = (int64_t) (1000000 / iops) *
+                               -logf(__rand_0_1(&td->poisson_state));
+               if (val) {
+                       dprint(FD_RATE, "poisson rate iops=%llu\n",
+                                       (unsigned long long) 1000000 / val);
+               }
+               td->last_usec += val;
                return td->last_usec;
        } else if (bps) {
                secs = bytes / bps;