CPU-Auslastung verstehen

Kategorie: Linux
Erstellt: 26.08.2021

In der Serververwaltung von LiveConfig finden Sie einen Graphen der CPU-Auslastung:

Beispiel-Graph der CPU-Auslastung

Aber was bedeuten diese Werte?

User
Die CPU verarbeitet “normalen” Code im User-Modus (beliebige Anwendungen/Programme, egal ob als root oder als normaler Benutzer ausgeführt)
System
Die CPU verarbeitet System-/Kernel-Code (zum Beispiel Kernel-Module oder Treiber).
nice
Fast identisch wie beim User-Modus, aber der betroffene Anwendungscode wird mit niedrigerer Priorität ausgeführt.
wait
Wenn das System Daten lesen oder schreiben muss (Netzwerk, Festplatte, USB-Stick, was auch immer…), dann wird die CPU in den “Schlaf” geschickt (egal ob bei User- oder System-Code) und wartet bis die Eingabe/Ausgabe-Operation abgeschlossen ist. Ein hoher Wert für “wait” deutet auf sehr viele Schreib-Lese-Zugriffe hin oder auf langsame Datenträger (Festplatte). Aber auch Backups, ein RAID-Rebuild oder Zugriffe auf riesige Verzeichnisse kann Speichermedien vorübergehend “ausbremsen” und somit zu einem hohen wait-Wert führen.
Steal
Wenn der Server virtualisiert ist, dann kann das Host-System CPU-Zyklen von der Instanz “stehlen” und einer anderen Instanz zuordnen. Ein hoher Wert für steal kann auf eine Überbuchung bzw. Überlastung des Host-Systems hindeuten.
Guest
Ein Hypervisor betreibt eine virtuelle CPU.
IRQ
Die CPU bearbeitet Interrupt-Handler. Im Normalfall sollten hier keine Werte erkennbar sein.