Originally Posted by firstname.lastname@example.org
But how to exactly determine at what numbers of tps and blks_read/s, blks_write/s, blk_read and blk_wrtn that I should be worrying about my I/O?
avg-cpu: %user %nice %system %iowait %steal %idle
18.47 0.00 3.37 1.50 0.00 75.79
Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 5.13 54.42 62.16 716429654 818324689
sdb 1.90 53.31 33.36 701766492 439161792
I believe the key here is iowait. It shows the percentage of time that the cpu is sitting idle, while it is waiting for an outstanding i/o request. To quote from this
...is to determine whether an application is cpu-bound / memory-bound / IO bound. IO bound applications end up wasting cpu cycles, especially incase of Disk IO. Therefore in order to maximize performance and optimize resource utilization one should try and reduce iowait time of a CPU and tweak a deployment to make an application cpu-bound.
So I suggest that you plot %iowait against time. And if your iowait stays low, then your disk i/o perf. is okay. But if iowait increases, then your cpu is waiting for disk i/o to catch up. And that is when you need to start to worry about your disk i/o performance.