Aus Linux-Magazin 03/2024

Bitparade: Benchmark-Software unter Linux

© aleksanderdn / 123RF.com

Die Leistungsfähigkeit von Computern und Hardwarekomponenten spielt im Betrieb eine wichtige Rolle. Benchmark-Anwendungen spüren Flaschenhälse auf und zeigen, wie Sie dem Rechner wieder auf die Sprünge helfen.

Benchmark-Programme dienen allgemein dazu, die Leistungsfähigkeit eines Computersystems oder von Komponenten zu testen, um fundierte Daten für einen Vergleich mit anderer Hardware zu gewinnen. Die Ergebnisse helfen oft, Kaufentscheidungen zu einzelnen Komponenten zu treffen. Dabei gilt es, darauf zu achten, dass die verwendeten Benchmark-Applikationen möglichst praxisnahe Testroutinen nutzen.

Darüber hinaus können Benchmark-Suiten auch helfen, Flaschenhälse in Computersystemen zu lokalisieren. Einige davon erlauben sogar, durch die gezielte Auslastung einzelner Komponenten thermische Problemzonen innerhalb eines Rechners zu identifizieren. Makro-Benchmarks erfüllen diese Aufgaben zuverlässig, während sich Mikro-Benchmarks speziellen Aufgaben beispielsweise in der Softwareentwicklung widmen.

Voraussetzungen

Damit ein Benchmark brauchbare Ergebnisse liefern kann, gilt es je nach zu testenden Baugruppen verschiedene Voraussetzungen zu erfüllen. So ist es bei Vergleichstests unabdingbar, die Benchmark-Suite auf einem frisch aufgesetzten Betriebssystem zu installieren, um den Einfluss von zusätzlich ins System integrierter Software zu minimieren. Auch Ressourcenfresser wie animierte Bildschirmschoner sollten Sie deaktivieren, da sie insbesondere Messergebnisse der Grafikkarte oder der CPU massiv verfälschen können. Im Hintergrund aktive Anwendungen und Prozesse sollten Sie ebenfalls möglichst abschalten, da auch sie Ressourcen fressen und somit Einfluss auf die Benchmark-Ergebnisse ausüben. Da selbst frisch aufgesetzte Betriebssysteme inzwischen automatisch zahlreiche Hintergrundprozesse aktivieren, sollten die Benchmarks möglichst über eine längere Zeit arbeiten, um den Einfluss externer Prozesse zu minimieren. Der mehrfache Durchlauf von Benchmark-Suiten trägt zu einem objektiveren Ergebnis bei.

Äußerste Vorsicht ist bei Leistungstests mit übertakteten Komponenten geboten. Das gilt speziell für Grafikkarten. Werden diese einem ausgiebigen Benchmark-Test unterzogen, können Komponenten wie die GPU selbst, aber auch dedizierter GPU-Speicher durch Überhitzung Schaden nehmen. Daher sollten Sie unbedingt darauf achten, keine übertakteten Komponenten zu nutzen. Einige Hochleistungsgrafikkarten der Hersteller ATI/AMD und Nvidia bieten in ihren auch für Linux erhältlichen Konfigurationswerkzeugen die Option, GPU-Temperaturen einzusehen und teilweise auch die Lüftersteuerung anzupassen (Abbildung 1). Gibt es für Ihre Grafikkarte solche Werkzeuge, empfiehlt sich unbedingt deren Einsatz. Beachten Sie jedoch, dass Sie dazu in der Regel auch den proprietären Grafikkartentreiber verwenden müssen, da die Applikationen mit freien Treibermodulen meist nicht harmonieren.

Abbildung 1: Die thermische Anzeige schützt vor Überhitzung und damit einhergehenden Schäden.

Abbildung 1: Die thermische Anzeige schützt vor Überhitzung und damit einhergehenden Schäden.

Damit Sie einen für Ihre Anwendungszwecke passenden Benchmark finden, sollten Sie zudem wissen, welche Basiskomponenten in Ihrem Computersystem von den am häufigsten genutzten Anwendungen beansprucht werden. Arbeiten Sie beispielsweise intensiv mit Datenbanken, beansprucht das primär den Arbeitsspeicher und die Massenspeichersysteme stärker. Die Leistung der CPU und GPU spielt in solchen Anwendungsszenarien nur eine untergeordnete Rolle. CAD-Software dagegen benötigt für das Rendering eine leistungsfähige Grafikkarte und beansprucht auch mehr Rechenleistung. Server beherbergen in aller Regel viel RAM, große Massenspeicher und besonders leistungsfähige Prozessoren, sodass für sie primär eine Benchmark-Suite infrage kommt, die eben diese Komponenten testet. Daneben ist bei Servern zusätzlich eine Leistungsprüfung der Netzwerkanbindung sinnvoll.

Benchmark vs. Stresstest

