SITE TOP  Linuxシステム構築Tips  HDDベンチマーク手順+性能測定結果一覧

1-1

  HDDベンチマーク手順+性能測定結果一覧 (hdparm,dd,bonnie++)



   

 ハードディスクのIO性能を左右する要素

システムのパフォーマンスが思うように上がらない場合、ハードディスクのIO性能がボトルネックになっているケースが多々あります。

以下に主要な項目を挙げるように、ハードディスクのIO性能は様々なシステム構成要素やその設定によって左右されます。システムのインフラ基盤で性能問題が発生することを未然に防ぐためには、サーバ環境・ストレージ環境の設計段階から、こららの項目を計画、確認しておきたいところです。

  • ハードウェアRAID構成
  • ソフトウェアRAID構成
  • HDD単体の基礎性能 (スピンドル回転数、シーク時間等)
  • パーティションのHDD上の位置 (内周部/外周部)
  • チップセットの性能
  • RAIDコントローラー、SCSI/IDEアダプターの性能
  • BIOS設定
  • Linuxカーネル
  • ドライバーのバージョン
  • ファームウェアのバージョン
  • ファイルシステム (参照 : Linuxファイルシステムベンチマーク 第1回
  • I/Oスケジューラ
  • NFS設定 (NFSマウント領域の場合)




 HDDベンチマーク手順

システムの環境構築が完了した後には、ハードディスクのIO性能を必ず測定しておきましょう。
ここで紹介するベンチマーク手順を実行し、測定結果の妥当性を評価することによって、ほとんどのケースでディスクIO性能に起因する性能問題を未然に検知することが可能です。

性能測定やベンチマークと聞くと、難しそうなイメージを持たれるかも知れませんが、実はそれほど難しい手順が必要な訳ではありません。次のような1行のOSコマンド+bashを用いることで、シーケンシャルアクセスの(連続した領域の) read性能・write性能を簡単に測定することができます。

  • read性能の測定
    # for i in [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12];do sleep 10;echo $'\n\n' $i;hdparm -t /dev/sda2;done

    hdparmコマンドでread性能を測定します。
    10秒間の停止を入れながら計12回実行されるので、出力結果の中でread性能を表す 「seconds =  **.** MB/sec」 から平均値を算出して下さい。

    出力結果の中で最大・最小の結果、それぞれ1回分を除いた計10回分を対象にして平均値を計算すると、より適切な結果が得られるはずです。

    /dev/* の部分は、測定対象のパーティションにより適宜変更が必要です。


  • write性能の測定
    # for i in [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12];do sleep 10;echo $'\n\n' $i;date;time dd if=/dev/zero of=/tmp/hdparm_write$i.tmp ibs=1M obs=1M count=1024;date;done

    ddコマンドで1GBのファイルを作成し、write性能を測定します。
    10秒間の停止を入れながら計12回実行されるので、出力結果の中でwrite時間を表す 「real    * m **.*** s」 から1GBのファイル作成に掛かった平均時間を算出して下さい。

    出力結果の中で最大・最小の結果、それぞれ1回分を除いた計10回分を対象にして平均値を計算すると、より適切な結果が得られるはずです。

    /*/hdparm_write$i.tmp の部分は、測定対象のパーティションにより適宜変更が必要です。

    なお、実際に合計12GBのファイルを作成するので、パーティションの空き容量には十分ご注意下さい。


IO性能の測定にハードディスクベンチマークツール「bonnie++」を用いる方法もあります。次のように簡単なコマンドで、シーケンシャルread/write、ランダムアクセス等の性能測定を一度に行うことができます。
同ベンチマークツールの使用方法については 「bonnie++の使用方法」 のページを参照して下さい。

  • bonnie++ 1.03 による測定
    $ ./bonnie++ -d /tmp

    bonnie++を用いてハードディスクのIO性能を測定します。

    /tmp の部分は、測定対象のパーティションにより適宜変更が必要です。

はてなブックマークに追加 はてなブックマーク  Yahoo!ブックマーク   公開日:2005/08/17  更新日:2010/01/24



 性能測定結果一覧

実環境での測定結果を一覧にまとめました。測定値の妥当性を確認する際、参考にして頂ければと思います。(なお、記載値はIO性能を保障するものではありません。あくまで参考値としてご覧下さい。)

  • 他処理が実行されないサーバ環境構築後の無風時に測定
  • ファイルシステムはext3
  • 上述の測定結果は10秒間隔で12回実行、最大・最小の結果、それぞれ1回分を除く10回の平均値を「MB/sec」値で記載
  • bonnie++を用いた測定結果は5回実行、Sequential Input(read)Block、Sequential Output(write)Blockの最大値を「M/sec」値で記載、Random Seeks(seek)の最大値を「/sec」値で記載
  • 小数点以下は切り捨て

H/W HDD HDD I/F H/W
RAID
OS
kernel
上述測定 bonnie++
read write read write seek
OptiPlex
GX115
40GB 7.2K * 1
(6L040J2)
Ultra ATA/100 no RedHat 8.0
2.4.18-14
35 33 51 37 180
CentOS 3.6
2.4.21-37.EL
40 30 39 39 191
Fedora Core 4
2.6.11-1.1369
[ SE Linux /
non SE Linux ]
35 19 32 20 177
39 22 32 22 181
OptiPlex
GX240
40GB 7.2K * 1
(6L040J2)
Ultra ATA/100 no RedHat 8.0
2.4.18-14
35 33 55 39 193
CentOS 3.6
2.4.21-37.EL
40 33 38 41 195
Fedora Core 4
2.6.11-1.1369
[ SE Linux /
non SE Linux ]
35 19 32 24 183
39 24 39 25 186
ML350 G3 9GB 10K * 4 Ultra 160 SCSI 0 CentOS 3.6
2.4.21-37.ELsmp
52 43 51 59 619
9GB 10K * 6 0 52 57 52 72 681
9GB 10K * 2 1 38 26 31 27 422
9GB 10K * 4 5 45 11 45 13 484
9GB 10K * 6 5 37 12 35 15 613
9GB 10K * 4 0 CentOS 4.4
2.6.9-42.ELsmp
62 83 62 105 646
ML110 G4 160GB 7.2K * 1
Cache : Disable
SATA
(Serial ATA)
no CentOS 3.6
2.4.21-37.ELsmp
74 10 73 7 196
160GB 7.2K * 1 no 74 100 72 69 220
160GB 7.2K * 2 0 147 127 142 116 343
160GB 7.2K * 2 1 73 96 73 70 416





H/W HDD HDD I/F H/W
RAID
OS
kernel
上述測定 bonnie++
read write read write seek
DL360 G4 36GB 15K * 2 Ultra 320 SCSI 0 Fedora Core 4
2.6.11-1.1369
_FC4smp
non SE Linux
73 126 158 120 860
1 90 63 88 61 935
Ultra 320 SCSI
128MB BBWC
0 76 71 158 94 841
1 91 46 88 56 886
DL380 G4 146GB 15K * 2 Ultra 320 SCSI 1 RedHat AS 3
2.4.21-37.ELsmp
88 78 79 79 997
DL380 G4
- MSA 30
146GB 15K * 4 Ultra 320 SCSI 0 87 199 79 223 958
146GB 15K * 6 0 87 175 88 226 1243
146GB 15K * 2 1 89 90 83 82 965
146GB 15K * 4 1+0 88 135 90 126 1285
146GB 15K * 6 1+0 70 137 82 130 1377
146GB 15K * 4 5 81 47 52 45 1026
146GB 15K * 6 5 85 52 51 48 1183
H/W HDD HDD I/F H/W
RAID
OS
kernel
上述測定 bonnie++
read write read write seek
ThinkPad
X40
20GB 4.2K * 1
(DK14FA-20)
Ultra ATA/100 no CentOS 3.6
2.4.21-37.EL
13 12 11 14 85
xSeries 305 80GB 7.2K * 2 Ultra ATA/100 1 RedHat AS 2.1
2.4.9-e.24
46 44 45 43 208
xSeries 335 36GB 15K * 1 Ultra 320 SCSI no RedHat WS 2.1
2.4.9-e.12smp
[ ver 2.02.01 /
ver 2.05.08 ]
72 11 98 9 395
72 60 99 68 461
xSeries 335 36GB 10K * 2 Ultra 320 SCSI 1 Fedora Core 3
2.6.9-1.667smp
non SE Linux
63 48 52 44 477
36GB 10K * 1 no 62 48 46 33 267
x3650 73GB 15K * 2 SAS
(Serial
Attached
SCSI)
1 RedHat AS 4
2.6.9-55.ELsmp
128 100 82 64 537
300GB 15K * 4 1+0 239 240 165 119 502


補記事項
  • ML110 G4にSATA HDDを搭載する構成で、Write Cacheを「Disable」に設定するとwrite性能が極端に悪いことを確認しました(一覧表の赤太字部分)。
    内蔵SATA RAIDコントローラの「Create Array」、「Configure Drives」メニューからドライブを構成した場合、デフォルトの設定は「Write Cache : Disable」になるため、注意が必要です。
    Write Cacheを「Enable」に設定することでwrite性能が大幅に向上することを確認しています。

  • xSeries 335にRedHat WS 2.1(update無し)をインストールした構成で、write性能が極端に悪いことを確認しました(一覧表の赤太字部分)。これはOSインストール時にデフォルトで導入されるデバイスドライバーの不具合によるものです。
    IBM社のサイトで公開されている「xSeries - Red Hat Enterprise Linux ES/WS 2.1 導入ガイド(2004-04-18版)」に記載の手順に従い、Fusion MPT base driver、Fusion MPT SCSI Host driver を 2.02.01 から 2.05.08 にバージョンアップすることによってこの不具合を解消しています。

  • OSインストール時にSE Linuxを導入した場合、実行中のプロセス、ファイルには「セキュリティコンテキスト」が付与されます。また、ポリシーデータベースの保持、適合チェック処理のオーバーヘッドが発生することにより、システムのパフォーマンスは非導入時と比較して明らかに低下します。


  Linuxシステム構築Tips - トップページ へ戻る

  bonnie++の使用方法 はてなブックマーク

  Linuxファイルシステムベンチマーク第1回 ext2,ext3,JFS,ReiserFS,XFS,NTFS はてなブックマーク

  Linuxファイルシステムベンチマーク第2回 ext3,ext4,JFS,ReiserFS,XFS,NILFS2 はてなブックマーク

  RAMディスクのIO性能をチューニングに活用すべし (/dev/shm) はてなブックマーク

 この分野で参考になるホームページのリンク集

 富士通 - PRIMERGY IAサーバ解説
    ストレージシステムの解説の中で、HDDの基本面やRAID構成の性能比較に関する情報が充実。

 日本IBM - RAIDレベル説明資料  (*PDF)
    RAID-1E,RAID-5E,RAID-5EEを含む各RAIDレベルの特性を図解入りで詳細に解説した資料。
    パフォーマンス面やディスク容量使用率の観点から各RAIDレベルを比較した一覧表も有り。

 日本HP - HP SASベンチマーク パフォーマンステスト
    HP ProLiantサーバを用いたSerial Attached SCSI(SAS)とUltra320 SCSIのベンチマーク結果を公開。
    Microsoft Jetstress 2004のベンチマークでは、外付けストレージのRAIDレベル毎の性能比較有り。

 日本HP - SATAハードディスクとSAS/SCSIハードディスクの違いと選定のポイント
    ハードディスクの規格毎に設計思想の違いを解説。システム構成選定の参考になる。

 HDDの実効速度測定
    raidtoolsを用いて実環境で行ったベンチマーク結果、RAID構成の性能比較データを公開。

 ITmedia - ハードディスクのアクセスが遅いような気がする
    IDE HDDのDMA転送を用いたパフォーマンスチューニングに関する情報。

 IDEハードディスクの転送モード一覧
    ATA規格とPCI規格の転送速度に関する情報。

 @IT - ハードディスクのS.M.A.R.T.情報を表示するには
    ハードディスクの持つ自己診断機能 S.M.A.R.T. の情報を取得するsmartctlコマンドの解説。

 @IT - 全貌を現したLinuxカーネル2.6[第1章] - ファイルI/Oの効率化
    カーネル2.4、カーネル2.6のファイルI/Oの仕組みに関する解説。

 turbolinux - HDDのパフォーマンスをテストする
    ベンチマークツールbonnie++を用いた性能測定に関する解説。

 Oracle - OPTIMAL STORAGE CONFIGURATION MADE EASY  (*PDF)
    Oracle社が推奨するストレージ物理設計方針 S.A.M.E に関する資料。(英語)

 Yahoo!ニュース - 外部記憶装置
    HDD、ストレージ関連の最新ニュースを掲載。ハードディスクの誕生等、歴史の解説も有り。