Fedora 資料一覧

Linuxのベンチマークを測定する(姫野ベンチ、hdparm、HDBENCH clone、Phoronix Test Suite)

2008/6/6更新

対応バージョン: 9

Linuxのベンチマークを測定するには以下のようなツールを利用する。

姫野ベンチ

CPU

hdparm

HDD

HDBENCH clone

CPU/ビデオカード/HDD

Phoronix Test Suite

ハードウェア/ソフトウェアにわたる広範なベンチマーク測定

以下、導入が簡単なものから順にそれぞれ導入方法と使用方法を説明する。

姫野ベンチ

導入手順

以下からソースを入手する。

対応言語はFortranとC(static allocate/dynamic allocate)があり、問題サイズの指定(XL、L、M、S)はそれぞれ使用するメモリ量が異なるので必要に応じて選択する。

ここではC言語(static allocate)、サイズMを使用するものとし、以下の手順で導入する。

% 7z e cc_himenoBMTxp_m.lzh
% make
% sudo cp bmt /usr/local/bin

使用方法

bmtを起動する。

% bmt
mimax = 129 mjmax = 129 mkmax = 257
imax = 128 jmax = 128 kmax =256
 Start rehearsal measurement process.
 Measure the performance in 3 times.

 MFLOPS: 107.737056 time(s): 3.817771 1.733593e-03

 Now, start the actual measurement process.
 The loop will be excuted in 47 times
 This will take about one minute.
 Wait for a while

 Loop executed for 47 times
 Gosa : 1.505549e-03 
 MFLOPS measured : 423.242934	cpu : 15.225160
 Score based on Pentium III 600MHz : 5.161499

hdparm

導入手順

hdparmはFedora 9にはデフォルトでインストールされている。

使用方法

hdparmはベンチマークを測定する他にデバイスの状態を確認/制御したりデバイスへの各種設定を行うことができるが、ここではベンチマーク取得オプションを紹介する。

-T (キャッシュ読み込み)

ディスクアクセスなしにバッファキャッシュからデータを読み出す速度を測定する。

% sudo hdparm -T /dev/sda

/dev/sda:
 Timing cached reads: 774 MB in 2.00 seconds = 386.63 MB/sec
-t (デバイス読み込み)

バッファキャッシュを通してディスクから連続してデータを読み出すことができるかを測

定する。

% sudo hdparm -t /dev/sda

/dev/sda:
 Timing buffered disk reads: 168 MB in 3.01 seconds = 55.82 MB/sec

HDBENCH clone

導入手順

以下からソースを入手する。

以下の手順で導入する。事前にgtk+-develをインストールしておく必要がある。

% tar zxvf hdbench-0.14.0.tar.gz
% cd hdbench-0.14.0
% ./configure
% make
% sudo make insatall

以下のファイルがインストールされる。

ツール本体

/usr/local/bin/hdbench

使用方法

hdbenchを起動し、計測したいものによって[CPU]、[VIDEO]、[DISK]の各ボタンを押す。[ALL]ボタンで全ての計測をまとめて実施できる。

Phoronix Test Suite

導入手順

以下からソースを入手する。

以下の手順で導入する。事前にphp-cliとwgetをインストールしておく必要がある。

% tar zxvf phoronix-test-suite-1.0.0.tar.gz
% cd phoronix-test-suite
% sudo ./install-sh

以下のファイルがインストールされる。

ツール本体

/usr/bin/phoronix-test-suite

関連ファイル

/usr/share/phoronix-test-suite配下

次にテストしたいパターンを入手する。

パターンには以下の2種類がある。

Suites

CPUやグラフィックカードなどデバイスに関するテストパターン

Tests

gzipやOpenSSL、SQLiteなどのソフトウェアに関するテストパターン

それぞれ利用可能なテストパターンを表示して必要なものをインストールして使用する。

% phoronix-test-suite list-suites
:
Do you agree to these terms and wish to proceed (Y/n)? ← y

====================================
Phoronix Test Suite - Suites
====================================

