GNU/Linux >> LINUX-Kenntnisse >  >> Linux

UnixBench – Eine Benchmark-Suite für Unix-ähnliche Systeme

Vor einiger Zeit haben wir Phoronix überprüft , eine Open-Source-Test- und Benchmarking-Plattform. In diesem Leitfaden sehen wir noch eine weitere Benchmarking-Suite namens UnixBench . Es ist die ursprüngliche BYTE UNIX-Benchmark-Suite, die im Laufe der Jahre von vielen Menschen aktualisiert und überarbeitet wurde. Der Hauptzweck dieses Tools besteht darin, einen grundlegenden Indikator für die Leistung eines Unix-ähnlichen Betriebssystems bereitzustellen. UnixBench kann verwendet werden, um die Leistung Ihres Systems beim Ausführen einer einzelnen oder mehrerer Aufgaben zu bewerten. Bitte beachten Sie, dass dies ein System-Benchmarking-Tool ist, nicht nur ein CPU-, RAM- oder Festplatten-Benchmark-Tool. Die Ergebnisse hängen nicht nur von Ihrer Hardware ab, sondern auch von Ihrem Betriebssystem, Ihren Bibliotheken und sogar Ihrem Compiler.

Unixbench führt die folgenden Benchmark-Tests auf Ihrem System durch.

  • Drystone - Wird verwendet, um die Leistung von Computern zu messen und zu vergleichen.
  • Schleifstein – Wird verwendet, um die Geschwindigkeit und Effizienz von Gleitkommaoperationen zu messen.
  • Durchsatz ausführen – Wird verwendet, um die Anzahl der Execl-Aufrufe zu messen, die pro Sekunde ausgeführt werden können.
  • Datei kopieren - Wird verwendet, um die Rate zu messen, mit der Daten von einer Datei in eine andere übertragen werden können.
  • Pipe-Durchsatz - wie oft (pro Sekunde) ein Prozess 512 Bytes in eine Pipe schreiben und zurücklesen kann.
  • Pipe-basierte Kontextumschaltung – Wird verwendet, um zu messen, wie oft zwei Prozesse eine steigende Ganzzahl durch eine Pipe austauschen können.
  • Prozesserstellung - Wird verwendet, um zu messen, wie oft ein Prozess ein Kind forken und ernten kann, das sofort beendet wird.
  • Shell-Skripte - Wird verwendet, um zu messen, wie oft ein Prozess pro Minute starten und einen Satz von acht gleichzeitigen Kopien eines Shell-Skripts ernten kann, wobei das Shell-Skript eine Reihe von Transformationen auf eine Datendatei anwendet.
  • Overhead für Systemanrufe – Wird verwendet, um die Kosten für das Betreten und Verlassen des Betriebssystemkerns zu schätzen.
  • Grafische Tests - Wird verwendet, um eine Vorstellung von der 2D- und 3D-Grafikleistung des Systems zu vermitteln.
Herunterladen - Kostenloses EBook:"Vim Cheat Sheet""

Installieren und Verwenden von Unixbench unter Linux

UnixBench ist in AUR verfügbar, sodass Sie es unter Arch Linux und seinen Derivaten wie Manjaro Linux, Antergos mit AUR-Helfern installieren können.

Mit Yay :

$ yay -S unixbench

Bei anderen Linux-Distributionen müssen Sie UnixBench wie unten gezeigt manuell kompilieren und installieren.

Unter CentOS, RHEL, Fedora:

$ sudo yum -y install gcc gcc-c++ make libXext-devel perl perl-Time-HiRes git
$ sudo yum -y groupinstall "Development Tools"
$ sudo yum -y install libX11-devel mesa-libGL-devel perl-Time-HiRes

Unter Debian, Ubuntu, Linux Mint:

$ sudo apt-get install libx11-dev libgl1-mesa-dev libxext-dev perl perl-modules make git

Nachdem Sie die erforderlichen Voraussetzungen installiert haben, git clonen Sie das UnixBench-Repository mit dem Befehl:

$ git clone https://github.com/kdlucas/byte-unixbench.git

Wechseln Sie in das unixbench-Verzeichnis:

$ cd byte-unixbench/UnixBench/

Führen Sie dann den folgenden Befehl aus, um mit dem Benchmarking Ihres Systems zu beginnen.

$ ./Run

