Před chvílí jsme recenzovali Phoronix , platforma pro testování a srovnávání s otevřeným zdrojovým kódem. V této příručce uvidíme další sadu srovnávání s názvem UnixBench . Jedná se o původní sadu benchmarků BYTE UNIX, kterou v průběhu let aktualizovalo a revidovalo mnoho lidí. Hlavním účelem tohoto nástroje je poskytnout základní ukazatel výkonu operačního systému podobného Unixu. UnixBench lze použít k vyhodnocení výkonu vašeho systému při spouštění jedné nebo více úloh. Pamatujte, že se jedná o nástroj pro srovnávání systému, nikoli pouze o nástroj pro srovnávání CPU, RAM nebo disku. Výsledky budou záviset nejen na vašem hardwaru, ale také na vašem operačním systému, knihovnách a dokonce i kompilátoru.
Unixbench provede na vašem systému následující srovnávací testy.
- Dhrystone - Používá se k měření a porovnávání výkonu počítačů.
- Brousek – Používá se k měření rychlosti a efektivity operací s plovoucí desetinnou čárkou.
- Propustnost execl – Používá se k měření počtu volání execl, která lze provést za sekundu.
- Kopírovat soubor - Používá se k měření rychlosti přenosu dat z jednoho souboru do druhého.
- Propustnost potrubí - kolikrát (za sekundu) může proces zapsat 512 bajtů do roury a přečíst je zpět.
- Přepínání kontextu na základě potrubí – Používá se k měření, kolikrát si dva procesy mohou vyměnit rostoucí celé číslo prostřednictvím kanálu.
- Vytváření procesu - Používá se k měření, kolikrát může proces rozdělit a sklidit dítě, které okamžitě odejde.
- Skripty prostředí - Používá se k měření, kolikrát za minutu může proces spustit a získat sadu osmi souběžných kopií skriptů shellu, kde skript shellu aplikuje sérii transformací na datový soubor.
- Režie systémového volání – Používá se k odhadu nákladů na vstup a opuštění jádra operačního systému.
- Grafické testy - Používá se k poskytnutí představy o 2D a 3D grafickém výkonu systému.
Instalace a používání Unixbench v systému Linux
UnixBench je k dispozici v AUR, takže jej můžete nainstalovat na Arch Linux a jeho deriváty, jako je Manjaro Linux, Antergos pomocí pomocníků AUR.
Pomocí Yay :
$ yay -S unixbench
Na jiných distribucích Linuxu musíte zkompilovat a nainstalovat UnixBench ručně, jak je uvedeno níže.
Na 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
V systémech Debian, Ubuntu, Linux Mint:
$ sudo apt-get install libx11-dev libgl1-mesa-dev libxext-dev perl perl-modules make git
Po instalaci nezbytných předpokladů git clone úložiště UnixBench pomocí příkazu:
$ git clone https://github.com/kdlucas/byte-unixbench.git
Přejděte do adresáře unixbench:
$ cd byte-unixbench/UnixBench/
Poté spusťte následující příkaz a začněte testovat váš systém.
$ ./Run
Pokud jste nainstalovali UnixBench z AUR na Arch Linux, spusťte jej pomocí následujícího příkazu.
$ ubench
Ukázkový výstup by byl:
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
Skóre benchmarku se zobrazí na konci výsledku.
A to je zatím vše. Doufám, že vám to bude užitečné. Pokud se vám naše práce líbí, sdílejte naše průvodce na svých sociálních a profesních sítích a podpořte OSTechNix.
Na zdraví!