Clarify IOSTAT and how to interpret the data
i'm trying to get a better grasp on what iostat is telling me when looking at disk performance of a Linux system.
Take this point in time snapshot for example:
Device: rrqm/s wrqm/s r/s w/s rMB/s wMB/s avgrq-sz avgqu-sz await svctm %util
dm-8 0.00 0.00 191.20 858.20 16.76 3.35 39.25 39.64 37.78 0.18 19.20
dm-9 0.00 0.00 163.40 780.60 14.52 3.05 38.11 39.96 42.33 0.18 16.98
dm-10 0.00 0.00 163.40 780.60 14.52 3.05 38.11 39.96 42.33 0.18 17.00
dm-11 0.00 0.00 191.20 858.20 16.76 3.35 39.25 39.64 37.78 0.18 19.26
1) I understand svctm to be the time that my disk subsystem takes to process the request. In this example it is <1ms. I also understand await to be the avg. time it took for an I/O request to be completed from start to finish. Does this mean then:
await - svctm = time I/O request was waiting to be processed.
2) Is %util the percentage of used CPU time or the percentage of available CPU time? In otherwords, for dm-8, if my CPU was 50% utilized during the same period, is the %util line telling me that 19.20% of that 50% was spent doing disk I/O or is it telling me that 19.20% of available CPU was spent doing disk I/O and hence 50% doing something else?
3) How would I interpret whether the disk here is the bottleneck? Or is there not enough data?
My thought is that the svctm is really good. I also think that the rq-sz and qu-sz is good because they are closely aligned meaning that as requests come in, they are going right out again. But then I don't know why the await is so high.
thanks for any pointers.
|