GTC 2015においてDDN(Data Direct Networks)のJeff Sissili氏が同社のバーストバッファテクノロジについて発表を行った。Data Direct Networksという社名になじみのない読者も多いかと思うが、同社はスパコン用の並列ファイルシステムのトップメーカーであり、独特の赤い筐体は多くのスパコンセンターで目に付く存在である。
従来のスパコンは多くの計算ノードを持ち、それらの計算ノードの必要とするディスクI/Oに耐えるR/Wバンド幅を持つディスクを設置している。京コンピュータで言えば、3階は計算ノードの筐体で埋まっているが、1階はディスク筐体で占められており、1TB/sを超えるR/Wバンド幅を持っている。
DDNの次世代ストレージのアプローチは、計算ノードと物理的なストレージを切り離して、少ない数のストレージで必要な性能を実現するというものである。
DDNはこの仕掛けを「Infinite Memory Engine(IME)」と呼んでいる。IMEのクライアントはコンピュートノード、あるいはI/Oノードに常駐し、I/Oコールをインターセプトする。そして、独自の軽いプロトコルを使ってIME Burst Bufferに対してI/Oを行う。このとき、Burst BufferはLustreやGPFSと言った標準のファイルシステムのようにアクセスすることができる。
IMEサーバはキャッシュのように働き、使用頻度の低いデータは下位の並列ファイルシステムに追い出し、使用頻度の高いデータをBurst Bufferに置くような制御を行う。また、ハードディスクで実現されている並列ファイルシステムへの書き込みをまとめて書き込み回数を減らすような制御も行う。
計算ノード群と並列ファイルシステムとの間にIMEバーストバッファを置く。IMEバーストバッファはキャッシュとして働き、計算ノードからのアクセスのバンド幅の向上、レーテンシの短縮を実現し、並列ファイルシステムへのアクセスを減らす |
ファイルI/Oに必要なバンド幅は時間によって変化するが、99%の時間はピークの33%以下のバンド幅しか必要とせず、70%の時間はピークの5%以下と言う。
IMEが無い場合は、要求されるピークのバンド幅を持つ並列ファイルシステムが必要であるが、IMEを使うと、ピークバンド幅に対応できるSSDで作られたバーストバッファがあれば良い。そして、大容量ハードディスクで構成される並列ファイルシステムに必要とされるバンド幅は、ピークではなく、平均のバンド幅で済む。ただし、平均を超えた期間のR/Wが途切れないだけのSSDの容量と、並列ファイルシステムとのデータの入れ替えを行う賢いIMEソフトが必要である。
こうなれば、高速のショートストロークなどの容量の少ないHDDではなく、アクセスは多少遅いが、容量の大きなHDDを選ぶことができる。このため、同一記憶容量でも、ディスクの筐体数を減らすことができる。
つまりIMEを使うと、大幅に少ないハードウェア、電力、設置スペースで済むようになる。
通常の並列ファイルシステムでは、ロックが使われたり、小さなI/Oが頻発したり、アライメントの悪いI/Oが行われると、性能が大幅に低下してしまうが、IMEはこのような悪いアプリでもうまく走らせることができる。また、悪いアプリが他のアプリの性能にも悪い影響を与えることを防ぐ。SC14では、悪いアプリが1000倍速く動作する例をデモしてみせたという。
S3Dという乱流の解析アプリは並列ファイルシステムに25GB/sのR/Wを行うが、IMEを使うとバーストバッファへのアクセスは50GB/sを確保でき、アプリから見たバンド幅とレーテンシが改善され、10倍の性能が得られたという。また、並列ファイルシステムへのトラフィックは4GB/sに抑えられる。これにより、100倍の性能向上をSC14でデモしたという。この数字は効果の大きいケースであろうが、HDDのアクセスはSDDと比べるとけた違いに遅いので、大きな性能向上が得られることは間違いないと思われる。
ファイルのロックや小さなI/Oなどによる性能低下が起こらず、性能が1000倍。ファイルアクセスのバンド幅が10倍、並列ファイルシステムへのアクセスが減る効果で100倍の性能向上が得られたケースをSC14でデモした |
Infinite Memory Engineは、バーストバッファのキャッシュ効果と低レーテンシで高速のファイルを実現し、HDDの並列ファイルシステムへのアクセスを減らすことができ、性能の向上、コストダウンの両面で大きな効果がある。
このようにバーストバッファは有望なテクノロジであり、今後のスパコンでの採用が増えて行くと考えられる。また、スパコン以外のサーバでも効果を発揮すると思われる。
このDDNの発表はGPUとは直接の関係は無いのであるが、NVIDIAとIBMが手を組み、POWER9 CPUの世代ではNVLINKをサポートしてPOWER9とNVIDIAのVolta GPUを直結するという話になっているので、今回のGTCではOpenPOWER関係の発表が行われ、その一環の発表である。