Stresstests dienen, wie der Name schon andeutet, anders als Benchmarks nicht dazu, die Geschwindigkeit einer Komponente oder eines Systems unter Last zu ermitteln. Vielmehr setzen Sie die zu testende Hardware unter Last, um die Grenzen von deren Funktionstüchtigkeit festzustellen. Sie eignen sich daher auch nicht zum Vergleich von Komponenten, sondern helfen eher dabei, Schwachstellen in selbst konfigurierten Systemen ausfindig zu machen. In der Praxis bringen einige Benchmark-Anwendungen auch Stresstestroutinen mit und lassen sich dann sowohl zu Vergleichszwecken als auch für Belastungstests einsetzen.

Unter Linux

Unter Linux sind inzwischen zahlreiche Benchmark-Suiten erhältlich, die faktisch jeden Einsatzzweck abdecken. Dabei reicht die Palette von einfachen Programmen, die in Desktop-Umgebungen integriert sind und sich daher weniger für zielgerichtete Tests eignen, sondern nur einen groben Überblick verschaffen, bis hin zu umfangreichen Werkzeugen, die selbst Referenzzwecke erfüllen können. Häufig werden auch noch detaillierte Angaben zur jeweils genutzten Hardware angezeigt. Viele der unter Linux erhältlichen Benchmark-Werkzeuge arbeiten dabei auf der Kommandozeile, sodass die Anzeige der Ergebnisse relativ unübersichtlich ausfällt. Grafische Anwendungen sind hier eindeutig im Vorteil, da sie anhand von Balken-, Kurven- oder Kreisdiagrammen einen sofortigen Überblick über die Benchmark-Ergebnisse liefern. Wir konzentrieren uns im Folgenden auf verschiedene System-Benchmarks, die die wichtigsten Hardwarekomponenten abdecken.

CPU-Benchmarks

CPU-Benchmarks spiegeln die Leistung der unterschiedlichen Prozessoren wider. Besonders bei Kaufentscheidungen kann es sinnvoll sein, die Performance zu prüfen, um beispielsweise beurteilen zu können, ob eine CPU der neuesten Generation tatsächlich so viel mehr Leistung bietet als eine der vorletzten Generation. Auch Unterschiede zwischen einzelnen Herstellern können durchaus relevant sein.

PerformanceTest

Das Programm PerformanceTest wird vom australischen Unternehmen Passmark Software Ltd. [1] entwickelt und gepflegt. Die plattformübergreifend erhältliche Anwendung steht unter einer proprietären Lizenz, für Microsoft-Betriebssysteme verlangt der Hersteller eine Lizenzgebühr. Für Linux, MacOS und mobile Plattformen können Einzelanwender die Applikation dagegen kostenfrei beziehen.

Für Linux offeriert Passmark die Software in einem rund 6 MByte großen ZIP-Archiv, das Sie nach dem Herunterladen auf dem Zielrechner entpacken. Es enthält neben dem Binary, das Sie anschließend am Prompt starten, nur noch eine Readme-Datei. Das Programm ist als Terminalanwendung ausgelegt und benötigt nach dem Aufruf Administratorrechte.

Nach dem Start zeigt PerformanceTest zwei Tabellen an, in denen nach dem Durchlauf der Prüfroutinen die entsprechenden Leistungswerte erscheinen. Die Software ermittelt die Leistung der Prozessoren und des Arbeitsspeichers anhand von insgesamt 16 Einzeltests. Die Routinen für den Test der CPU oder des RAM lassen sich mithilfe der Tasten [C]+ für den Prozessor und [M]+ für den Speicher gesondert durchlaufen. Alternativ aktivieren Sie den Test für beide Komponenten, indem Sie [A] drücken. Anschließend füllen sich die entsprechenden Tabellen mit Werten (Abbildung 2).

Abbildung 2: PerformanceTest konzentriert sich auf die wichtigsten Komponenten.

Abbildung 2: PerformanceTest konzentriert sich auf die wichtigsten Komponenten.

Die Software erkennt Mehrprozessorsysteme dabei automatisch und berücksichtigt alle physischen und logischen Kerne, die sie zusammenfasst und wie einen einzigen Prozessor behandelt. Dieses Verhalten kann allerdings die Leistungsmessung unbrauchbar machen, wenn man nur einzelne Prozessoren miteinander vergleichen möchte. Bei der Gegenüberstellung kompletter Computermodelle bildet bei Mehrprozessorsystemen die Zusammenfassung der Leistung der verbauten Prozessoren jedoch auch das gesamte verfügbare Leistungsspektrum ab.

Tests

Die angewandten Messdurchläufe beziehen sich auf praxisnahe Berechnungen, wie sie täglich bei der Arbeit anfallen. So misst PerformanceTest beispielsweise neben dem Durchsatz bei der Dateikomprimierung und Verschlüsselung von Daten auch die Anzahl von Gleitkommaoperationen und Berechnungen mit ganzen Zahlen, die der Prozessor pro Sekunde ausführen kann. Darüber hinaus ermittelt die Suite bei modernen Prozessoren mit erweitertem Befehlssatz die mögliche Zahl der SSE-Instruktionen.

Parameter

