vmstat

Utilizzare questo comando per fornire più statistiche sul sistema. Il comando vmstat riporta statistiche relative ai thread del kernel nella coda di esecuzione e attesa, paginazione della memoria, interruzioni, chiamate di sistema, commutazioni di contesto e attività CPU.

L'attività della CPU è la suddivisione in percentuale della modalità utente, della modalità di sistema, del tempo di inattività e attende l'I/O del disco.

La sintassi generale di questo comando è:
vmstat  <time_between_samples_in_seconds> <number_of_samples> -t
Un output tipico è simile al seguente:
kthr     memory             page              faults        cpu        time
----- ----------- ------------------------ ------------ ----------- --------
 r  b   avm   fre  re  pi  po  fr   sr  cy  in   sy  cs us sy id wa hr mi se
 0  0 45483   221   0   0   0   0    1   0 224  326 362 24  7 69  0 15:10:22
 0  0 45483   220   0   0   0   0    0   0 159   83  53  1  1 98  0 15:10:23
 2  0 45483   220   0   0   0   0    0   0 145  115  46  0  9 90  1 15:10:24
In questo output, cercare:
  • Le colonne r (coda di esecuzione) e b (bloccato) iniziano ad aumentare, soprattutto oltre 10. Questo aumento di solito indica che si hanno troppi processi in competizione per la CPU.
  • I valori nelle colonne pi, po (page in / out) sono diversi da zero, il che indica che si sta paginando e che è necessaria più memoria. La dimensione dello stack potrebbe essere impostata su un valore troppo elevato per alcune delle istanze JVM.
  • cs (switch di contatti) molto elevato rispetto al numero di processi. Potrebbe essere necessario ottimizzare il sistema con vmtune.
  • Nella sezione cpu, us (tempo utente) che indica il tempo impiegato nei programmi. Supponendo che Java™ sia il primo nell'elenco in tprof, è necessario ottimizzare l'applicazione Java. Nella sezione cpu, se sys (ora del sistema) è superiore al previsto e si dispone ancora di id (tempo di inattività) rimanente, potrebbe verificarsi un conflitto di blocco. Controllare il tprof per le chiamate relative al blocco nel tempo kernel. È possibile provare più istanze di JVM.
  • L'indicatore -t , che aggiunge il tempo per ciascun campione alla fine della linea.