Wenn Sie UnixBench von AUR auf Arch Linux installiert haben, führen Sie den folgenden Befehl aus, um es zu starten.

$ ubench

Beispielausgabe wäre:

Version 5.1.3 Based on the Byte Magazine Unix Benchmark

Multi-CPU version Version 5 revisions by Ian Smith,
 Sunnyvale, CA, USA
 January 13, 2011 johantheghost at yahoo period com

1 x Dhrystone 2 using register variables 1 2 3 4 5 6 7 8 9 10

1 x Double-Precision Whetstone 1 2 3 4 5 6 7 8 9 10

1 x Execl Throughput 1 2 3

1 x File Copy 1024 bufsize 2000 maxblocks 1 2 3

1 x File Copy 256 bufsize 500 maxblocks 1 2 3

1 x File Copy 4096 bufsize 8000 maxblocks 1 2 3

1 x Pipe Throughput 1 2 3 4 5 6 7 8 9 10

1 x Pipe-based Context Switching 1 2 3 4 5 6 7 8 9 10

1 x Process Creation 1 2 3

1 x System Call Overhead 1 2 3 4 5 6 7 8 9 10

1 x Shell Scripts (1 concurrent) 1 2 3

1 x Shell Scripts (8 concurrent) 1 2 3

4 x Dhrystone 2 using register variables 1 2 3 4 5 6 7 8 9 10

4 x Double-Precision Whetstone 1 2 3 4 5 6 7 8 9 10

4 x Execl Throughput 1 2 3

4 x File Copy 1024 bufsize 2000 maxblocks 1 2 3

4 x File Copy 256 bufsize 500 maxblocks 1 2 3

4 x File Copy 4096 bufsize 8000 maxblocks 1 2 3

4 x Pipe Throughput 1 2 3 4 5 6 7 8 9 10

4 x Pipe-based Context Switching 1 2 3 4 5 6 7 8 9 10

4 x Process Creation 1 2 3

4 x System Call Overhead 1 2 3 4 5 6 7 8 9 10

4 x Shell Scripts (1 concurrent) 1 2 3

4 x Shell Scripts (8 concurrent) 1 2 3

========================================================================
 BYTE UNIX Benchmarks (Version 5.1.3)

System: sk: GNU/Linux
 OS: GNU/Linux -- 4.10.10-1-ARCH -- #1 SMP PREEMPT Wed Apr 12 18:50:28 CEST 2017
 Machine: x86_64 (unknown)
 Language: en_US.utf8 (charmap="UTF-8", collate="UTF-8")
 CPU 0: Intel(R) Core(TM) i3-2350M CPU @ 2.30GHz (4591.9 bogomips)
 Hyper-Threading, x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET, Intel virtualization
 CPU 1: Intel(R) Core(TM) i3-2350M CPU @ 2.30GHz (4592.1 bogomips)
 Hyper-Threading, x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET, Intel virtualization
 CPU 2: Intel(R) Core(TM) i3-2350M CPU @ 2.30GHz (4593.8 bogomips)
 Hyper-Threading, x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET, Intel virtualization
 CPU 3: Intel(R) Core(TM) i3-2350M CPU @ 2.30GHz (4592.2 bogomips)
 Hyper-Threading, x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET, Intel virtualization
 13:09:04 up 1:56, 1 user, load average: 0.55, 0.37, 0.42; runlevel unknown

------------------------------------------------------------------------
Benchmark Run: Wed Apr 19 2017 13:09:04 - 13:38:10
4 CPUs in system; running 1 parallel copy of tests