Voreingestellt führt PerformanceTest einen Durchlauf mit mittlerer Prüfdauer durch. Dabei nutzt die Software die maximal mögliche Anzahl von simultan abzuarbeitenden Threads, wobei sich diese Zahl auf alle verfügbaren physischen und logischen Kerne der CPU aufteilt.

Mithilfe von Parametern können Sie beim Start der Anwendung die Einstellungen ändern. Das Programm kennt fünf Optionen: Der Parameter »-p«, gefolgt von einer Zahl zwischen 1 und 1024, gibt die Anzahl der simultan auszuführenden Threads an. Diese Zahl sollte kleiner oder gleich der Zahl der physischen und logischen Kerne im System sein, da sich sonst die Dauer der Tests enorm verlängert. Der Parameter »-i« gibt die Zahl der Testdurchläufe an, wobei PerformanceTest bis zu 100 Durchläufe erlaubt.

Die Option »-d«, für die Sie Zahlen zwischen 1 und 4 eintragen können, legt die Testdauer fest, während Sie mit »-r« angeben, ob die Software nur die CPU (»1«), nur den Arbeitsspeicher (»2«) oder beides (»3«) testen soll. Mit der Option »-debug« gestartet, sammelt PerformanceTest während des Ablaufs der Tests diverse Informationen und sichert sie in der Datei »debug.log«.

Nach dem Aufruf der Anwendung mit modifizierten Parametern zeigt PerformanceTest diese im oberen Bereich des Terminals an. Um die Messungen zu starten, müssen Sie noch anhand der im unteren Bereich des Terminalfensters eingeblendeten Buchstaben die jeweils gewünschten Tests aktivieren.

Haben Sie mehrere Durchläufe und eine längere Testdauer eingestellt, vergeht entsprechend viel Zeit, bis die Messergebnisse erscheinen. Eine längere Testdauer gleicht jedoch durch das Betriebssystem oder einzelne Prozesse verursachte Ungenauigkeiten teilweise aus, sodass umfangreiche Testläufe meist realistischere Ergebnisse liefern.

Vergleich

Eine einfache Messung hat noch keine Aussagekraft über das tatsächliche Leistungsspektrum einer CPU im Vergleich zu anderen Prozessoren. Daher bietet PerformanceTest den Zugriff auf die Website Cpubenchmark.net, die Werte von mehr als einer Million Computersysteme unterschiedlichster Generationen vorhält (Abbildung 3). Durch einen Vergleich der einzelnen Werte stellen Sie schnell fest, ob eine ältere CPU möglicherweise leistungsstärker ist als eine neue einer niedrigeren Leistungsklasse.

Abbildung 3: Mithilfe einer Webseite, auf der Messergebnisse anderer Nutzer gesammelt werden, können Sie die Performance verschiedener Rechner vergleichen.

Abbildung 3: Mithilfe einer Webseite, auf der Messergebnisse anderer Nutzer gesammelt werden, können Sie die Performance verschiedener Rechner vergleichen.

Um die von Ihnen ermittelten Werte in die Website einzupflegen, bejahen Sie am Ende der Testdurchläufe die Frage, ob diese hochgeladen werden sollen. Bitte beachten Sie, dass dazu alle Tests durchlaufen sein müssen. Anschließend lädt die Anwendung die Daten hoch, und Sie erhalten einen Link zu der entsprechenden Webseite, die Ihre hochgeladenen Daten enthält. Dort wird auch ein Score angezeigt, der die Leistungswerte in Form einer Sterneskala bewertet (Abbildung 4).

Abbildung 4: Die von Ihnen hochgeladenen Resultate finden sich auf einer eigenen Page.

Abbildung 4: Die von Ihnen hochgeladenen Resultate finden sich auf einer eigenen Page.

Arbeitsspeicher

Auch die Daten, die PerformanceTest für den Arbeitsspeicher ermittelt, lassen sich dank ihrer Aussagekraft gut für Vergleiche nutzen. Die Software führt dabei Lese- und Schreiboperationen durch und ermittelt zudem Latenzzeiten.

Nach dem Start des Programms stoßen Sie die Speichertests an, indem Sie die Taste [M] drücken. Längere Testzeiten oder mehrere Durchläufe erhöhen die Genauigkeit, beanspruchen allerdings auch zusätzliche Zeit. PerformanceTest ermittelt zudem den freien Arbeitsspeicher, sodass Sie auf einen Blick erkennen, ob das System den Arbeitsspeicher korrekt anspricht. Besonders bei Servern, in denen meist Speicherbausteine mit einer ECC-Fehlerkorrektur stecken, können zu niedrige Werte ein Indiz für einen defekten Speicherriegel sein. Berücksichtigen Sie bitte außerdem die korrekte Anzahl der Threads. Bei der Befehlseingabe sollte deren Anzahl jener der vom Prozessor simultan zur Verfügung gestellten Prozesse entsprechen.

Damit Sie die von der Applikation ermittelten Daten richtig einordnen können, stellt der Hersteller Passmark eine Webseite mit zahlreichen Messergebnissen für verschiedene Speichergenerationen bereit. Sie können die Daten unter der URL https://www.memorybenchmark.net einsehen.

