LoadAverage

Forse non ci si fa molto caso, ma dando i comandi

uptime

oppure

top

viene indicato anche il load average.
Ma come si leggono questi i dati?

$tratto dalla ML linuxvar, ad opera di nextime

gianluca@debian64 ~ $ uptime
00:39:42 up 16 min,  3 users,  load average: 2.94, 2.78, 1.72

Per dirla terra terra è una misura che indica la media dei processi in
attesa nella coda di esecuzione della/delle cpu.

Un load average maggiore di 1 indica che c'è almeno un processo che sta attendendo il
proprio turno di esecuzione senza avere spazio per essere eseguito subito.

Le tre cifre indicano la media dell'ultimo minuto, negli ultimi 5
minuti e negli ultimi 15 minuti, dando così anche un'idea del trend
che si sta avendo.

In generale la "situazione ideale" e' quella in cui il load average rimane sempre al di
sotto di 1*numero di cpu, anche se in realtà non è per nulla difficile
trovare situazioni in cui il load average è ben più alto.

Picchi sporadici anche di load alto non sono mai un problema, un load
costantemente alto ( la definizione di alto dipende da molteplici
fattori, a seconda delle situazioni può essere alto un load di 2, in
altre puoi considerare alto un load di 15... ) invece determina un
problema di carico sulla cpu eccessivo.

Un load eccessivo determina un calo notevole delle prestazioni della
macchina, fino a renderla anche non responsiva ai comandi in shell o
determinarne dei semi blocchi.

/me che in vita sua ha visto macchine con un load di > 700 reggere ( su
sparc64 ) e macchine morire a < di 30 ( su x86 )

Qualche lettura:

  1. http://www.luv.asn.au/overheads/NJG_LUV_2002/luvSlides.html
  2. http://www.linuxjournal.com/article/9001
  3. http://wiki.linuxquestions.org/wiki/Load_average