世界のスーパーコンピュータとそれを動かす人々


11月 10, 2015

NVMエクスプレスの見込みと進展

HPCwire Japan

Tiffany Trader

ハイパフォーマンス・コンピューティングのコミュニティは不揮発性メモリエクスプレス(NVMe)技術に関心を始めた。この通信インタフェースおよびプロトコルは、Intel、Micron、DellおよびSeagateを含む80以上のメンバーを有する業界コンソーシアムであるNVM Express社によってSSD用に開発された。その支援者達によれば、NVMeはSSDによって提供される並列処理レベルがホストのハードウェアおよびソフトウェアを完全に利用することができるようにするのだ。HPCにとっては、NVMeは比類のないIOPSと低遅延を確約し、ワークフローを高速化するのだ。

Silicon Mechanicsは、NVMeの読み込み帯域幅がほぼ3Gpbsで約500K IOPsを出すと報告している。同じソースでも、「SATA SSDと比較した場合、NVMeは6倍の性能を提供し、半分のレイテンシと倍のCPU効率を提供する」と語っている。

ではNVMeとは何か?

NVMエクスプレスは、不揮発性メモリのためにゼロから設計されたスケーラブルなホストコントローラのインタフェースである。仕様では、最適化されたレジスタ・インタフェース、古いプロトコルやストレージバスのボトルネックを解消するためのPCIeストレージデバイス用のコマンドセットと機能を定義している。エンド・ツー・エンドのデータ保護、拡張されたエラーレポート、および仮想化のような、エンタープライズ機能もサポートされている。

Bright Computingのブログでは、Drew Robbが
NVMeをアプリケーション性能を高速化するために考慮すべき技術として強調している。

インメモリ・アーキテクチャは、HPCに利用されるアプリケーションに最高レベルの性能を提供する最近の技術革新である。コストを無視した場合、全てをインメモリで行うこととなる。これを回避するために、多くの実装が、固体素子ドライブ(SSD)の形で、もしくはPCIeを使ってプロセッサのそばにフラッシュを設置するなど、フラッシュで処理とメモリを強化させることができたのだ。

PCIeはHPCに多くの帯域幅とより低いレイテンシを提供しており、PCIe Gen 3はレーン当り約7.87 Gbpsをサポートしている。しかし、PCIeをプラットフォームで採用する主な障害のひとつは、比較的のろいハードドライブのために開発された年月が経過したSATAおよびSASプロトコルに依存していることだ。結果として、あまりにも多くの計算が起きると大きな待ちキューが発生する。不幸にも、SATAの場合、キュー当たり最大32コマンドを保持することができるたった1個のコマンドキューしか持っていない。それに対してNVMeは65,536(64K)のキューを持ち、各キューは64Kのコマンドを保持することができ、より小さい時間枠内でより多くの生産性が可能となるのだ。

さらにIntelのDave Akersonからの情報もある。OFAデベロッパーズ・ワークショップ(スライド)で彼がNVMeについて説明した最近のチュートリアルにおいて、HPCにおける本技術の価値に関する会場からの質問に対し次のように回答した。

「性能の観点から言うと、実際に20台のハードディスクドライブを現在の1台のSATA SSDに置き換えて同等の性能を得ることができます。NVMeエクスプレスのPCIeドライブの場合には、5台のSSDを1台のPCIエクスプレスで性能を得ることが可能です。」と述べている。「コストの面では、SATA SSDはギガバイト当たりのコストにおける取得コストに関する限り少し割高ですが、現在持っているハードディスクドライブで出来ることより少ない量のSSDでも実行することができます。なので、ここでコスト削減をすることができるのです。さて、PCIエクスプレスSSD対SATA SSDについては、そうです、現在あなたは更なる性能のためのわずかなプレミアムのお金を払っているのです。時が経つにつれて、そして2,3年以内におそらく、PCIエクスプレスとSATAはおおよそ同じコストとなるでしょう。」

NVMエクスプレス仕様のバージョン1.0は2011年3月1日にリリースされている。NVMエクスプレス社は2014年11月12日に1.2仕様のリリースを発表しており、「新しいレベルのエンタープライズとクライアント機能」と付け加えている。NVMeのデバイスは現在、Samsung、Intel、Silicon Mechanics、HGSTおよび他から出荷されている。

このコンソーシアムはまた、NVMエクスプレスのメリットをイーサネット、InfiniBand、ファイバーチャネルのようなファブリックに持ってくるように仕様を開発している。2015年末に予定されている標準ファブリック上のNVMエクスプレスは、NVMeを「PCIエクスプレスを使うよりもより適している所で、接続点としてファブリックを使って数百の固体素子ドライブを利用」方向に拡張する。作業は非常に迅速に進んでいる:中でもMangstorとMicronはすでにMellanox製品を使った予備製品をデモしている。

Mellanoxのブログより:

前述したように、Mangstorはファブリック・ソリューションにおけるアップグレードしたNVMeで戻ってきた。彼らのNX6320フラッシュ・ストレージ・アレイは、現在100Gbイーサネット用のMellanox ConnectX-4をサポートしており、14M(百万)IOPを実行することができる。複数のMangostorアレイを使った構成ではスループットで50GB/s(50毎秒ギガバイト)を出すと言う噂もある。

Micronはファイブリック上のNVMeをデモしており、非常に低レイテンシで数百万IOPSをサポートしている。これもまた56GbのMellanox ConnectX-4アダプタを使用している。

Mellanoxの結論?

不揮発性メモリ(NVMEM)はさらに速くなってきている。ハードドライブを単に置き換えるだけでなく、顧客が少ないDRAMと多くのNVMEMでサーバを作るようにすることでDRAMに取って代わろうとしており、コストを下げながらアプリケーションの性能を上げるのだ。

来週のSCでの彼らの動きをキャッチして、皆さんに状況を報告しよう。

テクニカルでない方、もしくはNVMeに馴染みのない方で、ハンディーなレファレンスをお探しなら、CiscoのJ Metzによる“NVMe for absolute beginners”が良いでしょう。