Sysbench

Das seit rund 20 Jahren entwickelte Sysbench [2] gehört zu den ältesten Benchmark-Anwendungen für Linux. Das Werkzeug findet sich in den Repositories aller gängigen Distributionen und steht auch unter verschiedenen BSD-Derivaten zur Verfügung.

Sysbench ist ein Kommandozeilenwerkzeug, bei dem Sie das Testverhalten über zahlreiche Aufrufparameter definieren. Die Suite beschränkt sich bei der Leistungsermittlung nicht auf die CPU, sondern misst darüber hinaus auch den Datentransfer des Arbeitsspeichers sowie von Massenspeichern und Datenbanken.

Aufgrund der zahlreichen Konfigurationsparameter empfiehlt es sich, vor dem Einsatz der Software zunächst mit »man sysbench« im Terminal die Manpage aufzurufen, die alle Optionen detailliert erläutert. Auf der Github-Seite des Projekts steht außerdem eine Installations- und Benutzeranleitung bereit.

CPU-Benchmark

Sysbench spezialisiert sich auf vier Bereiche: Neben der Leistungsfähigkeit der CPU, des Arbeitsspeichers und des Thread-Subsystems ermittelt es auch den I/O-Durchsatz.

Um die CPU zu testen, empfiehlt es sich, den Prozessor voll auszulasten. Dazu nutzen Sie den Parameter »–threads«, bei dem Sie die Anzahl der von der getesteten CPU maximal unterstützten Threads eingeben. Beachten Sie bitte, dass Sie bei Multiprozessorsystemen die Threads der einzelnen Prozessoren addieren müssen. Im Terminal geben Sie dann den Befehl »sysbench cpu –threads=Anzahl run« ein. Das System testet nun die CPU mit den vorgegebenen Parametern und gibt anschließend die entsprechenden Ergebnisse am Prompt aus (Abbildung 5).

Abbildung 5: Optisch weniger anspruchsvoll, dafür aber übersichtlich präsentiert Sysbench seine Messergebnisse.

Abbildung 5: Optisch weniger anspruchsvoll, dafür aber übersichtlich präsentiert Sysbench seine Messergebnisse.

Wertung

Für einen Vergleich mit anderen Systemen nutzen Sie in erster Linie den Wert aus der Zeile events per second. Je höher der hier aufgeführte Wert bei gleicher Befehlsparametrierung ausfällt, desto mehr Leistung liefert die CPU. In der Gruppe Latency finden Sie zudem die während der Befehlsausführung aufgetretenen Latenzzeiten. Sie sollten möglichst niedrig ausfallen, vor allem in den Rubriken min, avg und max. Der Durchschnittswert avg liegt idealerweise möglichst nahe am Minimalwert. Bitte beachten Sie, dass bei einer falschen Anzahl der Threads die Leistungswerte nicht aussagekräftig sind.

RAM-Benchmark

Um die Geschwindigkeit des Arbeitsspeichers zu testen, verfahren Sie ähnlich wie beim CPU-Test: Am Prompt geben Sie im einfachsten Fall den Befehl »sysbench memory run« ein. Das Programm testet nun durch Speichertransfers mit 1 KByte großen Blöcken von Zufallszahlen die Arbeitsgeschwindigkeit des Speichers und gibt sie in der Zeile Total operations in absoluten Zahlen an, darunter den Gesamtumfang der transferierten Daten in MByte (Abbildung 6). Je größer beide Werte ausfallen, desto schneller arbeitet Ihr Speichersubsystem.

Abbildung 6: Sysbench liefert auch beim Arbeitsspeicher aussagekräftige Ergebnisse.

Abbildung 6: Sysbench liefert auch beim Arbeitsspeicher aussagekräftige Ergebnisse.

Auch hier müssen Sie die Software mit der korrekten Anzahl der von der CPU bereitgestellten Threads aufrufen. Dazu verwenden Sie wie beim CPU-Test den Parameter »–threads=Anzahl«. Voreingestellt arbeitet die Software mit lediglich einem einzigen Thread, was auf Systemen mit modernen Prozessoren zu sehr niedrigen Werten beim Speichertransfer führt. Bei zu hoch angesetzter Anzahl der Threads fällt der Speicherdurchsatz dagegen kaum höher aus, während die Latenzen deutlich ansteigen.

7-Zip

7-Zip kennt man eher als Werkzeug zur Dateikompression [3]. Die Anwendung kann jedoch nicht nur Dateien archivieren und entpacken, sondern dabei auch die anfallende CPU-Leistung messen und darstellen. Damit eignet sich das Tool auch zum Vergleich der Leistungsfähigkeit von CPUs.