audio-encoding            - Audio Encoding                   [Type: System]
compilation               - Timed Code Compilation           [Type: Processor]
compression               - Timed File Compression           [Type: Processor]
computational-biology     - Computational Biology Test Suite [Type: Scientific]
cryptography              - Cryptography                     [Type: Processor]
gaming-closed             - Closed-Source Gaming             [Type: System]
gaming-free               - Free Software Gaming             [Type: System]
gaming                    - Gaming                           [Type: System]
gui-toolkits              - GUI Toolkits                     [Type: Graphics]
java                      - Java                             [Type: System]
molecular-dynamics        - Molecular Dynamics Test Suite    [Type: Processor]
multicore                 - Multi-Core                       [Type: Processor]
pcqs-desktop-graphics     - PCQS: Desktop Graphics           [Type: System]
pcqs-graphics             - PCQS: Graphics                   [Type: System]
pcqs-motherboard          - PCQS: Motherboard                [Type: Motherboard]
pcqs-server-motherboard   - PCQS: Server Motherboard         [Type: Motherboard]
pcqs-workstation-graphics - PCQS: Workstation Graphics       [Type: Graphics]
system-compliance         - System Compliance                [Type: System]
system-memory             - System Memory                    [Type: Memory]
universe-cli              - Universe CLI Test Suite          [Type: System]
universe-x                - Universe Test Suite              [Type: System]
universe                  - Universe Test Suite              [Type: System]
video-encoding            - Video Encoding                   [Type: System]

% phoronix-test-suite list-tests

====================================
Phoronix Test Suite - Tests
====================================

build-apache       - Timed Apache Compilation  [Status: VERIFIED, License: FREE]
build-imagemagick  - ImageMagick Compilation   [Status: VERIFIED, License: FREE]
build-linux-kernel - Timed Linux Kernel Compilation [Status: VERIFIED, License: FREE]
build-mplayer      - Timed MPlayer Compilation [Status: VERIFIED, License: FREE]
build-php          - Timed PHP Compilation     [Status: VERIFIED, License: FREE]
compliance-acpi    - Advanced Configuration and Power Interface [Status: VERIFIED, License: FREE]
compliance-ogl     - GLEW                      [Status: VERIFIED, License: FREE]
compliance-sensors - LM Sensors                [Status: VERIFIED, License: FREE]
compress-7zip      - 7-Zip Compression         [Status: VERIFIED, License: FREE]
compress-gzip      - Timed Gzip Compression    [Status: VERIFIED, License: FREE]
compress-lzma      - Timed LZMA Compression    [Status: VERIFIED, License: FREE]
compress-pbzip2    - Parallel BZIP2 Compression [Status: VERIFIED, License: FREE]
doom3              - Doom 3                    [Status: VERIFIED, License: NON-FREE]
encode-ape         - Monkey Audio Encoding     [Status: VERIFIED, License: FREE]
encode-flac        - FLAC Audio Encoding       [Status: VERIFIED, License: FREE]
encode-mp3         - LAME MP3 Encoding         [Status: VERIFIED, License: FREE]
encode-ogg         - Ogg Encoding              [Status: VERIFIED, License: FREE]
encode-wavpack     - WavPack Audio Encoding    [Status: VERIFIED, License: FREE]
espeak             - eSpeak Speech Engine      [Status: VERIFIED, License: FREE]
etqw-demo          - ET: Quake Wars Demo       [Status: VERIFIED, License: NON-FREE]
etqw               - ET: Quake Wars            [Status: VERIFIED, License: NON-FREE]
ffmpeg             - FFmpeg                    [Status: VERIFIED, License: FREE]
fgl-glxgears       - ATI fgl_glxgears          [Status: VERIFIED, License: RESTRICTED]
glmark             - GLMark                    [Status: VERIFIED, License: FREE]
gnupg              - GnuPG                     [Status: VERIFIED, License: FREE]
gtkperf            - GtkPerf                   [Status: VERIFIED, License: FREE]
hmmer              - Timed HMMer Search        [Status: VERIFIED, License: FREE]
iozone             - IOzone                    [Status: VERIFIED, License: FREE]
java-scimark2      - Java SciMark              [Status: VERIFIED, License: FREE]
mafft              - Timed MAFFT Alignment     [Status: VERIFIED, License: FREE]
md-gromacs         - GROMACS MD Benchmark      [Status: VERIFIED, License: FREE]
memory-bandwidth   - Bandwidth                 [Status: VERIFIED, License: FREE]
mencoder           - Mencoder                  [Status: VERIFIED, License: FREE]
mrbayes            - Timed MrBayes Analysis    [Status: VERIFIED, License: FREE]
nexuiz             - Nexuiz                    [Status: VERIFIED, License: FREE]
norsetto-shadow    - Norsetto Shadow           [Status: VERIFIED, License: FREE]
openarena          - OpenArena                 [Status: VERIFIED, License: FREE]
openssl            - OpenSSL                   [Status: VERIFIED, License: FREE]
pts-graph          - PTS Grapher               [Status: VERIFIED, License: FREE]
quake4             - Quake 4                   [Status: VERIFIED, License: NON-FREE]
ramspeed           - RAMspeed                  [Status: VERIFIED, License: FREE]
render-bench       - Render Bench              [Status: VERIFIED, License: FREE]
scimark2           - SciMark                   [Status: VERIFIED, License: FREE]
specviewperf10     - SPECViewPerf              [Status: VERIFIED, License: FREE]
specviewperf9      - SPECViewPerf              [Status: VERIFIED, License: FREE]
sqlite             - SQLite                    [Status: VERIFIED, License: FREE]
sunflow            - Sunflow Rendering System  [Status: VERIFIED, License: FREE]
super-pi           - Super PI                  [Status: VERIFIED, License: UNKNOWN]
tandem-xml         - Tandem XML                [Status: VERIFIED, License: FREE]
warsow             - Warsow                    [Status: VERIFIED, License: FREE]
x11perf            - x11perf                   [Status: VERIFIED, License: FREE]
xplane9            - X-Plane                   [Status: VERIFIED, License: FREE]
yafray             - YafRay                    [Status: VERIFIED, License: FREE]

