Tips en Trucs 2010

Processor- en schijfgebruik volgen

Wil je weten hoe uw harde schijven zich gedragen? Of hoe zwaar de processor belast wordt? Het hulpprogramma iostat maakt rapporten van verzamelde processor- en I/O-apparaat-gegevens. Dit kan helpen bij het oplossen van knelpunten en foutief gebruikte kernel parameters, met als gevolg een verbeterde computerprestatie.

Op sommige systemen is het iostat hulpprogramma standaard geïnstalleerd. In openSUSE moet je het pakket sysstat installeren om het daarin opgenomen hulpprogramma iostat te kunnen gebruiken. Het pakket sysstat zit in de standaard installatiebronnen van openSUSE.

Na de installatie kun je de prestaties volgen. Een voorbeeld:
iostat -x 10 10
Het hulpprogramma verzamelt 10 keer gegevens, telkens gedurende 10 seconden, en toont uitgebreide (-x, extended) statistieken.
dany@linux-lno5:~> iostat -x 10 10
Linux 2.6.34-12-desktop (linux-lno5.site)       05-09-10        _x86_64_        (4 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           2,67    0,11    2,34    2,18    0,00   92,70

Device:         rrqm/s   wrqm/s     r/s     w/s   rsec/s   wsec/s avgrq-sz avgqu-sz   await  svctm  %util
sda              75,00   295,79   12,54    5,27   654,95  2228,38   161,87     2,77  155,56   3,72   6,63

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           1,05    0,00    1,07    0,15    0,00   97,73

Device:         rrqm/s   wrqm/s     r/s     w/s   rsec/s   wsec/s avgrq-sz avgqu-sz   await  svctm  %util
sda               0,00     0,00    0,00    0,20     0,00     1,60     8,00     0,01   32,50  32,50   0,65

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           1,27    0,00    1,17    0,17    0,00   97,38

Device:         rrqm/s   wrqm/s     r/s     w/s   rsec/s   wsec/s avgrq-sz avgqu-sz   await  svctm  %util
sda               0,00     1,30    0,00    0,40     0,00    13,60    34,00     0,01   19,00  19,00   0,76

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           1,10    0,00    1,10    0,20    0,00   97,61

Device:         rrqm/s   wrqm/s     r/s     w/s   rsec/s   wsec/s avgrq-sz avgqu-sz   await  svctm  %util
sda               0,00     0,50    0,00    0,40     0,00     7,20    18,00     0,03   76,25  76,25   3,05

avg-cpu:  %user   %nice %system %iowait  %steal   %idle                                                                              
           1,12    0,00    1,10    0,17    0,00   97,61                                                                              
                                                                                                                                     
Device:         rrqm/s   wrqm/s     r/s     w/s   rsec/s   wsec/s avgrq-sz avgqu-sz   await  svctm  %util                            
sda               0,00     0,10    0,00    1,20     0,00    10,40     8,67     0,04   31,08   9,42   1,13                            
                                                                                                                                     
avg-cpu:  %user   %nice %system %iowait  %steal   %idle                                                                              
           0,97    0,00    1,15    0,15    0,00   97,73                                                                              
                                                                                                                                     
Device:         rrqm/s   wrqm/s     r/s     w/s   rsec/s   wsec/s avgrq-sz avgqu-sz   await  svctm  %util                            
sda               0,00     0,10    0,00    0,20     0,00     2,40    12,00     0,01   29,50  29,50   0,59

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           1,15    0,00    1,37    0,17    0,00   97,31

Device:         rrqm/s   wrqm/s     r/s     w/s   rsec/s   wsec/s avgrq-sz avgqu-sz   await  svctm  %util
sda               0,00     0,10    0,00    0,40     0,00     4,00    10,00     0,05  136,00 136,00   5,44

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           1,07    0,00    1,17    0,00    0,00   97,76

Device:         rrqm/s   wrqm/s     r/s     w/s   rsec/s   wsec/s avgrq-sz avgqu-sz   await  svctm  %util
sda               0,00     0,00    0,00    0,00     0,00     0,00     0,00     0,00    0,00   0,00   0,00

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           1,40    0,00    1,07    0,20    0,00   97,33

Device:         rrqm/s   wrqm/s     r/s     w/s   rsec/s   wsec/s avgrq-sz avgqu-sz   await  svctm  %util
sda               0,00     0,00    0,00    0,40     0,00     3,20     8,00     0,03   77,50  77,50   3,10

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           1,00    0,00    1,12    0,67    0,00   97,21

Device:         rrqm/s   wrqm/s     r/s     w/s   rsec/s   wsec/s avgrq-sz avgqu-sz   await  svctm  %util
sda               0,00     0,70    0,00    0,20     0,00     7,20    36,00     0,03  153,00 153,00   3,06

Het eerste rapport toont het gebruik van de processor (CPU Utilization Report). Bij multiprocessor systemen worden de gemiddelde waarde van alle processors (of cores) getoond. Het rapport toont de volgende gegevens:

%user
Toont de procentuele processorbelasting op het gebruikersniveau (programma's).
%nice
Toont de procentuele processorbelasting op het gebruikersniveau met nice prioriteit (hoger of lager dan de standaard prioriteit).
%system
Toont de procentuele processorbelasting op het systeemniveau (kernel).
%iowait
Toont de procentuele tijd dat de processor werkloos staat te wachten tijdens gegevenstransfers van en naar de schijf.
%steal
Toont de procentuele tijd dat een virtuele processor onvrijwillig werkloos staat te wachten omdat een andere virtuele processor bediend wordt.
%idle
Toont de procentuele tijd dat de processor werkloos staat te wachten zonder dat het systeem schijfoperaties uitvoert.

Het tweede rapport toont het gebruik van apparaten (Device Utilization Report). Dit rapport toont statistieken per fysiek apparaat of op basis van de partities. Het rapport toont de volgende gegevens:

Device
Deze kolom bevat de naam van het apparaat (of partitie).
rrqm/s
Het aantal leesverzoeken per seconde die naar de wachtrij van het apparaat verzonden zijn.
wrqm/s
Het aantal schrijfverzoeken per seconde die naar de wachtrij van het apparaat verzonden zijn.
r/s
Het aantal leesverzoeken per seconde die naar het apparaat verzonden zijn.
w/s
Het aantal schrijfverzoeken per seconde die naar het apparaat verzonden zijn.
rsec/s
Het aantal sectoren die per seconde van het apparaat gelezen werden.
wsec/s
Het aantal sectoren die per seconde naar het apparaat geschreven werden.
avgrq-sz
De gemiddelde grootte (in sectoren) van de verzoeken naar het apparaat.
avgqu-sz
De gemiddelde wachtrijlengte van de verzoeken naar het apparaat.
await
De gemiddelde tijd (in milliseconden) om I/O verzoeken naar het apparaat af te handelen. Deze tijd is de som van de tijd doorgebracht in de wachtrij en de tijd nodig om het verzoek te verwerken.
svctm
De gemiddelde tijd (in milliseconden) nodig om een verzoek naar het apparaat te verwerken.
%util
Procentuele processortijd nodig om een I/O verzoek naar het apparaat te verwerken (bandbreedte gebruikt door het apparaat). Het apparaat is verzadigd als deze waarde de 100% nadert.

Voor meer informatie raadpleeg je de man-pagina's.