Dhrystone 2 using register variables 19547861.3 lps (10.0 s, 7 samples)
Double-Precision Whetstone 2321.8 MWIPS (13.9 s, 7 samples)
Execl Throughput 2982.7 lps (29.5 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks 493713.2 KBps (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks 150353.3 KBps (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks 760514.6 KBps (30.1 s, 2 samples)
Pipe Throughput 1128068.6 lps (10.0 s, 7 samples)
Pipe-based Context Switching 97761.1 lps (10.0 s, 7 samples)
Process Creation 4560.7 lps (30.0 s, 2 samples)
Shell Scripts (1 concurrent) 1802.4 lpm (60.0 s, 2 samples)
Shell Scripts (8 concurrent) 476.7 lpm (60.1 s, 2 samples)
System Call Overhead 1752928.0 lps (10.0 s, 7 samples)

System Benchmarks Index Values BASELINE RESULT INDEX
Dhrystone 2 using register variables 116700.0 19547861.3 1675.1
Double-Precision Whetstone 55.0 2321.8 422.2
Execl Throughput 43.0 2982.7 693.6
File Copy 1024 bufsize 2000 maxblocks 3960.0 493713.2 1246.8
File Copy 256 bufsize 500 maxblocks 1655.0 150353.3 908.5
File Copy 4096 bufsize 8000 maxblocks 5800.0 760514.6 1311.2
Pipe Throughput 12440.0 1128068.6 906.8
Pipe-based Context Switching 4000.0 97761.1 244.4
Process Creation 126.0 4560.7 362.0
Shell Scripts (1 concurrent) 42.4 1802.4 425.1
Shell Scripts (8 concurrent) 6.0 476.7 794.5
System Call Overhead 15000.0 1752928.0 1168.6
 ========
System Benchmarks Index Score 730.4

------------------------------------------------------------------------
Benchmark Run: Wed Apr 19 2017 13:38:10 - 14:07:31
4 CPUs in system; running 4 parallel copies of tests

Dhrystone 2 using register variables 27193072.8 lps (10.0 s, 7 samples)
Double-Precision Whetstone 4985.4 MWIPS (16.4 s, 7 samples)
Execl Throughput 4453.8 lps (29.8 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks 340833.2 KBps (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks 74310.1 KBps (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks 886922.2 KBps (30.0 s, 2 samples)
Pipe Throughput 1467621.9 lps (10.0 s, 7 samples)
Pipe-based Context Switching 324277.3 lps (10.0 s, 7 samples)
Process Creation 10722.5 lps (30.0 s, 2 samples)
Shell Scripts (1 concurrent) 2893.2 lpm (60.1 s, 2 samples)
Shell Scripts (8 concurrent) 400.8 lpm (60.2 s, 2 samples)
System Call Overhead 2750243.4 lps (10.0 s, 7 samples)

System Benchmarks Index Values BASELINE RESULT INDEX
Dhrystone 2 using register variables 116700.0 27193072.8 2330.2
Double-Precision Whetstone 55.0 4985.4 906.4
Execl Throughput 43.0 4453.8 1035.8
File Copy 1024 bufsize 2000 maxblocks 3960.0 340833.2 860.7
File Copy 256 bufsize 500 maxblocks 1655.0 74310.1 449.0
File Copy 4096 bufsize 8000 maxblocks 5800.0 886922.2 1529.2
Pipe Throughput 12440.0 1467621.9 1179.8
Pipe-based Context Switching 4000.0 324277.3 810.7
Process Creation 126.0 10722.5 851.0
Shell Scripts (1 concurrent) 42.4 2893.2 682.4
Shell Scripts (8 concurrent) 6.0 400.8 668.0
System Call Overhead 15000.0 2750243.4 1833.5
 ========
System Benchmarks Index Score 989.4

Der Benchmark-Score wird am Ende des Ergebnisses angezeigt.

Und das ist alles für jetzt. Ich hoffe, Sie finden das nützlich. Wenn Ihnen unsere Arbeit gefällt, teilen Sie bitte unsere Leitfäden in Ihren sozialen, beruflichen Netzwerken und unterstützen Sie OSTechNix.

Prost!


Linux
  1. Verwenden von AppImage für die Linux-Paketverwaltung

  2. 4 Tools zum Erstellen von eingebetteten Linux-Systemen

  3. Trizen – Ein leichtgewichtiger AUR-Paketmanager für Arch-basierte Systeme

  4. Chrony – Ein alternativer NTP-Client und -Server für Unix-ähnliche Systeme

  5. Details zum zuletzt ausgeführten Cron-Job in Unix-ähnlichen Systemen?

Die 15 besten Datenbankverwaltungssysteme für Linux Desktop

Was ist eine verteilte Datenbank und wozu dienen verteilte Datensysteme?

Die 10 besten kostenlosen Office Suite-Software als MS Office-Alternative für Linux

Die 20 besten Computeralgebrasysteme für Linux-Desktop

Die 15 besten Linux-Bootloader für Heim- und eingebettete Systeme

Die 15 besten Dokumentenverwaltungssysteme für Linux-Systeme