mirror_zfs/cmd/zpool
Gregor Kopka 5f07d51751 Zpool iostat: remove latency/queue scaling
Bandwidth and iops are average per second while *_wait are averages
per request for latency or, for queue depths, an instantaneous
measurement at the end of an interval (according to man zpool).

When calculating the first two it makes sense to do
x/interval_duration (x being the increase in total bytes or number of
requests over the duration of the interval, interval_duration in
seconds) to 'scale' from amount/interval_duration to amount/second.

But applying the same math for the latter (*_wait latencies/queue) is
wrong as there is no interval_duration component in the values (these
are time/requests to get to average_time/request or already an
absulute number).

This bug leads to the only correct continuous *_wait figures for both
latencies and queue depths from 'zpool iostat -l/q' being with
duration=1 as then the wrong math cancels itself (x/1 is a nop).

This removes temporal scaling from latency and queue depth figures.

Reviewed-by: Tony Hutter <hutter2@llnl.gov>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Gregor Kopka <gregor@kopka.net>
Closes #7945
Closes #7694
2018-11-08 14:38:28 -08:00
..
zpool.d Add SMART self-test results to zpool status -c 2018-03-14 16:10:37 -07:00
.gitignore Add .gitignore files to exclude build products 2010-01-08 11:35:17 -08:00
Makefile.am Add SMART self-test results to zpool status -c 2018-03-14 16:10:37 -07:00
zpool_iter.c Restrict zpool iostat/status -c to search path 2017-07-24 11:53:59 -07:00
zpool_main.c Zpool iostat: remove latency/queue scaling 2018-11-08 14:38:28 -08:00
zpool_util.c codebase style improvements for OpenZFS 6459 port 2017-01-22 13:25:40 -08:00
zpool_util.h zpool iostat/status -c improvements 2017-06-05 10:52:15 -07:00
zpool_vdev.c Default ashift for Amazon EC2 NVMe devices 2018-07-06 02:46:51 -07:00