Immer wieder gesucht werden Programme, die die Leistungsfähigkeit einzelner Komponenten oder die Gesamtleistung eines Rechners messen: Benchmarks. Dementsprechend werden zwei Kategorien unterschieden: Mikro-Benchmarks und Makro-Benchmarks. Während erstere für sehr spezielle Aufgabenstellungen genutzt werden, orientieren sich Makro-Benchmarks eher am realen Verhalten eines Systems (auch wenn Testergebnisse u.U. nach einzelnen Komponenten gegliedert sind).
Diese Seite soll eine Übersicht der unter Linux verfügbaren Programme liefern. Im Abschnitt Links finden sich weitere Quellen.
Eigentlich eine Übersicht der verbauten Hardware-Komponenten, enthält das Programm auch ein paar Leistungstests für den Prozessor. Unter Lubuntu ist es bereits vorinstalliert, ansonsten kann es aus den offiziellen Paketquellen installiert werden. Siehe HardInfo
Linux Test Project |
Dies ist vermutlich der Benchmark, der diejenigen interessieren wird, die nicht in der Hard- oder Software-Entwicklung tätig sind, sondern ihren Rechner ausschließlich mit denen anderer vergleichen möchten. Die Test Suite kann ebenfalls direkt aus den offiziellen Paketquellen installiert werden. Siehe Phoronix Test Suite.
Xfbsuite ist eine Zusammenstellung folgender Kommandozeilen-Programmen:
nbench (CPU)
stream (RAM)
cachebench (L1/L2 CPU-Cache)
Perl HDD Benchmark (Festplatte)
bonnie++ (Dateisystem)
X11perf (X11 2D-Performance)
und dient gleichzeitig als Frontend. Die jeweiligen Einzelprogramme sind bereits enthalten.
Nachfolgend eine Übersicht spezieller Benchmarks, die sich meistens nur auf einen bestimmten Aspekt beziehen. Die Ausgabe erfolgt in der Regel auf der Kommandozeile, da fast alle der hier genannten Programme auf eine grafische Oberfläche verzichten. Unter System wurden Benchmarks einsortiert, die die Prozessor-Leistung und/oder die Performance des Betriebssystems messen.
Mikro-Benchmarks | ||||||
Name | System | Dateisystem | Netzwerk | Ubuntu-Paket | Projektseite | Anmerkung |
bonnie++ | Nein | Ja | Nein | bonnie (universe) | bonnie++ | für Massenspeicher |
cpuburn | Ja | Nein | Nein | cpuburn (universe) | cpuburn | Prozessor-Dauertest |
dbench | Nein | Nein | Ja | dbench (universe) | DBENCH | Dateioperationen im Samba-Netzwerk |
iozone | Nein | Ja | Nein | iozone3 (universe) | IOzone Filesystem Benchmark | |
iperf | Nein | Nein | Ja | iperf (universe) | iperf | Geschwindigkeit zwischen zwei Rechnern. Alternative: nttcp |
lbench | Ja | Nein | Nein | (Fremdpaket) | Lbench | Einfacher Multithread-Benchmark mit GUI |
lmbench | Ja | Ja | Ja | lmbench (multiverse) | LMbench | |
namebench | Nein | Nein | Ja | namebench (universe) | namebench | DNS Benchmark |
nbench | Ja | Nein | Nein | - | nbench | |
netperf | Nein | Nein | Ja | netperf (multiverse) | Netperf | TCP und UDP via BSD Sockets (IPv4 und IPv6) |
nttcp | Nein | Nein | Ja | nttcp (multiverse) | ttcp/nttcp/nuttcp | siehe auch iperf |
pipebench | Ja | Nein | Nein | pipebench (universe) | pipebench | Geschwindigkeitstest für stdin/stdout |
renderbench | Ja | Nein | Nein | render-bench (universe) | - | Kombinationstest für Prozessor und Grafikkarte |
Siege | Nein | Nein | Ja | siege | Siege | Leistungs- und Regressionstest für HTTP/HTTPS |
stress | Ja | Ja | Nein | stress (universe) | stress | Lastgenerator für die Kommandozeile |
sysbench | Ja | Ja | Ja | sysbench (universe) | sysbench | faktisch ein Datenbank-Benchmark für MySQL |
sysstat | Ja | Ja | Ja | sysstat (universe) | Sysstat | Umfangreiche Test- und Monitoring-Suite |
tiobench | Nein | Ja | Nein | tiobench (universe) | tiobench | fully-threaded I/O Benchmark |
vmstat | Ja | Ja | Nein | procps | procps | erste Analyse von Engpässen |
Um ein System auf die Schnelle unter Last zu setzen (konkret den Prozessor), kann man einfach folgenden Befehl nutzen:
openssl speed
Der Test wird nach Durchlauf automatisch beendet, kann ansonsten aber jederzeit mit Strg + C abgebrochen werden.
Da bei Mehrkern-Prozessoren nur eine CPU voll ausgelastet wird, muss hier ein etwas anderer Weg gegangen werden, um alle Prozessoren eines Mehrkernsystem auszulasten bzw. diesen Test vorzeitig beenden zu können. Hier bietet sich der Einsatz von taskset an, mit dessen Hilfe ein Prozess gezielt einer CPU zugewiesen werden kann.
Die folgenden Befehle starten den Openssl-Test für eine Doppelkern-CPU:
sudo taskset -c 1 openssl speed & sudo taskset -c 2 openssl speed &
Über die beiden PIDs, die beim Start der Prozesse zurück gegeben werden, können bei Prozesse mit kill wieder gestoppt werden.
Um das Verhalten des Systems während des Testlaufs von opensl zu beobachten, öffnet man sich zwei weitere Terminalfenster und verwendet dort folgende Befehle (siehe watch):
Temperaturüberwachung:
watch -n 2 acpi -V
Prozessortakt:
watch -n 5 cpufreq-info
Da die Pakete acpi und cpufrequtils nicht vorinstalliert sind, müssen diese nachinstalliert werden:
acpi (universe)
cpufrequtils (universe)
mit apturl
Paketliste zum Kopieren:
sudo apt-get install acpi cpufrequtils
sudo aptitude install acpi cpufrequtils
Um es nochmal in aller Deutlichkeit zu erwähnen: GLXgears ist kein Benchmark! Warum das so ist, siehe 3D-Beschleunigung testen.
Linux Benchmark Suite - Übersicht diverser Benchmarks
stress-ng - Kommandozeilenwerkzeug
stresslinux - eigene Distribution
Stress Test - Arch Wiki
weitere Prozessor-Tests:
CPU Burn-in - plattformübergreifendes Testprogramm
Festplatten-Geschwindigkeitstest Übersichtsartikel
Diese Revision wurde am 17. Juli 2016 11:33 von aasche erstellt.