interpreting IOPS these Bonnie++ and iostat results

I am looking to interpret the IOPS from a few runs of bonnie++ using iostat simultaneously and using the benchmarking from this post:
Can I determine IOPS on a disk array using bonnie++?

bonnie++ run:

/usr/sbin/bonnie++ -d /data -s 128754 -u root:root -qfb

2x memory on the /data filesystem. This system is very fast, with SSDs in a raid6 Array.

Bonnie++ random seeks show 657.9 seeks per second:

Version  1.96       ------Sequential Output------ --Sequential Input- --Random-
Concurrency   1     -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
splunk6-w2- 128754M           695761  97 480604  70           1407252  88 657.9 110
Latency                       32464us   94804us             16869us    7398us
Version  1.96       ------Sequential Create------ --------Random Create--------
splunk6-w2-inf      -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
              files  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP
                 16  8057  18 +++++ +++ +++++ +++ +++++ +++ +++++ +++ +++++ +++
Latency               154us     355us     356us     154us      10us      60us
1.96,1.96,splunk6-w2-inf,1,1393273639,128754M,,,,695761,97,480604,70,,,1407252,88,657.9,110,16,,,,,8057,18,+++++,+++,+++++,+++,+++++,+++,+++++,+++,+++++,+++,,32464us,94804us,,16869us,7398us,154us,355us,356us,154us,10us,60us

I was running iostat at the same time bonnie++ was generating its test files and tps results are really high:

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
dm-2            292.61      1847.92      2282.89  928897994 1147544976

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.13    0.00    3.73    0.00    0.00   96.15

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
dm-2          41035.00         8.00    328272.00          8     328272

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.06    0.00    6.31    0.00    0.00   93.62

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
dm-2          225280.00         0.00   1802240.00          0    1802240

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.13    0.00    7.09    0.44    0.00   92.35

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
dm-2          251050.00         0.00   2008392.00          0    2008392

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.09    0.00    9.41    0.00    0.00   90.50

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
dm-2          277187.00         8.00   2217488.00          8    2217488

I would expect the Bonnie++ stats to be higher: I’ve tested on older machines showing higher random seeks. What’s the best representation of IOPS based on these stats, or should I gather them another way? Since those are the tools I have available, I am currently focusing on iostat and bonnie++.

Thanks.

Answer

What are you expecting? Your results look fine. The tps figure is what you should be monitoring if you’re specifically trying to determine IOPS. But are you just benchmarking for benchmarking’s sake?

The best measure of something like this is a real application or a realistic usage scenario.

Attribution
Source : Link , Question Author : sonicz , Answer Author : ewwhite

Leave a Comment