tools: add --no-verify option to rados bench
When doing seq and rand read benchmarks using rados bench, a quite large
portion of cpu time is consumed by doing object verification. This patch
adds an option to disable this verification when it's not needed, in turn
giving better cluster utilization. rados -p storage bench 600 rand scores
without --no-verification:
Total time run: 600.228901
Total reads made: 144982
Read size:
4194304
Bandwidth (MB/sec): 966
Average IOPS: 241
Stddev IOPS: 38
Max IOPS:
909522486
Min IOPS: 0
Average Latency: 0.0662
Max latency: 1.51
Min latency: 0.004
real 10m1.173s
user 5m41.162s
sys 11m42.961s
Same command, but with --no-verify:
Total time run: 600.161379
Total reads made: 174142
Read size:
4194304
Bandwidth (MB/sec): 1.16e+03
Average IOPS: 290
Stddev IOPS: 20
Max IOPS:
909522486
Min IOPS: 0
Average Latency: 0.0551
Max latency: 1.12
Min latency: 0.00343
real 10m1.172s
user 4m13.792s
sys 13m38.556s
Note the decreased latencies, increased bandwidth and more reads performed.
Signed-off-by: Piotr Dałek <piotr.dalek@ts.fujitsu.com>
(cherry picked from commit
ca6abca63de813c83a6960f83624be8e1a86a1f8)
Conflicts:
src/common/obj_bencher.cc
src/common/obj_bencher.h