Perché top segnala l'utilizzo errato della CPU?


10

Ho una macchina con Intel(R) Xeon(R) CPU E5520visibile come 16 core logici (8 con HT). Se eseguo qualcosa per consumare il tempo della CPU (a thread singolo) top riporta correttamente il 100% di utilizzo della CPU per il processo, ma solo circa il 3-4% di utilizzo totale.

Cpu(s):  3.6%us,  0.0%sy,  0.0%ni, 96.4%id,  0.0%wa,  0.0%hi,  0.0%si,  0.1%st

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
 1567 www       20   0 65632   84    4 R  100  0.0   0:05.96 burnMMX

Sicuramente l'uso segnalato dovrebbe essere ~ 6,25% (1 su 16 core).

  • È errato perché è una macchina virtuale?
  • Come posso calcolare un valore corretto?
linux  cpu  top 

1
puoi provare a atopcambiare la parte superiore per segnalare l'utilizzo di ciascuna CPU singolarmente (premendo 1)
Hubert Kario

@HubertKario l'uso segnalato per ogni core è corretto, quindi perché allora il totale è sbagliato?

Se i livelli di utilizzo dei singoli core sono corretti, ciò suggerirebbe un bug in cima tanto improbabile come sembra ...
Hubert Kario

Questo non sarebbe il primo post sui risultati errati nelle VM. Puoi descrivere la tua tecnologia VM e i tuoi sistemi operativi host e guest?
Nils,

@Nils Xen con un guest server Ubuntu / 2.6.32-21. Nessuna informazione sul sistema operativo host.

Risposte:


12

topnel riepilogo riporta l'utilizzo relativo alla CPU con tutti i core aggiunti. D'altra parte, quando si guarda nell'elenco dei processi, la percentuale di report migliori fa riferimento a un core (reale o HT). Prova a eseguire un processo con 4 thread in grado di assorbire 4 core della CPU, lo troverai usando il 400% di CPU.

Non so dire perché, ma è così che topfunziona su tutto il sistema Linux che ho visto.


5

Molto spesso topfunziona in modalità "Irix" per impostazione predefinita, proprio come la descrivi. Se si desidera ottenere una percentuale delle capacità totali della CPU (ovvero quando la somma dell'utilizzo possibile della CPU aumenta fino al 100% e non cpu_cores_number * 100%), è sufficiente attivare la modalità 'Irix' premendo I.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.