SSDのためのシステムで、SSDのポテンシャルを開花

HDD向けのデフラグメンテーションやプリフェッチはSSDには効果がなく、むしろ不要な書き込みを増やしてSSDの寿命を縮める結果になる。HDD向けのインフラストラクチャでSSDを機能させることは可能だが、それではSSDの潜在的な性能が十分に引き出されない。SSDの標準採用を促すためには、SSD向けのインフラ整備が必要になる。一例としてドライバとスタックの最適化が挙げられた。HDDとSSDでは最適化するターゲットが異なる。HDDでは100μsのオーバーヘッドを上乗せしても、チューンナップによりIOPSの5%で、それぞれに要する5msを半減できれば、結果的に2.5ms×5%で125μsを短縮できる。だがSSDでは、このHDD向けの最適化では効果がごくわずかしか現れず、100μsのオーバーヘッドを相殺できない。わずか100μsとはいえ、パフォーマンスに優れたSSDが無駄な動作から被る損失は大きい。SSD向けにはレイテンシにこだわった効率化が必要になる。

わずか100μsでも、X25-M(SSD)では歴然としたパフォーマンスの差となって現れる

同じマザーボード上でも、チップセットのSATAホストRAIDと、PCIeのSAS RAIDコントローラでは、SSDのランダムリード性能に大きな差が見られる。Grimsrud氏が示した計測結果では4KB転送で、SATAホストRAIDに接続したSSDのIOPSが3.5倍となっていた。今日のコントローラ設計ではSSDを使用する上で、SATA/SASがボトルネックとなり得る。

接続ポートによるランダムリード性能の違い。青がSATAホストRAID、赤がSAS RAIDコントローラ

プラットフォームスケーラビリティも課題の1つだ。1コア/1SSDを1コア/2SSDにするとシステム全体のIOPSは倍近くに増える。ところが1コア/4SSDではCPUが対応しきれずほとんど変化がない。ならば、4コア/4SSDでは1コア/1SSDの4倍近くが得られるはずだが、実際には2倍を少し超えた程度の結果にしかならなかった。Grimsrud氏のチームは4コア/4SSDでのIOあたりのクロックの上昇に着目し、インタラプトを適切なコアへと導くことで理想的なスケーラビリティに近づけているそうだ。

CPUコアとSSDを増やしてもIOPSの伸びは比例しない。Intelは独自技術でスケーラビリティの問題を改善

Grimsrud氏はSSDのピーク性能が注目される傾向にも疑問符を付けた。同氏が示したあるSSDの4KBのランダムライトのIOPS計測データは、最初の数分は80,000IOPSを超えるものの、すぐに10,000~20,000IOPSに落ち込んだ。次に示したSSDは5分以上50,000IOPSで動作し、その後も30,000IOPS以上を維持していた。爆発的ではないが、平均的に高い。80,000IOPSというようなピーク性能は、マーケティングにおいても好まれる。だが実際の使用を考えれば、安定性がともなってこそのパフォーマンスであり、将来的にはピーク性能ではなく、高いレベルでの持続性能が問われるようになるとGrimsrud氏。

将来的には瞬発的なピーク性能(赤線)ではなく、高い持続性(青線)が重視されるとGrimsrud氏

セッションでは、SSD向けプラットフォームの技術コンセプトとしてPCIe SSDのプロトタイプのデモが披露された。PCIe ×8をインターフェイスに300GBのSSD×7を備える。Windows Server 2008で動作するXeon Processor 5500シリーズ×2基、12GBのDDR3(1333MHz)メモリを搭載する小型サーバで、4KBランダム転送の数値が112万IOPSに達した。同等の性能をHDDで実現するには5,000台程度が必要で消費電力は50KWになる。デモシステムの消費電力は400W程度だという。

PCIe SSDのプロトタイプ

112万IOPSを記録