Nach der Installation der Applikation, die Sie in den Software-Repositories nahezu aller Distributionen finden, rufen Sie im einfachsten Fall den Benchmark mit dem Befehl »7z b -mmt1« auf. Dabei verwendet 7-Zip allerdings nur einen einzigen Thread, sodass die Ergebnisse für Multiprozessorsysteme wenig aussagekräftig ausfallen. Es empfiehlt sich daher, auch bei dieser Messmethode alle simultan verfügbaren Threads zu nutzen. Dazu geben Sie am Prompt einfach den Befehl »7z b« ein. Die Software ermittelt dann automatisch die Zahl der Threads sowie die Größe des Arbeitsspeichers und führt die Messungen anschließend komplett durch. Die Resultate stellt das Programm anschließend übersichtlich nach Kompression und Dekompression getrennt im Terminal dar (Abbildung 7).

Abbildung 7: 7-Zip kann die Leistung einer CPU beim Packen und Entpacken von Archiven messen.

Abbildung 7: 7-Zip kann die Leistung einer CPU beim Packen und Entpacken von Archiven messen.

Dabei erscheinen die MIPS-Werte weniger aussagekräftig als die absoluten Werte in Kibibyte pro Sekunde, die jeweils in der ersten Tabellenspalte erscheinen. Sie können sie zum direkten Vergleich mit anderen Systemen verwenden, auf denen ebenfalls 7-Zip als Benchmark genutzt wurde. Falls Sie bei der Angabe der Arbeitsspeichergröße einen anderen Wert vorfinden als das real in Ihrem System verbaute RAM, so könnte das ein Hinweis auf einen Hardwaredefekt sein. Es empfiehlt sich in solchen Fällen, den Arbeitsspeicher genauer zu überprüfen.

Vergleich

Auch für 7-Zip gibt es im Internet eine Vergleichsseite mit Testergebnissen für die Effizienz verschiedenster CPUs. Dabei sind Prozessoren älterer Generationen und aller Leistungsstufen vertreten. Sie finden die entsprechende Aufstellung unter https://openbenchmarking.org/test/pts/compress-7zip.

Massenspeicher

Häufig erweisen sich ältere Massenspeicher als Flaschenhals, der die gesamte Systemleistung beeinträchtigt. Insbesondere Festplatten herkömmlicher Bauart, aber auch SSDs mit einem SATA-Interface, können bauartbedingt nicht die Datendurchsätze erzielen, die moderne Mehrkernprozessoren spielend verarbeiten könnten. Daher sollten Sie auch Massenspeicher-Benchmarks vornehmen, wenn Sie den Eindruck haben, dass Ihr Computer mehr Leistung liefern könnte als gegeben. Unter Linux gibt es zu diesem Zweck sowohl grafische Programme als auch Tools für die Kommandozeile.

Hier gilt es zu beachten, dass die gängigen, bereits in das freie Betriebssystem integrierten Anwendungen wie Dd oder Hdparm von Haus aus die sequenzielle Schreib- und Leseleistung ermitteln. In der Praxis folgen Massenspeicher jedoch meist einem Direktzugriffsmuster. Das Kommandozeilenwerkzeug Fio berücksichtigt diese in der Praxis relevanteren Schreib- und Lesevorgänge wesentlich besser.

Gnome Disks

Gnome Disks [4], ein grafisches Frontend zu Udisks, bietet neben dem Benchmarking einige weitere Funktionen zur Verwaltung und Pflege von Massenspeichern. Das Werkzeug lagert in den Repositories so gut wie aller Linux-Distributionen. Sie rufen es nach der Installation bequem aus der Menüstruktur Ihrer Arbeitsumgebung heraus auf und gelangen in ein Verwaltungsfenster für die einzelnen im Computersystem vorhandenen Laufwerke.

Mit einem Klick auf die drei vertikal angeordneten Punkte oben rechts im Programmfenster gelangen Sie in ein Menü, in dem Sie die Option Leistungstest für Laufwerk wählen. Es öffnet sich ein neues Fenster, in dem oben eine Grafik die Zugriffsgeschwindigkeiten und Datenübertragungsraten visualisiert, während darunter die mittlere Schreib- und Lesegeschwindigkeit sowie die mittlere Zugriffszeit in absoluten Zahlen erscheinen. Darüber hinaus finden Sie dort Angaben zur Messwertgröße und zum getesteten Speichermedium (Abbildung 8).

Abbildung 8: Gnome Disks zeigt auf einen Blick die Leistung eines Massenspeichers an.

Abbildung 8: Gnome Disks zeigt auf einen Blick die Leistung eines Massenspeichers an.

Nach einem Klick auf die Schaltfläche Leistungstest starten unten links im Fenster stellen Sie zunächst in einem kleinen Dialog die Anzahl der Messdurchläufe sowohl für die Ermittlung der Datentransferraten als auch der Zugriffszeit ein. Danach klicken Sie unten rechts erneut auf die Schaltfläche Leistungstest starten. Nach einer anschließenden Authentifizierung als Administrator beginnen die Tests. Die Ergebnisse finden sich daraufhin in Form einer blauen Linie für die Datenübertragungsrate und grüner Punkte sowie Linien für die Zugriffszeiten im Diagramm des Fensters. Direkt darunter erscheinen die Leistungswerte. Diese Daten können Sie anschließend mit Werten anderer Speichermedien vergleichen.

