Überwachung

Verstehen des Lastdurchschnitts unter Linux

Verstehen des Lastdurchschnitts unter Linux
Der Lastdurchschnitt ist ein Maß für den Arbeitsaufwand im Vergleich zu den freien CPU-Zyklen, die auf einem Systemprozessor verfügbar sind. In diesem Artikel werde ich den Begriff definieren, demonstrieren, wie Linux diesen Wert berechnet, und dann einen Einblick in die Interpretation der Systemlast geben.

Verschiedene Methoden zur Berechnung der Last

Bevor wir uns mit Linux-Lastdurchschnitten befassen, müssen wir die verschiedenen Methoden zur Berechnung der Last untersuchen und die gängigste Messung der CPU-Last ansprechen - einen Prozentsatz.

Windows berechnet die Last anders als Linux, und da Windows seit jeher auf dem Desktop beliebter ist, wird die Windows-Definition von Last im Allgemeinen von den meisten Computerbenutzern verstanden. Die meisten Windows-Benutzer haben die Systemauslastung im Task-Manager als Prozentsatz von 0 % bis 100 % angezeigt.

In Windows wird dies abgeleitet, indem untersucht wird, wie „beschäftigt“ die Systemleerlaufprozess ist und mit dem Inversen die Systemlast darstellen. Wenn beispielsweise der Leerlauf-Thread zu 99 % der Zeit ausgeführt wird, beträgt die CPU-Auslastung in Windows 1 %. Dieser Wert ist leicht zu verstehen, bietet jedoch weniger allgemeine Details über den tatsächlichen Status des Systems.

In Linux wird der Lastdurchschnitt stattdessen durch eine Dezimalzahl dargestellt, die bei 0 beginnt.00. Der Wert lässt sich grob als die Anzahl der Prozesse in der letzten Minute definieren, die auf ihre Ausführung warten mussten. Im Gegensatz zu Windows ist der Linux-Lastdurchschnitt keine sofortige Messung. Die Belastung wird in drei Werten angegeben - dem 1-Minuten-Durchschnitt, dem 5-Minuten-Durchschnitt und dem 15-Minuten-Durchschnitt.

Verstehen des Lastdurchschnitts in Linux

Auf den ersten Blick erscheint diese zusätzliche Detailebene unnötig, wenn Sie einfach nur den aktuellen Zustand der CPU-Last in Ihrem System kennen möchten. Da jedoch die Mittelwerte von drei Zeiträumen angegeben werden, anstatt einer sofortigen Messung, können Sie mit einem einzigen Blick auf drei Zahlen eine vollständigere Vorstellung von der Änderung der Systemlast im Laufe der Zeit erhalten

Die Anzeige des Lastdurchschnitts ist einfach. Auf der Befehlszeile können Sie eine Vielzahl von Befehlen verwenden. Ich verwende einfach den Befehl „w“:

root@virgo [~]# w
21:08:43 bis 38 Tage,  4:34,  4 Nutzer,  Durchschnitt: 3 .11, 2.75, 2.70

Der Rest des Befehls zeigt an, wer angemeldet ist und was sie ausführen, aber für unsere Zwecke sind diese Informationen irrelevant, daher habe ich sie aus der obigen Anzeige ausgeschnitten.

In einem idealen System sollte kein Prozess von einem anderen Prozess (oder Thread) aufgehalten werden, aber in einem Einprozessorsystem, dies tritt auf, wenn die Last über 1 . steigt.00.

Die Worte „Single-Prozessor-System“ sind hier unglaublich wichtig. Sofern Sie keinen alten Computer verwenden, verfügt Ihr Computer wahrscheinlich über mehrere CPU-Kerne. In der Maschine, auf der ich bin, habe ich 16 Kerne:

root@virgo [~]# nproc
16

In diesem Fall ist ein Lastdurchschnitt von 3.11 ist überhaupt nicht alarmierend. Es bedeutet einfach, dass etwas mehr als drei Prozesse zur Ausführung bereit waren und CPU-Kerne vorhanden waren, um ihre Ausführung zu bewältigen. Bei diesem speziellen System müsste die Last 16 erreichen, um als „100%“ betrachtet zu werden.