この中でテストに使用したいパターンをインストールする。パターン毎にライセンスが異なるので注意すること。

ここではSuitesからcompilationとvideo-encoding、Testsからcompress-gzipとopensslをインストールする。

% phoronix-test-suite install compilation
% phoronix-test-suite install video-encoding
% phoronix-test-suite install compress-gzip
% phoronix-test-suite install openssl

各パターンは他のパターンに依存している場合が多いのでそれらも自動的にインストールされる。

上記4パターンをインストールした結果は以下のようになる。

% phoronix-test-suite list-installed-tests

=====================================
Phoronix Test Suite - Installed Tests
=====================================

build-apache       - Timed Apache Compilation      
build-imagemagick  - ImageMagick Compilation       
build-linux-kernel - Timed Linux Kernel Compilation
build-php          - Timed PHP Compilation         
compress-gzip      - Timed Gzip Compression        
ffmpeg             - FFmpeg                        
mencoder           - Mencoder                      
openssl            - OpenSSL                       

使用方法

runサブコマンドに続けてテストしたいパターンを指定する。

ここでは前述のvideo-encodingとopensslのベンチマークを測定してみる。

% phoronix-test-suite run video-encoding

Would you like to save these test results (Y/n)? ← 結果を保存するか?

====================================
Test Suite: video-encoding
====================================


====================================
Mencoder (Run 1 of 3)
====================================

Encoding Time: 159.37 Seconds

:
(同じテスト3回実施)
:

####################################
Mencoder:

159.37 Seconds
208.98 Seconds
196.98 Seconds

Average: 188.44 Seconds
####################################


====================================
FFmpeg (Run 1 of 3)
====================================

Encoding Time: 73.96 Seconds

:
(同じテスト3回実施)
:

####################################
FFmpeg:

73.96 Seconds
71.43 Seconds
65.74 Seconds

Average: 70.37 Seconds
####################################
% phoronix-test-suite run openssl

Would you like to save these test results (Y/n)? 

====================================
OpenSSL (Run 1 of 4)
====================================

+DTP:4096:private:rsa:10
+R1:60:4096:10.16
+DTP:4096:public:rsa:10
+R2:3099:4096:10.00
Forked child 0
Got: +F2:3:4096:0.169333:0.003227 from 0
OpenSSL 0.9.8g 19 Oct 2007
built on: Fri Jun  6 12:40:15 JST 2008
options:bn(64,32) md2(int) rc4(idx,int) des(ptr,risc1,16,long) aes(partial)
 idea(int) blowfish(idx) 
compiler: gcc -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H
 -DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall -DOPENSSL_BN_ASM_PART_WORDS 
 -DOPENSSL_IA32_SSE2 -DSHA1_ASM -DMD5_ASM -DRMD160_ASM -DAES_ASM
available timing options: TIMES TIMEB HZ=100 [sysconf value]
timing function used: 
                  sign    verify    sign/s verify/s
rsa 4096 bits 0.169333s 0.003227s      5.9    309.9

:
(同じテストを4回実施)
:

####################################
OpenSSL:

5.9 Signs Per Second
5.6 Signs Per Second
5.4 Signs Per Second
5.9 Signs Per Second

Average: 5.70 Signs Per Second
####################################

この他にもテストパターンのアンインストールやベンチマーク結果の削除/再表示、システム情報の表示など様々な操作が可能である。

詳しくは引数なしでphoronix-test-suiteを実行すると利用可能な操作の一覧が表示される。