Allerdings blendet Gnome Disks weder Angaben zu den Schnittstellen der getesteten Massenspeicher ein, noch zeigt es spezifische Einstellungen dazu, wie beispielsweise zu RAID-Verbünden. Daher erzielen in einem Array geschaltete SATA-SSDs eine deutlich höhere Datentransferrate und niedrigere Zugriffszeiten als eine einzelne SATA-SSD. Dass es sich um ein RAID handelt, wird nur ersichtlich, wenn der RAID-Controller über eine entsprechende Firmware verfügt, die Gnome Disks auslesen kann. Ein weiteres Manko besteht in der fehlenden Speichermöglichkeit der Testergebnisse, sodass sich das Werkzeug nur bedingt für Dokumentationszwecke eignet.

KDiskMark

Das zum KDE-Plasma-Desktop gehörende KDiskMark [5] setzt auf den Flexible I/O Tester Fio auf, der auf der Kommandozeile zum Messen von Input/Output-Transaktionen dient. Nahezu alle Distributionen führen das Programm in ihren Repositories. Darüber hinaus finden Sie DEB- und RPM-Pakete der jeweils neuesten Version auf der Github-Seite des Projekts. Zusätzlich gibt es dort ein Appimage-Paket, das die Verwendung der Applikation auch in Distributionen mit anderen Paketverwaltungen gestattet.

Oberflächliches

Die Software bietet eine eingängige Oberfläche, die neben einer konventionellen Menüleiste links eine Schalterleiste und oben eine Einstellungsleiste aufweist. Die prägenden Elemente sind jedoch acht in zwei Spalten angeordnete Balkenanzeigen. Sie visualisieren nach einem Testlauf die erzielten Messergebnisse, wobei sich die Spalten jeweils auf Lese- und Schreibvorgänge beziehen und die Messergebnisse in MByte/s anzeigen (Abbildung 9).

Abbildung 9: Bei KDiskMark erkennen Sie auf einen Blick, wie schnell Ihre Massenspeicher sind.

Abbildung 9: Bei KDiskMark erkennen Sie auf einen Blick, wie schnell Ihre Massenspeicher sind.

Bewegen Sie den Mauszeiger über eine der links angeordneten Schaltflächen, erscheint ein Flyout, das die jeweilige Messmethode erläutert. KDiskMark liest und schreibt Daten auf den aktivierten Massenspeicher jeweils sequenziell und zufällig, und zwar mit jeweils unterschiedlichen Parametern. Bewegen Sie den Mauszeiger über die Balkengrafiken, stellt die Anwendung die Resultate in mehreren unterschiedlichen Maßeinheiten dar: So sehen Sie die Schreib- und Lesewerte statt in MByte/s auch in GByte/s und IOPS, zudem zeigt KDiskMark die Zugriffszeiten an.

In der horizontalen Einstellungsleiste legen Sie die Parameter für die Testdurchläufe fest.

Einstellungssache

Die Menüleiste gestattet dank des großen Funktionsumfangs des Backends Fio eine weitgehende Konfiguration der einzelnen Messparameter. So können Sie für die Testdurchläufe jeweils die Blockgrößen, Warteschlangen und Threads gesondert definieren. Dazu nutzen Sie im Menü Einstellungen den Eintrag Warteschlangen und Threads. In einem neuen Dialog modifizieren Sie danach anhand verschiedener Profile die gewünschten Optionen. Dort können Sie zudem die Zeitintervalle für die Messungen ändern.

Für Direktvergleiche unterschiedlicher Massenspeicher müssen die Messparameter identisch ausfallen. Für NVMe-SSDs empfiehlt sich die Modifikation der Parameter aufgrund der im Vergleich zu herkömmlichen Festplatten und SATA-SSDs erheblich gesteigerten Leistung. KDiskMark nimmt passende Änderungen automatisch vor, wenn Sie entweder im Dialog Einstellungen | Warteschlangen und Threads unten rechts auf NVME SSD klicken oder im Menü Einstellungen diese Option wählen.

Um eine Verfälschung der Resultate zu vermeiden, sollten Sie zudem im Menü Einstellungen ein Häkchen vor der Option Den Pagecache leeren setzen. Das eliminiert den Einfluss von Cache-Speichern auf die Messungen.

Profile

Im Menü Profile können Sie zusätzlich auf bestimmte, in Profilen zusammengefasste Einstellungen zurückgreifen, die jeweils eigene Anwendungsszenarien abbilden. Dabei stehen die Profile Standard, Spitzenleistung und Reelle Leistung sowie ein Demo-Profil zur Auswahl. Die einzelnen Profile umfassen nicht nur verschiedene Schreib- und Lesesequenzen, sondern sehen auch eine unterschiedliche Gewichtung der Schreib- und Lesevorgänge vor.

Zusätzlich können Sie im Hauptfenster noch eine Mix-Anzeige einblenden lassen, die einen Durchschnittswert der einzelnen Testdurchläufe liefert. In der horizontalen Einstellungsleiste finden Sie dann ein ergänzendes Auswahlfeld, in dem Sie den Mix aus Schreib- und Lesevorgängen in Prozent festlegen. Unten im Profil-Menü ändern Sie bei Bedarf den Testmodus, sodass KDiskMark nur die Lese- oder nur die Schreibgeschwindigkeit ermittelt.

