UnixBenchを試す

スポンサーリンク

Linuxの性能測定ツールとして、UnixBenchを試してみました。

リンク:https://code.google.com/archive/p/byte-unixbench/

今後はこれを使って色々と測定してみよう。比較サイトはウケるし。

 

UnixBenchとは

It was then taken and expanded by Byte Magazine. Linux mods by Jon Tombs, and original authors Ben Smith, Rick Grehan, and Tom Yager.The tests compare Unix systems by comparing their results to a set of scores set by running the code on a benchmark system, which is a SPARCstation 20-61 (rated at 10.0).

とのこと。ざっくりと「SPARCstation 20-61」というマシンを10.0として、スコアを出すということだろう。

なぜ1.0にしなかった?と思ったけど、確かにこれより遅いマシンがあるから、1.0だと色々と不都合があるんだな。

 

CentOS7にインストール

なんかもう入っていたが、以下のものが必要。

  • perl
  • perl-Time-HiRes
  • make
  • gcc

それをyumで入れる。

[root@hostname~]# yum install perl perl-Time-HiRes make gcc

ちなみに、以下のバージョンが入っていたので、何もしない。
CentOS7のインストール時に、「開発ツール」をチェック入れると、何もしないでも入る。

パッケージ 4:perl-5.16.3-286.el7.x86_64 はインストール済みか最新バージョンです
パッケージ 4:perl-Time-HiRes-1.9725-3.el7.x86_64 はインストール済みか最新バージョンです
パッケージ 1:make-3.82-21.el7.x86_64 はインストール済みか最新バージョンです
パッケージ gcc-4.8.5-4.el7.x86_64 はインストール済みか最新バージョンです
何もしません

サイトからwgetする。

[root@hostname~]# wget https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/byte-unixbench/UnixBench5.1.3.tgz

解凍して、

[root@hostname src]# tar xzvf UnixBench5.1.3.tgz

実行!これ自体の実行時間を測定してみる。

[root@hostname src]# cd UnixBench
[root@hostname UnixBench]# ls
Makefile README Run USAGE WRITING_TESTS pgms results src testdir
[root@hostname UnixBench]# time ./Run

どんなテストがあるか?

  1. Dhrystone 2 using register variables
    2つのレジスタを使ってシステム(整数)プログラミングの性能
  2. Double-Precision Whetstone
    浮動小数点演算性能
  3. Execl Throughput
    関数の呼び出し性能
  4. File Copy 1024 bufsize 2000 maxblocks
    ファイルのコピー(バッファサイズ1024バイト)
  5. File Copy 256 bufsize 500 maxblocks
    ファイルのコピー(バッファサイズ256バイト)
  6. File Copy 4096 bufsize 8000 maxblocks
    ファイルのコピー(バッファサイズ4096バイト)
  7. Pipe Throughput
    パイプ処理のスループット
  8. Pipe-based Context Switching
    パイプベースのコンテキストのスイッチング処理
  9. Process Creation
    プロセス作成
  10. System Call Overhead
    システムコールでのオーバーヘッド
  11. Shell Scripts (1 concurrent)
    1つだけシェルスクリプトの実行
  12. Shell Scripts (8 concurrent)
    8つ同時にシェルスクリプトの実行

 

結果

なんか色々と出たが、結果はこんな感じに。

[root@limesurvey UnixBench]# time ./Run
gcc -o ./pgms/arithoh -DTIME -Wall -pedantic -ansi -O2 -fomit-frame-pointer -fforce-addr -ffast-math -Wall -Darithoh ./src/arith.c
  ・・・
make[1]: Leaving directory `/usr/local/src/UnixBench'
sh: 3dinfo: command not found

   #    #  #    #  #  #    #          #####   ######  #    #   ####   #    #
   #    #  ##   #  #   #  #           #    #  #       ##   #  #    #  #    #
   #    #  # #  #  #    ##            #####   #####   # #  #  #       ######
   #    #  #  # #  #    ##            #    #  #       #  # #  #       #    #
   #    #  #   ##  #   #  #           #    #  #       #   ##  #    #  #    #
    ####   #    #  #  #    #          #####   ######  #    #   ####   #    #

   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

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

   System: limesurvey: GNU/Linux
   OS: GNU/Linux -- 3.10.0-327.4.4.el7.x86_64 -- #1 SMP Tue Jan 5 16:07:00 UTC 2016
   Machine: x86_64 (x86_64)
   Language: en_US.utf8 (charmap="UTF-8", collate="UTF-8")
   CPU 0: Intel(R) Core(TM) i5-2500 CPU @ 3.30GHz (6585.2 bogomips)
          x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET
   23:30:48 up  1:05,  2 users,  load average: 0.00, 0.01, 0.05; runlevel 3

------------------------------------------------------------------------
Benchmark Run: 木  1月 28 2016 23:30:48 - 23:58:51
1 CPU in system; running 1 parallel copy of tests

Dhrystone 2 using register variables       38289380.4 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                     4523.6 MWIPS (9.9 s, 7 samples)
Execl Throughput                               4090.4 lps   (30.0 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks       1084081.1 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks          317051.3 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks       2450357.9 KBps  (30.0 s, 2 samples)
Pipe Throughput                             1661508.7 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                 331576.6 lps   (10.0 s, 7 samples)
Process Creation                              11962.2 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                   5185.8 lpm   (60.0 s, 2 samples)
Shell Scripts (8 concurrent)                    751.2 lpm   (60.1 s, 2 samples)
System Call Overhead                        2626985.8 lps   (10.0 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0   38289380.4   3281.0
Double-Precision Whetstone                       55.0       4523.6    822.5
Execl Throughput                                 43.0       4090.4    951.2
File Copy 1024 bufsize 2000 maxblocks          3960.0    1084081.1   2737.6
File Copy 256 bufsize 500 maxblocks            1655.0     317051.3   1915.7
File Copy 4096 bufsize 8000 maxblocks          5800.0    2450357.9   4224.8
Pipe Throughput                               12440.0    1661508.7   1335.6
Pipe-based Context Switching                   4000.0     331576.6    828.9
Process Creation                                126.0      11962.2    949.4
Shell Scripts (1 concurrent)                     42.4       5185.8   1223.1
Shell Scripts (8 concurrent)                      6.0        751.2   1252.1
System Call Overhead                          15000.0    2626985.8   1751.3
                                                                   ========
System Benchmarks Index Score                                        1526.7


real    28m5.262s
user    7m5.979s
sys     14m36.466s

色々結果はあるが、とにかく最後の 1526.7 というのがこのマシンの結果ということだ。
これをベースラインに後で色々と測定していこうと思う。


スポンサーリンク