GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

Installieren und Verwenden von Perf in Ubuntu und CentOS

Leistung ist einer der kompliziertesten Teile der Systemadministration. Wann immer Sie versuchen, die Ursache für schlechte Leistung oder den Grund für die hohe Arbeitsbelastung zu untersuchen, benötigen Sie dafür die richtigen Tools.

Perf ist eines dieser Tools. Es ist ein Leistungsindikator für Linux, mit dem Sie Daten über die Leistung Ihres Systems sammeln können.

Wir werden sehen, wie es auf Ubuntu und Centos installiert wird, und eine kleine Anleitung zur Verwendung der grundlegenden Befehle geben.

Installieren von Perf auf Ubuntu

Perf ist Teil des Pakets „linux-tools“ in Ubuntu und wird wie jedes andere Paket mit apt installiert. Stellen Sie nur sicher, dass Sie die Quellen aktualisiert haben.

sudo apt update

Installieren Sie zuerst das Paket linux-tools-common:

sudo apt install linux-tools-common

Als Nächstes müssen Sie ein spezifisches Paket für Ihren laufenden Kernel auswählen. Um die genaue Version Ihres Kernels zu erhalten, verwenden Sie den folgenden Befehl:

uname -r

Sie erhalten die genaue Kernel-Version.

Sie können das spezifische linux-tools-Paket installieren oder, wenn es keine spezifische Version des Pakets für Ihren Kernel gibt, das linux-tools-generic-Paket verwenden. Dies funktioniert jedoch möglicherweise nicht wie erwartet. Als Faustregel gilt, dass perf nicht oder nicht wie beabsichtigt funktioniert, wenn das linux-tools-Paket nicht zum Laufen passt (sehr wichtig! das Laufen, nicht die installierte Version des Linux-Kernels.

Installieren von Perf unter CentOS

Wie üblich variieren die Paketnamen von CentOS bis Ubuntu, aber das Verfahren ist im Grunde dasselbe, zuerst aktualisieren Sie die Paketinformationen:

yum update

Es gibt ein direktes Paket, das alle Abhängigkeiten in CentOS auslöst.

yum install perf

Grundlegende Verwendung des Perf-Befehls

Lassen Sie uns einige grundlegende Befehle zur Verwendung von perf sehen. Die grundlegendste Verwendung von perf ist natürlich die Hilfeseite mit dem Flag „–help“, um die Befehlszusammenfassung zu sehen

Abhängig von Ihrer Systemkonfiguration können einige Befehle von perf durch Sicherheitsrichtlinien eingeschränkt sein. Um diese Richtlinien zu deaktivieren, verwenden Sie einfach:

echo 0 > /proc/sys/kernel/perf_event_paranoid

Es gibt zwei große Gruppen von Befehlen:Befehle, die über das Live-System ausgeführt werden, und Befehle, die über eine Leistungsaufzeichnung ausgeführt werden.

Befehle über ein Live-System

perf list [category]

Der obige Befehl listet alle verfügbaren Ereignistypen im System auf. Dies ist eine lange Liste, die je nach Systemkonfiguration von weniger/mehr umbrochen wird. Wenn Sie einen Kategoriewert angeben, werden nur Ereignisse dieser Kategorie angezeigt.

Verfügbare Kategorien sind:hw|sw|cache|tracepoint|pmu|event_glob

perf bench <category> <benchmark>

Der obige Befehl führt mehrere Benchmarks auf dem System durch. Sie sind in verschiedene Kategorien aufgeteilt (sched, mem, numa, futex, all) und jede Kategorie hat eine andere Liste von Benchmarks.

Wenn Sie alle Speichergeschwindigkeitstests überprüfen möchten, verwenden Sie den folgenden Befehl:

perf bench mem all
perf stat <command>

Der obige Befehl gibt die Leistungsstatistiken zurück. Es wird so etwas ausgeben

perf top

Dadurch wird eine Live-Analyse des Systemprofils angezeigt, wie oben, aber feiner abgestimmt.

Hier beginnt die zweite Gruppe von Befehlen.

Befehle über einen Leistungsdatensatz

Sie können ein Leistungsprofil jedes Befehls aufzeichnen, den Sie mit der folgenden Befehlszeile ausführen:

perf record [options]

Dadurch wird ein Rohleistungsregister-Datensatz erstellt. Wie tief dieser Datensatz ist, hängt von der Installation Ihres Systems ab. Möglicherweise benötigen Sie Debug- oder Entwicklungspakete, um alle Profildaten zu erhalten, die Sie möglicherweise erhalten. Es gibt auch viele Flags, mit denen wir steuern können, was profiliert wird, wie es gespeichert wird und wie oft es profiliert wird.

Sobald wir die Leistungsaufzeichnung haben, gibt es mehrere Befehle, um mit diesen Daten zu arbeiten, der einfachste ist wie folgt:

perf report -i <perf file> [options]

Dadurch wird ein Bericht der Leistungsdatei erstellt. Wir können auswählen, wie die Daten aufgeteilt oder sortiert werden sollen oder welche Daten wir im Bericht haben möchten.

perf diff <datafile 1> <datafile 2> …

So können wir beispielsweise zwei Ausführungen vergleichen, wenn wir wissen wollen, wie das Programm nach Änderung der Parameter im Vergleich zur Basisausführung läuft.

perf lock -I <perf file>

Dadurch werden alle Sperrereignisse in einer zuvor aufgezeichneten Leistungsdatei analysiert.

perf mem -t <Type> [ record <command> | report ]

Dadurch wird ein Datensatz aufgezeichnet oder gemeldet, wobei ein Profil für den Speicherzugriff des ausgewählten Typs erstellt wird.

perf timechart

Dadurch wird ein Zeitdiagramm der Ausführung der zuvor aufgezeichneten Profilerstellung erstellt.

Mit all diesen Tools in unserer Hand können Sie anfangen zu überprüfen, was auf Ihrem Server vor sich geht, Sie können Ausführungsprofile erstellen, um verschiedene Konfigurationen zu testen, und Sie werden mit einer Vielzahl von Tools ausgestattet sein, um die Leistung Ihres Systems zu kontrollieren .


Cent OS
  1. Installieren von JAVA 8 JDK auf CentOS, RedHat und Fedora

  2. Installation von PostgreSQL und phpPgAdmin in CentOS

  3. Installation von PhpMydmin (Centos oder Ubuntu)

  4. Installieren und Verwenden von Docker unter CentOS und Fedora

  5. Installieren und Verwenden von Docker unter Ubuntu und Debian

Installieren und konfigurieren Sie phpLDAPAdmin unter CentOS 7 / Ubuntu 16.04

Installieren und Verwenden von Perf in Ubuntu und CentOS

So leeren Sie DNS unter Ubuntu und CentOS

Installieren und Konfigurieren von Wazuh Server auf CentOS 7

So installieren Sie Firefox 36 unter CentOS 7 und Ubuntu 14.04

Installieren von Apache und PHP unter CentOS 8