Warum / wie zeigt "Uptime" CPU-Auslastung> 1?

14

Ich habe eine 1-Kern-CPU auf meinem PC installiert. Manchmal uptimezeigt Last> 1. Wie ist das möglich und was bedeutet das?

EDIT: Die Werte gehen auf 2.4

Richard Rodriguez
quelle
Hinweis: loadunterscheidet sich von load average. Wie @michas sagte, ist load ein Indikator für die Anzahl der Prozesse, die auf ihre Ausführung warten, aber load average ist die durchschnittliche Systemlast, die über einen bestimmten Zeitraum von 1, 5 und 15 Minuten berechnet wurde.
Mohammad Kholghi

Antworten:

20

Die Auslastung entspricht nicht der CPU-Auslastung. Grundsätzlich ist dies ein Indikator dafür, wie viele Prozesse darauf warten , ausgeführt zu werden.

Einige hilfreiche Links:

michas
quelle
Oh, ok, das macht Sinn. Gibt es eine Möglichkeit, die CPU-Auslastung zu ermitteln, nicht die Auslastung?
Richard Rodriguez
Im Allgemeinen könnten Sie viele CPUs haben. Man könnte total beschäftigt sein und der andere nur im Leerlauf. Schauen Sie sich htopfür eine schöne "grafische" Übersicht.
Michas
2
Das ist falsch. Der Lastdurchschnitt ist ein Maß dafür, wie viele Prozesse zur Ausführung bereit sind . Dies schließt Prozesse ein, die warten, aber auch Prozesse, die gerade ausgeführt werden . Wenn also der Lastdurchschnitt 1 ist, bedeutet dies, dass im Durchschnitt (für den angegebenen Zeitraum) eine CPU verwendet wurde. Wenn es zwei sind, bedeutet dies, dass im Durchschnitt zwei CPUs verwendet wurden. Daher ist ein bestimmter Lastdurchschnitt für ein System mit einer CPU nicht dasselbe wie der gleiche Lastdurchschnitt für ein System mit mehreren Kernen.
Wouter Verhelst
7

uptimezeigt die Systemlast (nicht genau die CPU-Auslastung), die man uptimewie folgt beschrieben wird:

Die durchschnittliche Systemlast ist die durchschnittliche Anzahl von Prozessen, die sich entweder in einem ausführbaren oder in einem unterbrechungsfreien Zustand befinden. Ein Prozess in einem ausführbaren Zustand verwendet entweder die CPU oder wartet auf die Verwendung der CPU. Ein unterbrechungsfreier Prozess wartet auf einen E / A-Zugriff, z. B. auf die Festplatte. Die Mittelwerte werden über die drei Zeitintervalle ermittelt. Lastdurchschnitte werden für die Anzahl der CPUs in einem System nicht normalisiert. Ein Lastdurchschnitt von 1 bedeutet, dass ein einzelnes CPU-System die ganze Zeit geladen ist, während es auf einem 4-CPU-System bedeutet, dass es 75% der Zeit im Leerlauf war.

Solange die Auslastung geringer ist als die Anzahl der CPU-Kerne, sollte dies in Ordnung sein. Wenn es höher ist, bedeutet dies, dass Ihr System seine Arbeitslast "in Echtzeit" nicht bewältigen kann. Daher müssen einige Prozesse warten , um die CPU-Zeit (oder den E / A-Zugriff) zu erhalten. Eine Warteschlange wird erstellt.

Wenn Sie eine 2.7-Last haben, bedeutet dies, dass im Durchschnitt (in den letzten 1, 5 oder 15 Minuten, abhängig von dem betrachteten Wert) 2.7-Prozesse parallel ausgeführt werden, aber Sie haben nur 1 Core, also Ihr System ist überlastet. Sie verlangen zu viel davon.

Keine Panik, es könnte kein Problem sein: Sobald die Arbeit beendet ist, werden die Dinge normalerweise wieder normal.

Totor
quelle
4

Uptime zeigt die Ausgabe von /proc/loadavgfür Lasten.

Die Manpage von man 5 procsagt

   /proc/loadavg
          The first three fields in this file are load average figures giving
          the  number  of jobs in the run queue (state R) or waiting for disk
          I/O (state D) averaged over 1, 5, and 15  minutes. 

Sie können also selbst bei einer CPU-Auslastung von 0% eine hohe Auslastung haben. Ein Core kann eine Auslastung von bis zu 100% oder 1% auf Multiprozessorsystemen erzielen.

Siehe auch Hohe CPU-Auslastung während der E / A

Gemeinschaft
quelle
-2
 ps aux --sort -rss |head -15

Dadurch werden 15 Prozesse sortiert, die am häufigsten vom RSS-Speicher verwendet werden

Dies sortiert auch die am häufigsten verwendeten Prozesse nach CPU und Speicher

 ps aux --sort -pid |head -15

Wenn bei einer CPU-Auslastung mehr als eine Warnung angezeigt wird, überprüfen Sie die Prozessliste, um festzustellen, wer von ihnen die meiste CPU- und RAM-Auslastung aufweist

Wenn Sie die am häufigsten verwendeten Prozesse sehen, versuchen Sie zu sehen, mit welchen Dateien sie geöffnet sind

lsof -p [PID_most_used]

Auch wäre es schön, wenn Sie von oben Befehl ouptut geben

klerk
quelle
1
rss hat nichts mit durchschnittlicher Belastung zu tun. Worum geht es bei Ihnen?
Wouter Verhelst