dbenchでDISK IO性能(書き込み)を測定する

   2016/08/17

dbench

dbenchを利用することで、DISK IOの性能を測定することができます。主に測定できるのは書き込み性能です。

UnixBenchではCPUのベンチマークはできましたが、DISK IOのベンチマークはほとんどできませんでした。dbenchを利用することで、DISK IOについても簡単にベンチマークを行うことが可能になります。

参考:UnixBenchでLinuxサーバのCPU性能を比較する

dbenchとは

dbenchとは、Linux系OSで使われてているDISK IOのベンチマークツールです。名前からdb系のベンチマークのようみも見えますがDISKのベンチマークツールです。

データを連続的に書き込み、スループットを測定します。同時実行接続数の指定ができるので、複数クライアントからの接続を想定したベンチマークも可能です。

dbenchの使い方

dbenchのインストール方法

dbenchのソースはsambaのサイトにて提供されています。

http://www.samba.org/ftp/tridge/dbench/

yum install popt-devel

yum install autoconf

wget http://samba.org/ftp/tridge/dbench/dbench-4.0.tar.gz

tar zxvf dbench-4.0.tar.gz

cd dbench-4.0

./autogen.sh

./configure

make

make install

dbenchの実行方法

dbench <同時実行プロセス数>

引数には同時実行プロセス数を指定します。単純にDISK IOの性能を確認したい場合は、CPUのオーバーヘッドを少なくするために、コア数と同じ数を同時実行プロセス数に指定しておくといいと思います。

特定パーティションのみSSDを利用している場合などは、パーティションを指定して実行します。パーティションの指定は、「-D」オプションを利用します。

dbench -D / 2

実行時間を短縮したい場合は、「-t」オプションを利用します。デフォルトでは、600秒となっています。

dbench -t 60 2

その他、実行の際に利用できるオプションは次の通りです。

[root@localhost ~]# dbench --usage

dbench version 4.00 - Copyright Andrew Tridgell 1999-2004

Usage: [-?sSFx] [-?|--help] [--usage] [-t|--timelimit integer]
 [-c|--loadfile filename] [-D|--directory STRING]
 [-T|--tcp-options STRING] [-R|--target-rate DOUBLE] [-s|--sync]
 [-S|--sync-dir] [-F|--fsync] [-x|--xattr] [--no-resolve]
 [--clients-per-process=INT] [--one-byte-write-fix] [--stat-check]
 [--fake-io] [--skip-cleanup] [--per-client-results]

dbenchの結果の見方

dbenchの結果は次のように標準出力へ出力されます。

確認すべき内容は、Throughput(スループット)です。スループットは単位時間当たりのデータ転送量を表します。下記の例では、350.734MB/秒となっています。

dbench version 4.00 - Copyright Andrew Tridgell 1999-2004

Running for 600 seconds with load '/usr/local/share/client.txt' and minimum warmup 120 secs
0 of 2 processes prepared for launch 0 sec

・・・・

2 23372498 350.73 MB/sec execute 599 sec latency 22.981 ms
2 cleanup 600 sec
0 cleanup 600 sec

Operation Count AvgLat MaxLat
----------------------------------------
NTCreateX 6705428 0.009 32.252
Close 4925654 0.001 3.047
Rename 283936 0.021 19.997
Unlink 1354071 0.036 40.168
Deltree 172 2.775 23.426
Mkdir 86 0.001 0.002
Qpathinfo 6077679 0.005 35.986
Qfileinfo 1065172 0.001 2.796
Qfsinfo 1114409 0.001 21.718
Sfileinfo 546226 0.031 33.050
Find 2349781 0.012 36.972
WriteX 3343614 0.019 40.281
ReadX 10510866 0.003 38.085
LockX 21834 0.001 0.060
UnlockX 21834 0.001 0.045
Flush 469970 1.840 43.270

Throughput 350.734 MB/sec 2 clients 2 procs max_latency=43.272 ms

まとめ

dbenchを利用することで、DISK IOの測定をすることができました。

dbenchの特徴をまとめると次のようになります。

  • プラットフォームはLinux
  • オープンソース(OSS)である
  • 主にDISK IOのベンチマークが可能
  • 結果は、スループット(MB/sec)を確認する

その他のDISK IO性能を測定する方法:

  • このエントリーをはてなブックマークに追加
  • Pocket

この記事へのコメントはこちら

メールアドレスは公開されませんのでご安心ください。
また、* が付いている欄は必須項目となりますので、必ずご記入をお願いします。

内容に問題なければ、下記の「コメント送信」ボタンを押してください。