Um dies in eine prozentbasierte Systemlast zu übersetzen, können Sie diesen einfachen, wenn nicht stumpfsinnigen Befehl verwenden:

cat /proc/loadavg | Schnitt -c 1-4 | echo "scale=2; ($(Diese Befehlssequenz isoliert den 1-Minuten-Durchschnitt über cut und gibt ihn geteilt durch die Anzahl der CPU-Kerne über bc, einen Befehlszeilenrechner, aus, um den Prozentsatz abzuleiten.

Dieser Wert ist keineswegs wissenschaftlich, liefert aber eine grobe Annäherung an die CPU-Auslastung in Prozent.

Eine Minute zum Lernen, ein Leben zum Meistern

Im vorherigen Abschnitt habe ich das „100%“-Beispiel einer Last von 16.0 auf einem 16-CPU-Kernsystem in Anführungszeichen, weil die Berechnung der Last in Linux etwas nebulöser ist als in Windows. Der Systemadministrator muss Folgendes beachten:

Aus diesem Grund ist es keine rein empirische Angelegenheit, die CPU-Last auf einem Linux-System in den Griff zu bekommen. Selbst wenn dies der Fall wäre, ist die CPU-Last allein kein angemessenes Maß für die Gesamtauslastung der Systemressourcen resource. Daher wird ein erfahrener Linux-Administrator die CPU-Last im Einklang mit anderen Werten wie I/O-Wartezeit und dem Prozentsatz von Kernel im Vergleich zur Systemzeit berücksichtigen consider.

E/A-Wartezeit

I/O-Wartezeit wird am einfachsten über den Befehl „top“ angezeigt:

Im obigen Screenshot habe ich den I/O-Wartewert hervorgehoben. Dies ist ein Prozentsatz der Zeit, die die CPU auf den Abschluss von Eingabe- oder Ausgabebefehlen gewartet hat. Dies ist normalerweise ein Hinweis auf eine hohe Festplattenaktivität. Während ein hoher Warte-Prozentsatz allein CPU-gebundene Aufgaben nicht wesentlich verschlechtern kann, verringert er die E/A-Leistung für andere Aufgaben und lässt das System träge erscheinen.

Hohe E/A-Wartezeit ohne offensichtliche Ursache kann auf ein Problem mit einer Festplatte hinweisen. Verwenden Sie den Befehl „dmesg“, um zu sehen, ob Fehler aufgetreten sind.

Kernel vs. Systemzeit

Die oben hervorgehobenen Werte stellen die Benutzer- und Kernel-(System-)Zeit dar. Dies ist eine Aufschlüsselung des Gesamtverbrauchs an CPU-Zeit durch Benutzer (i.e. Anwendungen usw.) und der Kernel (i.e. Interaktion mit Systemgeräten). Eine höhere Benutzerzeit weist auf eine höhere CPU-Auslastung durch Programme hin, wobei eine höhere Kernelzeit auf mehr Verarbeitung auf Systemebene hinweist.

Eine ziemlich durchschnittliche Last

Das Erlernen der Beziehung zwischen Lastdurchschnitt und tatsächlicher Systemleistung braucht Zeit, aber schon bald werden Sie eine deutliche Korrelation feststellen. Ausgestattet mit den Feinheiten der Systemleistungsmetriken können Sie bessere Entscheidungen über Hardware-Upgrades und Programmressourcennutzung treffen resource.

AppyMouse On-Screen Trackpad und Mauszeiger für Windows Tablets
Tablet-Benutzer vermissen oft den Mauszeiger, insbesondere wenn sie die Laptops gewohnt sind. Die Touchscreen-Smartphones und -Tablets bieten viele Vo...
Mittlere Maustaste funktioniert nicht unter Windows 10
Das mittlere Maustaste hilft Ihnen beim Scrollen durch lange Webseiten und Bildschirme mit vielen Daten. Wenn das aufhört, werden Sie am Ende die Tast...
So ändern Sie die linke und rechte Maustaste auf einem Windows 10-PC
Es ist ganz normal, dass alle Computer-Maus-Geräte ergonomisch für Rechtshänder gestaltet sind. Es gibt aber auch Mausgeräte, die speziell für Linkshä...