Heute werden wir über offene Tools zur Bewertung der Leistung von Prozessoren, Speicher, Dateisystemen und Speichersystemen sprechen.
Die Liste enthält Dienstprogramme, die von Bewohnern von GitHub und Mitgliedern thematischer Threads auf Reddit - Sysbench, UnixBench, Phoronix Test Suite, Vdbench und IOzone angeboten werden.
/ Unsplash / Veri IvanovaDies ist ein Dienstprogramm zum Testen der Last von MySQL-Servern, das auf dem LuaJIT-Projekt basiert und eine virtuelle Maschine für die Lua-Sprache entwickelt. Der Autor des Tools ist Programmierer und Experte für MySQL Alexey Kopytov. Das Projekt begann als Hobby, wurde aber im Laufe der Zeit von der Community anerkannt. Heute nutzt sysbench große Universitäten und IT-Organisationen
wie IEEE für ihre Arbeit.
Während der SECR-2017-Konferenz (es gibt eine Aufzeichnung der Rede
auf YouTube ) sagte Alexey, dass Sie mit sysbench die Datenbankleistung bewerten können, wenn Sie auf neue Geräte umsteigen, die DBMS-Version aktualisieren oder die Anzahl der Abfragen drastisch ändern. Im Allgemeinen lautet die Befehlssyntax für den Test wie folgt:
sysbench [options]... [testname] [command]
Dieser Befehl bestimmt den Typ (CPU, Speicher, Fileio) und die Lasttestparameter (Anzahl der Threads, Anzahl der Anforderungen, Transaktionsverarbeitungsgeschwindigkeit). Im Allgemeinen kann das Tool Millionen von Ereignissen pro Sekunde verarbeiten. Alexey Kopytov sprach in einer der
Ausgaben des Podcasts zur Softwareentwicklung ausführlicher über die Architektur und die interne Struktur von sysbench.
Eine Reihe von Tools zur Bewertung der Leistung von Unix-Systemen. Er wurde 1983 von Ingenieuren der Monash University vorgestellt. Seitdem haben viele Leute das Tool unterstützt, zum Beispiel das
Byte Magazine , der Autor des
Magazins für Mikrocomputertechnologie
, und David Niemi, ein Mitglied von LKML.
Anthony Voellm von Microsoft ist für die Veröffentlichung der nächsten Version des Tools verantwortlich.
UnixBench ist eine Sammlung von Einzeltests. Sie vergleichen die Geschwindigkeit der Codeausführung auf einem Computer unter Unix mit der Leistung des Referenzsystems
SPARCstation 20-61. Basierend auf diesem Vergleich wird eine Leistungsbewertung generiert.
Zu den verfügbaren Tests gehören: Whetstone, der die Effektivität von Gleitkommaoperationen beschreibt, File Copy, mit dem die Geschwindigkeit des Datenkopierens geschätzt wird, sowie verschiedene 2D- und 3D-Benchmarks. Eine vollständige Liste der Tests finden Sie im Repository auf GitHub . Viele von ihnen verwenden virtuelle Maschinen in der Cloud, um die Leistung virtueller Maschinen zu bewerten.
Diese Testsuite wurde von den Autoren der Phoronix-Webressource entwickelt, die Nachrichten zu GNU / Linux-Distributionen veröffentlicht. Die erste Testsuite wurde 2008 eingeführt - dann umfasste sie 23 verschiedene Tests. Später starteten Entwickler den Cloud-Dienst
OpenBenchmarking.org , mit dem Benutzer ihre eigenen Testskripte veröffentlichen konnten. Heute
werden etwa 60 Benchmark-Kits vorgestellt, darunter solche für maschinelles Lernen und Raytracing-Technologie.
Mit speziellen Skriptsätzen können einzelne Systemkomponenten getestet werden. Mit ihrer Hilfe können Sie die Kompilierungszeit des Kernels und die Codierung von Videodateien, die Komprimierungsgeschwindigkeit von Archivierern usw. auswerten. Um die Tests auszuführen, schreiben Sie einfach den entsprechenden Befehl in die Konsole. Dieser Befehl initiiert beispielsweise eine Bewertung der CPU-Leistung:
phoronix-test-suite benchmark smallpt
Während des Tests überwacht Test Suite unabhängig den Zustand des Geräts (CPU-Temperatur und Kühlergeschwindigkeit) und schützt das System vor Überhitzung.
/ Unsplash / Jason Chen
Ein Tool zum Generieren von E / A-Last auf von Oracle entwickelten Festplattensystemen. Es hilft bei der Bewertung der Leistung und Integrität von Speichersystemen (wir haben eine
kurze Hilfe zur Berechnung der theoretischen Leistung eines Festplattensystems vorbereitet).
Die Lösung funktioniert wie folgt: Auf einem realen System wird das SWAT-Programm (Sun StorageTek Workload Analysis Tool) gestartet, das für einen bestimmten Zeitraum einen Speicherauszug mit allen Festplattenzugriffen erstellt. Der Zeitstempel, die Art der Operation, die Adresse und die Datenblockgröße werden aufgezeichnet. Als nächstes emuliert vdbench mithilfe der Dump-Datei die Last auf einem anderen System.
Die Liste der Parameter für die Verwaltung des Dienstprogramms befindet sich im offiziellen
Oracle-Dokument . Der Quellcode des Dienstprogramms befindet sich
auf der Website des Unternehmens .
Konsolendienstprogramm zur Bewertung der Dateisystemleistung. Es bestimmt die Geschwindigkeit des Lesens, Schreibens und Überschreibens von Dateien. Dutzende Programmierer waren an der Entwicklung des Tools beteiligt, aber der Ingenieur seiner ersten Version
gilt als Ingenieur William Norcott. Die Entwicklung wurde von Unternehmen wie Apple, NetApp und iXsystems unterstützt.
Um Threads zu steuern und während des Tests zu synchronisieren, verwendet das Tool den
POSIX Threads- Standard. Nach Abschluss der Arbeiten erstellt IOzone einen Bericht mit den Ergebnissen entweder im Textformat oder in Form einer Tabelle (Excel). Das Tool enthält auch das Skript gengnuplot.sh, das aus den Daten in den Tabellen ein dreidimensionales Diagramm erstellt. Beispiele für solche Grafiken finden Sie in der Dokumentation zum Instrument (
S. 11-17 ).
IOzone ist als Testprofil in der bereits erwähnten Phoronix Test Suite verfügbar.
Zusätzliche Lektüre aus unseren Blogs und sozialen Netzwerken:
Ein Fehler in Linux 5.1 führte zu Datenverlust - ein Korrektur-Patch wurde bereits veröffentlicht
Einige sagen, dass die DANE-Technologie für Browser fehlgeschlagen ist
Warum ist eine Überwachung notwendig?
Dateisicherung: So schützen Sie sich vor Datenverlust
Wie übertrage ich eine Systemfestplatte auf eine virtuelle Maschine?
Alle reden über PD-Lecks - wie der IaaS-Anbieter helfen wird
Kurzes Bildungsprogramm: Wie die elektronische Signatur angeordnet ist
Hintergrund: Funktionsweise des Gesetzes über personenbezogene Daten