Haben Sie alle Parameter eingestellt, klicken Sie oben links im Hauptfenster auf die Schaltfläche Alles. Nach einer Authentifizierung mit administrativen Rechten führt die Applikation die gewünschten Tests aus.

Dokumentation

KDiskMark erlaubt, die Ergebnisse zu sichern, um die Resultate dokumentieren und für mehrere Speichermedien vergleichen zu können. Im Menü Datei des Hauptfensters öffnen Sie dazu durch Aufruf der Option Speichern einen Dateidialog, mit dessen Hilfe Sie die Messergebnisse als Textdatei sichern. Die gespeicherte Datei lässt sich anschließend in jedem beliebigen Texteditor einsehen (Abbildung 10).

Abbildung 10: KDiskMark erlaubt das Sichern der Testergebnisse in einfachen Textdateien.

Abbildung 10: KDiskMark erlaubt das Sichern der Testergebnisse in einfachen Textdateien.

GPU-Benchmarks

GPU-Benchmarks testen die Grafikleistung des Systems. Für Linux gibt es unterschiedliche Pakete, die sich teilweise auf dedizierte Grafikkarten spezialisieren und teils auch mit integrierten Grafikkarten, vornehmlich von Intel, nutzen lassen. Applikationen, die einer freien Lizenz unterliegen, sind in aller Regel für den Einsatz auf der Kommandozeile gedacht. Sie testen stets die OpenGL-API, die unter Linux für das Rendering von zwei- und dreidimensionalen Grafiken zuständig ist. Die Direct3D-Schnittstellen für Grafikanwendungen werden nicht unterstützt.

GL Mark 2

GL Mark 2 testet die Performance von Grafikkarten mit zahlreichen verschiedenen Parametern [6]. Dabei kommt es sowohl mit dem klassischen X11-Server zurecht als auch mit dem moderneren Wayland.

Die im Paketfundus fast aller Distributionen vorhandene Software installieren Sie bequem über die entsprechende Paketverwaltung. Danach rufen Sie die Anwendung durch Eingabe des Befehls »glmark2« im Terminal auf. Daraufhin öffnet sich ein neues Fenster zur Visualisierung der Testroutinen. Es hat voreingestellt eine Größe von 800 x 600 Pixeln, die Größe lässt sich aber bei Bedarf modifizieren. Jeder Einzeltest läuft zehn Sekunden lang, die Messergebnisse erscheinen jeweils im Terminal. Nach Beendigung der Testroutine gibt das Programm außerdem einen Gesamt-Score im Terminal aus (Abbildung 11).

Abbildung 11: Bei GL Mark 2 können Sie das Rendern von Bildern in einem zweiten Fenster nachvollziehen.

Abbildung 11: Bei GL Mark 2 können Sie das Rendern von Bildern in einem zweiten Fenster nachvollziehen.

Die Software kennt zahlreiche Parameter, mit deren Hilfe Sie die Tests selektiv und gegebenenfalls zeitlich begrenzt ausführen. Um sich einen Überblick dazu zu verschaffen, geben Sie am Prompt den Befehl »glmark2 –help« ein.

Daten speichern

Um Leistungsdaten für einen Vergleich zwischen mehreren Grafikkarten parat zu haben oder um Dokumentationszwecken Genüge zu leisten, können Sie die Messergebnisse in einer Datei abspeichern (Abbildung 12). Dabei unterstützt die Routine die Formate CSV und XML. Zum Generieren der Ergebnisdatei geben Sie im einfachsten Fall bei vorgegebenen Messparametern den Befehl »glmark2 –results-file Datei« ein. Achten Sie dabei darauf, die gewünschte Dateinamenserweiterung mit anzugeben, da die Routine daraus das gewünschte Dateiformat ermittelt. Außerdem ist es notwendig, den kompletten Dateipfad anzugeben.

Abbildung 12: Ungewöhnlich detailliert fällt der Report von GL Mark 2 aus.

Abbildung 12: Ungewöhnlich detailliert fällt der Report von GL Mark 2 aus.

Vergleich

Die in GL Mark 2 erzielten Resultate für unterschiedlichste Grafikkarten rufen Sie bei Interesse unter https://openbenchmarking.org/test/pts/glmark2 ab. Die Seite unterteilt die Messungen jeweils nach eingestellter Auflösung. So können Sie auch bei unterschiedlichen Auflösungen aussagekräftige Werte zum Vergleich heranziehen.

Unigine-Benchmarks

