Wir sprechen weiterhin über Tools zur Bewertung der CPU-Leistung auf Linux-Computern. Heute im Material: Temci, Uarch-Bank, Likwid, Perf-Tools und llvm-mca.
Weitere Benchmarks:
Fotos - Lukas Blazek - Unsplash
Dies ist ein Tool zum Schätzen der Ausführungszeit von zwei Programmen. Tatsächlich können Sie die Ausführungszeit von zwei Anwendungen vergleichen. Das Dienstprogramm wurde von einem deutschen Studenten, Johannes Bechberger, geschrieben, der es im Rahmen seiner Bachelorarbeit im Jahr 2016 entwickelte. Heute ist das Tool unter der GNU General Public License lizenziert.
Johannes wollte ein Tool entwickeln, mit dem die Leistung eines Computersystems in einer kontrollierten Umgebung gemessen werden kann. Daher ist eines der Hauptmerkmale von temci die Möglichkeit, eine Testumgebung zu konfigurieren.
Sie können beispielsweise : die Einstellungen des CPU-Frequenzsteuerungs-Managers ändern, das
Hyper-Threading sowie die L1- und L2-Caches deaktivieren, den Turbomodus auf Intel-Prozessoren und anderen deaktivieren. Für das Benchmarking verwendet
temci die Tools time ,
perf_stat und
getrusage .
So funktioniert das Dienstprogramm im ersten Fall:
Basierend auf den Ergebnissen des Benchmarking generiert das System einen
praktischen Bericht mit Diagrammen, Tabellen und Grafiken, der temci von ähnlichen Lösungen unterscheidet.
Von den Mängeln von temci sticht seine "Jugend" hervor. Aus diesem Grund werden
nicht alle Hardware- und Softwarekonfigurationen unterstützt. Beispielsweise ist es schwierig, unter macOS zu arbeiten, und einige Funktionen sind auf einem System mit einem ARM-Prozessor nicht verfügbar. Die Situation könnte sich in Zukunft ändern, da der Autor das Projekt aktiv weiterentwickelt und die Anzahl der Sterne auf GitHub allmählich zunimmt - vor nicht allzu langer Zeit wurde temci sogar
in den Kommentaren zu Hacker News
diskutiert .
Dienstprogramm zur Bewertung der Leistung von CPU-Funktionen auf niedriger Ebene, das vom Ingenieur Travis Downs (
Travis Downs ) entwickelt wurde. Vor kurzem hat er seinen Blog
Performance Matters auf GitHub Pages betrieben, in dem es um Benchmarking-Tools und andere verwandte Themen geht. Im Allgemeinen gewinnt die Uarch-Bank gerade erst an Popularität, wird aber von den Bewohnern von Hacker News in thematischen Themen bereits häufig als Go-to-Benchmarking-Tool erwähnt.
Mit Uarch-Bench können Sie die Speicherleistung, die Geschwindigkeit des parallelen Ladens von Daten und die Reinigung von YMM-Registern bewerten. Wie die vom Programm generierten Benchmarking-Ergebnisse aussehen, finden Sie im offiziellen Repository am Ende der Seite.
Es ist zu beachten, dass uarch-Bench wie temci die Intel Turbo Boost-Funktion
deaktiviert (sie erhöht automatisch die Prozessortaktrate unter Last), damit die Testergebnisse konsistent sind.
Bisher befindet sich das Projekt in einem frühen Entwicklungsstadium, daher verfügt die Uarch-Bank nicht über eine detaillierte Dokumentation, und es kann Fehler in ihrer Arbeit geben - zum Beispiel sind
Schwierigkeiten beim Ausführen auf Ryzen
bekannt . Es werden auch nur Benchmarks für x86-Architekturen unterstützt. Der Autor verspricht, in Zukunft weitere Funktionen hinzuzufügen, und lädt ein, sich der Entwicklung anzuschließen.
Dies ist ein Toolkit zur Bewertung der Leistung von Linux-Computern mit Intel-, AMD- und ARMv8-Prozessoren. Es wurde 2017 unter der Schirmherrschaft des Bundesministeriums für Bildung und Forschung erstellt und auf Open Source übertragen.
Unter den Likwid-Tools kann das Likwid-Powermeter unterschieden werden, das Informationen aus RAPL-Registern über den vom System verbrauchten Strom sowie Likwid-Set-Frequenzen anzeigt - mit denen Sie die Prozessorfrequenz steuern können.
Die vollständige Liste finden Sie
im Repository .
Das Tool wird von Ingenieuren verwendet, die auf dem Gebiet der HPC forschen. So arbeitet beispielsweise eine Gruppe von Spezialisten des Regionalen Rechenzentrums der Universität Erlangen-Nürnberg (RRZE) in Deutschland mit likwid. Sie ist aktiv an der Entwicklung dieser Tools beteiligt.
Fotos - Clem Onojeghuo - Unsplash
Dieses Tool zur Analyse der Leistung von Linux-Servern wurde
von Brendan Gregg eingeführt. Er ist einer der Entwickler von
DTrace , einem dynamischen Tracing-Framework zum Debuggen von Anwendungen in Echtzeit.
Die Perf-Tools basieren auf den Kernel-Subsystemen perf_events und ftrace. Mit ihren Dienstprogrammen können Sie die Eingabe- / Ausgabeverzögerung (iosnoop) analysieren, die Argumente für den Zugriff auf Systemaufrufe (unccount, funcslower, funcgraph und functrace) verfolgen und Statistiken zu „Treffern“ im Datei-Cache (Cachestat) sammeln. Im letzteren Fall sieht der Befehl folgendermaßen aus:
Um das Tool herum hat sich eine ziemlich große Community gebildet (
fast 6.000 Sterne auf GitHub ). Und es gibt Unternehmen wie
Netflix , die Perf-Tools aktiv einsetzen. Das Tool wird jedoch finalisiert und modifiziert (obwohl in letzter Zeit nur selten Updates veröffentlicht wurden). Daher können Fehler in seiner Arbeit auftreten - der Autor schreibt, dass Perf-Tools manchmal Kernel-Panik nennen.
Ein Dienstprogramm, das vorhersagt, wie viel Rechenressourcen ein Maschinencode auf verschiedenen CPUs benötigt. Es
wertet die Anweisungen pro Zyklus (
IPC ) und die von einer Anwendung generierte Hardwarelast aus.
llvm-mca wurde 2018 im Rahmen des
LLVM- Projekts eingeführt, das ein universelles System zur Analyse, Transformation und Optimierung von Programmen entwickelt. Es ist bekannt, dass sich die Autoren von llvm-mca von der
Intel IACA- Softwareleistungsanalyselösung inspirieren ließen und nach einer Alternative suchten. Und laut Benutzer ähnelt die Ausgabe des Tools (deren Markup und Nummer) wirklich der IACA - ein Beispiel
finden Sie hier . Llvm-mca akzeptiert jedoch nur die
AT & T-Syntax , sodass Sie wahrscheinlich Konverter verwenden müssen, um damit zu arbeiten.
Worüber wir in unseren Blogs und sozialen Netzwerken schreiben:
"Mat. Wall Street-Modell "oder wie man Cloud-Kosten optimiert
Sichern Ihres Linux-Systems: 10 Tipps
Risikominimierung: So verlieren Sie Ihre Daten nicht
Bücher für diejenigen, die bereits mit der Systemadministration beschäftigt sind oder gerade erst anfangen möchten
Auswahl: fünf Bücher und ein Kurs über Netzwerke

Wir bei 1cloud.ru bieten einen kostenlosen Service "
DNS-Hosting " an. Sie können Ihre DNS-Einträge in einem einzigen persönlichen Konto verwalten.