Informationen zur Verwendung der Linux-CPU

522
Patrizio Bertoni

Ich bleibe beim Profilieren eines Prozesses von mir, genannt (siehe topAusgabe) xspectra-frameb.

Seine innere Struktur lässt sich wie folgt zusammenfassen:

  • 8 Threads sind recvDatenbursts von Socketverbindungen, die den Schreibzugriff auf einen Puffer vervielfältigen
  • ein einzelner Thread, der für die Datensynchronisation zuständig ist (das Programm verhält sich wie eine Art Daten-Feed-Aggregator), der den Lesezugriff auf den Puffer wechselt

Prozessor ist ein Xeon mit 4 Hyper-Threading-Kernen. Die Grafik zeigt alle während meines CPU-Bursts als ziemlich untätig, topzeigt jedoch unterschiedliche Werte ( 125,9% ).

Welchem ​​Wert sollte ich mehr vertrauen?

Top vs Gnome *System Monitor*

0

1 Antwort auf die Frage

1
gronostaj

topzählt jeden Kern als 100%. Sie haben 8 Kerne, also sind 800% volle CPU-Last.

Lassen Sie uns die Werte aus dem Systemmonitor zusammenfassen:

21,2 + 10,8 + 20,7 + 18,4 + 27,8 + 27,3 + 37,9 + 26,9 = 191%

Das entspricht ungefähr der topPunktzahl:

125,9 + 66,4 + 9,0 + 7,3 + 4,0 + 3,7 + 3,0 + 3,0 + 3,0 + 0,3 + 0,3 + 0,3 = 226,2%

Warum der Unterschied? Kernlasten werden nicht gleichzeitig gelesen. Jeder Kern wird einzeln abgefragt, topund System Monitor führt dies nicht gleichzeitig aus. Deshalb werden sich die Ergebnisse unterscheiden.

Möglicherweise möchten Sie verwenden, htopwas weniger verwirrend ist und die Kernlasten separat anzeigt.