Der Hersteller Unigine aus Clemency in Luxemburg gehört zu den führenden Herstellern von Benchmark-Lösungen [7]. Die proprietären GPU-Test von Unigine liegen für Linux als distributionsübergreifend installierbare Pakete in mehreren Varianten vor. Kostenfrei nutzbare aktuelle Basic-Pakete haben einen Umfang zwischen 270 MByte und 1,3 GByte. Die ebenfalls noch erhältlichen Legacy-Varianten für ältere Grafikkarten schlagen mit unter 100 MByte zu Buche. Für professionelle Einsatzzwecke von Software- und Hardwareentwicklern gibt es zudem die kostenpflichtigen Advanced-, Professional- und Enterprise-Varianten, die im Vergleich zur Basic-Version zusätzliche Funktionen beinhalten [8].

Installation

Nach dem Herunterladen der Archivdatei geben Sie dieser zunächst mit »chmod +x Archiv« Ausführungsrechte und rufen sie danach im Terminal auf. Das Archiv entpackt sich daraufhin in ein automatisch angelegtes Unterverzeichnis im aktuellen Ordner. Nach einem Wechsel dorthin rufen das Programm mit dem Befehl auf, der nach dem Entpacken angezeigt wurde.

Im Anschluss öffnet sich ein Konfigurationsfenster, in dem Sie Parameter wie die Auflösung, die Qualität und auch die verwendete Grafik-API einstellen. Links im Dialog der neuen Benchmarks können Sie zudem anhand verschiedener Profile angeben, ob Sie einen Benchmark oder einen Stresstest ausführen wollen. Das Eingangsfenster bildet im unteren Bereich anhand einer Balkengrafik den je nach Einstellung unterschiedlichen Speicherbedarf ab, sodass Sie sofort erkennen, ob Ihre Grafikkarte über genügend Speicher verfügt, um die Tests ausführen zu können.

Im Feld Preset wählen Sie gegebenenfalls zudem in jeder Kategorie ein Profil aus. Der Unigine-Benchmark gestattet für hochmoderne Leistungsboliden Einstellungen mit bis zu 8K-Optimized-Auflösungen (Abbildung 13). Falls Sie Benchmarks einstellen, deren Umfang den Grafikspeicher der GPU deutlich übersteigt, erscheint nach einem Klick auf den Run-Button unten rechts im Fenster ein entsprechender Warnhinweis. Sie können anschließend entscheiden, ob Sie den Benchmark trotzdem starten möchten oder lieber die Konfiguration modifizieren.

Abbildung 13: Der Konfigurationsdialog des Unigine-Benchmarks ist übersichtlich gestaltet.

Abbildung 13: Der Konfigurationsdialog des Unigine-Benchmarks ist übersichtlich gestaltet.

Nach dem Start der Benchmarks blendet die Testroutine das jeweilige Szenario ein und führt die Messungen aus. Dabei zeigt das Programm oben rechts im Testbild die Bezeichnung der aktuell getesteten Grafikkarte, die Frame-Rate, die Taktfrequenzen von GPU und Speicher sowie die Temperatur des Grafikprozessors an (Abbildung 14).

Abbildung 14: Die Benchmarks von Unigine nutzen sehr aufwendig gestaltete Grafiken.

Abbildung 14: Die Benchmarks von Unigine nutzen sehr aufwendig gestaltete Grafiken.

Bei den Legacy-Benchmarks steht nur eine geringeren Anzahl vorgefertigter Profile bereit, 4K- oder 8K-Profile fehlen. Die Konfigurationsdialoge fallen ansonsten jedoch recht ähnlich aus.

Bestenliste

Ein sogenanntes Leaderboard auf der Unigine-Webseite fasst die Leistungen aktueller Systemkonfigurationen zusammen und bietet Vergleichsmöglichkeiten zu anderen Systemen. Zu dieser Liste können alle Kunden mit eigenem Unigine-Konto beitragen. In die Bestenliste gelangen nur solche Daten, die mithilfe eines der vorgefertigten Profile des aktuellen Superposition-Benchmarks ermittelt wurden. Aufgrund der Vielzahl der möglichen Einstelloptionen und der damit einhergehenden geringen Aussagekraft bleiben eigene Profile hier außen vor.

Fazit

Mit Benchmark-Programmen lassen sich die Leistungswerte von Computersystemen oder einzelnen Komponenten schnell bewerten. Viele der für Linux verfügbaren Programme laufen zwar auf der Kommandozeile, bieten aber dennoch Speichermöglichkeiten für die Messergebnisse und gestatten damit einen Vergleich mit Testergebnissen anderer Systeme oder Komponenten. Grafik-Benchmarks bieten zudem etwas fürs Auge und können meist wie die CPU- und RAM-Benchmarks Vergleichstabellen im Internet vorweisen. Das ermöglicht einen direkten Abgleich der Resultate mit denen anderer Systeme. Als Anwender haben Sie unter dem freien Betriebssystem wie üblich die Qual der Wahl, finden andererseits aber mit Sicherheit auch ein passendes Programm für die angepeilte Leistungsmessung. (jlu)

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDFUmfang: 10 HeftseitenPreis €0,99
(inkl. 19% MwSt.)
LINUX-MAGAZIN KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS Readly Logo
E-Mail Benachrichtigung
Benachrichtige mich zu:
0 Kommentare
Älteste
Neuste Beste Bewertung
Nach oben