HPC-ProFS DPvMD1000
15基のディスクを搭載できる外付けディスクエンクロージャ
3台をディジーチェーン接続し45基のディスクを一括利用可能
専用RAIDコントローラ「PERC6/E」に2系統90基のディスクを接続可能
2TBディスクに対応、総物理容量180TBを実現
3年間当日4時間プラス対応オンサイト保守 (部品先出、障害切り分け) にて安心
障害予兆検出、早期部品交換、予防部品交換、HPC運用復旧支援にて高信頼
10Giabit Ethernet (10GbE) の利用では、10GbEに追従できる高速なストレージが必要です。そこで右写真のような15個のディスクを搭載したRAIDシステムでのファイルI/Oテストを行い、10GbEの要請に応える性能を持つか否かを確認しました。
機器の構成を説明します。ホストサーバはXeon (Nehalem) プロセッサと6GBのメモリ、そしてSAS接続のRAIDコントローラを搭載しています。このサーバに外付けディスクエンクロージャDPvMD1000をSAS接続しています。ディスクは7200rpm 1TB SAS HDDを15個内蔵しています。テスト用のRAID構成は、15個のディスクを用いたRAID6をメインターゲット用に構築し、ピーク性能確認用には15個のディスクを用いたRAID0を構築し、さらに基本性能確認用に1個のディスクを用いたRAID0も構成しています。以上の3種類のRAID構成でノード内でのディスクベンチマークテストを実施し性能確認を行いました。
ベンマークテストの内容は、各RAIDボリュームに対して1MBから順に16GBを越えるまでのファイルのサイズを順に倍増させながら、各ファイルサイズでの読み書き性能を計測しグラフ化しました。
Write性能評価の注意事項としては、システムに搭載しているメモリによるディスクキャッシュ効果を除外した性能評価が求められます。今回のテスト機は6GBのメモリを搭載しているので、ファイルサイズが6GB以下の領域ではメモリの効果が強く、ディスクの評価としては適当ではありません。そこでファイルサイズを大きくしメモリキャッシュの効果が希薄化した領域で測定する必要があります。RAID6テストでは64GBの巨大なサイズのファイルまでテストを行いました。グラフでは青い太線の右端が64GBに該当します。RAID6はこの領域で450GB/sのWrite実効転送性能を記録しました。
Read性能評価の注意事項としては、RAIDコントローラに搭載しているキャッシュ効果を除外した性能評価が求められます。今回のRAIDコントローラは256MBのキャッシュを搭載しているので、ファイルサイズが256MB以下の領域ではキャッシュの効果が強く、ディスクの評価としては適当ではありません。ファイルサイズが256MBよりも大幅に大きな領域で測定する必要があります。グラフでは赤い太線の真中から右側がターゲット領域です。RAID6はこの領域で800MB/sのRead実効転送性能を記録しました。
ディスクとRAIDコントローラ間は12GbpsのSASマルチレーンケーブルで接続されています。12Gbpsですから1000MB/sの性能が理想値と考えられ、実効値がどこまで到達しているかが焦点です。そのピーク実効性能を確認するためにRAID0でのテストも行いました。中太線で描かれたグラフです。
ディスク15個を用いたRAID0ではWrite 600MB/s、Read 850MB/sという性能が得られました。12GbpsのSASが理想的な速度で動作していることが確認できます。さらにその性能を下支えしている要素として、新Xeon (Nehalem) アーキテクチャが持つ25.6GB/sのメモリ性能、25.6GB/sのQPI性能などが大きく貢献しているだろうということを申し添えさせていただきます。
単体ディスクの性能確認も行いました。単体ディスクをRAIDコントローラに接続しRAID0を構成しました。RAID化することでRAIDコントローラ上の256MBキャッシュと、システムの6GBキャッシュの双方が効くため適切な比較ができるデータが得られます。一番細い線で描かれたグラフです。
キャッシュを越えたサイズのファイルをWrite/Readすると1TB SAS 7200rpmディスクの素直な性能が確認できます。Write 115MB/s、Read 110MB/sの性能です。

高速大容量のメモリを搭載できるXeon (Nehalem)系サーバではディスクキャッシュの効果も期待できます。テストでは6GBメモリを搭載しています。
Write性能についてはメモリが有効なファイルサイズで1800MB/sの性能が確認されました。複数の10GbEポートからの書き込み集中によりディスクI/Oがオーバーフローしてもメモリサイズ以下のデータ集中量であればI/O処理を分散させることで性能低下を改善することができます。
Read性能についてはテスト時には書き込み後にメモリをフラッシュしてから読み出しメモリキャッシュの効果を無効にしてのテストなのでその効果は確認されていません。しかし実際の運用では搭載メモリサイズ以下での利用に限るならReadでのメモリの効果も期待できます。
現在まだ16GBメモリモジュールは高価ですが価格低下は時間の問題です。その結果、近い将来にはサーバに数百GBのメモリを搭載することも現実的となり、大容量メモリを用いたストレージの階層化による高速化が普及しそうです。HPCではWrite処理の比重が高いのでメモリの有効活用は効果的です。
ディスク6個でのWrite性能はディスク15個構成と同水準です。ところがRead性能はディスク15個構成の半分でしかありません。高速なRead性能が必要な場合はディスクを多くするか、あるいは15000rpmディスクの採用が効果を発揮します。

SSDの性能はインターネット上で各種のベンチマーク結果が公開されています。その性能はメーカーによって差があるようですが、高速な製品でもWrite 60MB/s, Read 90MB/s程度の性能のようです。この性能は7200rpmの単体ディスクの足元にも及びません。
また2個のSSDをRAID0化してもWrite 100MB/s, Read 160MB/s程度のようです。この性能も15000rpmの高速型ディスクの前では並みの性能でしかありません。シーケンシャルファイルのI/Oについてはディスクの優位性は揺るぎそうにありません。