Potresti trovare una situazione in cui l'utilizzo della CPU è elevato ma ritieni di non eseguire nulla. Sul sistema Linux, puoi monitorare questa attività utilizzando mpstat.
Mpstat viene utilizzato per monitorare l'utilizzo della CPU sul sistema. Sarà più utile se il tuo sistema ha più processori. I primi processori saranno firmati come CPU 0. Il secondo sarà firmato come CPU 1 e così via. Dalla sua pagina di manuale, mpstat è descritto come :
The mpstat command writes to standard output activities for each available processor, processor 0 being the first one. Global average activities among all processors are also reported. The mpstat command can be used both on SMP and UP machines, but in the latter, only global average activities will be printed. If no activity has been selected, then the default report is the CPU utilization report
Come eseguire mpstat
Digita semplicemente mpstat sulla tua console per eseguire mpstat.
$ mpstat
Uscita:
Linux 3.2.0-57-generic (USERNB01) 12/12/2013 _x86_64_ (2 CPU)
03:29:29 PM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %idle
03:29:29 PM all 6.30 0.06 1.94 3.75 0.00 0.06 0.00 0.00 87.88
Se hai trovato un errore come comando non trovato o simili potresti non installare mpstat nel tuo sistema.
Se stai usando CentOS, RedHat o Fedora , esegui questo comando per installare mpstat
$ yum install sysstat
Se stai usando Debian, Ubuntu o un suo derivato , esegui questo comando per installare mpstat
$ apt-get install sysstat
Ed ecco come leggere le informazioni di cui sopra.
- 15:29:29 : indica l'ora in cui è stato eseguito mpstat
- tutti : significa Tutte le CPU
- %usr : mostra la percentuale di utilizzo della CPU che si è verificata durante l'esecuzione a livello di utente (applicazione)
- %bello : mostra la percentuale di utilizzo della CPU che si è verificata durante l'esecuzione a livello di utente con una buona priorità
- %sys : mostra la percentuale di utilizzo della CPU che si è verificata durante l'esecuzione a livello di sistema (kernel)
- %iowait : mostra la percentuale di tempo in cui la CPU o le CPU sono rimaste inattive durante le quali il sistema ha ricevuto una richiesta di I/O del disco in sospeso
- %irq : mostra la percentuale di tempo impiegata dalla CPU o dalle CPU per servire gli interrupt hardware
- %soft : mostra la percentuale di tempo impiegata dalla o dalle CPU per gestire gli interrupt software
- %steal : mostra la percentuale di tempo trascorso in attesa involontaria dalla o dalle CPU virtuali mentre l'hypervisor stava effettuando la manutenzione di un altro processore virtuale
- %ospite : mostra la percentuale di tempo impiegata dalla CPU o dalle CPU per eseguire un processore virtuale
- %idle : mostra la percentuale di tempo in cui la CPU o le CPU sono rimaste inattive e il sistema non ha ricevuto richieste di I/O su disco in sospeso
1. Stampa l'utilizzo della CPU per processori
Come puoi vedere sopra, il nostro sistema ha 2 CPU. Se vuoi, puoi usare -P parametro seguito dal numero della CPU per vedere l'utilizzo specifico della CPU.
$ mpstat -P 0
Uscita:
Linux 3.2.0-57-generic (USERNB01) 12/12/2013 _x86_64_ (2 CPU)
03:54:00 PM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %idle
03:54:00 PM 0 3.82 0.01 1.16 3.88 0.00 0.06 0.00 0.00 91.06
$ mpstat -P 1
Uscita:
Linux 3.2.0-57-generic (USERNB01) 12/12/2013 _x86_64_ (2 CPU)
03:53:58 PM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %idle
03:53:58 PM 1 16.52 0.20 4.48 0.46 0.00 0.04 0.00 0.00 78.30
2. Stampa tutto Utilizzo CPU
Puoi anche stampare ogni utilizzo della CPU dei processori in una singola pagina. Usa semplicemente -P ALL parametro per farlo
$ mpstat -P ALL
Linux 3.2.0-57-generic (USERNB01) 12/12/2013 _x86_64_ (2 CPU)
04:07:36 PM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %idle
04:07:36 PM all 6.02 0.04 1.72 2.99 0.00 0.05 0.00 0.00 89.17
04:07:36 PM 0 3.84 0.01 1.15 3.72 0.00 0.06 0.00 0.00 91.21
04:07:36 PM 1 13.55 0.15 3.66 0.46 0.00 0.03 0.00 0.00 82.15
3. Stampa l'utilizzo della CPU utilizzando gli intervalli
Potresti voler vedere il movimento di utilizzo della CPU. Per fare ciò, puoi utilizzare gli intervalli. Ecco un esempio.
$ mpstat 3 4
Linux 3.2.0-57-generic (USERNB01) 12/12/2013 _x86_64_ (2 CPU)
04:27:11 PM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %idle
04:27:14 PM all 0.67 0.00 0.34 0.00 0.00 0.00 0.00 0.00 98.99
04:27:17 PM all 1.17 0.00 0.33 1.33 0.00 0.00 0.00 0.00 97.17
04:27:20 PM all 0.84 0.00 0.17 0.00 0.00 0.00 0.00 0.00 98.99
04:27:23 PM all 1.00 0.00 0.17 1.51 0.00 0.00 0.00 0.00 97.32
Average: all 0.92 0.00 0.25 0.71 0.00 0.00 0.00 0.00 98.12
Il comando precedente serve per mostrarti 4 rapporti sull'utilizzo della CPU con intervalli di 3 secondi
4. Stampa la versione mpstat
Infine, per stampare la versione di mstat, usa il parametro -V.
$ mpstat -V
Uscita:
sysstat version 10.0.3
(C) Sebastien Godard (sysstat orange.
Questo è un rapido utilizzo del comando mpstat nel sistema Linux. Puoi visualizzare la pagina di manuale di msptat digitando man mpstat per esplorare più in dettaglio.