NVDIMMの特長と用途

NVDIMMの概要

2016年現在、メモリのDIMM規格はDDR4が最新です。DDR4にNVDIMMという新たな規格が追加されました。では、NVDIMMとはどのような規格なのでしょうか。

NVDIMMとは、Non-volatile memory(不揮発性メモリ)の性質を持ったDIMMという意味で、メモリの基盤に高速な不揮発性メモリ(DRAM)用いたメモリの規格です。その名の通り、DIMMスロットに装着します。不揮発性メモリは、電源を供給せずにデータを記憶できるメモリを指します。DRAMとNANDを組み合わせる方式で使用するのが現状の使い方です。NVDIMMが誕生した背景には、メモリI/OがPCの性能におけるボトルネックとなっていたからです。この状況では、メモリとストレージ間のレイテンシーを解決しなければならず、解決策として提示されました。メモリとストレージ間のデータ転送を高速化するとともに、メモリへデータ保存ができるため、NVDIMMは一時的なバックアップができます。つまり、メモリとストレージの役割を相互に補完できるのです。

NVDIMMはどのように機能するか

NVDIMMの動作について見てみましょう。

まず、通常動作時はDDR3 DRAMモジュールのような機能です。しかし、停電時になると、NVDIMMがバスから隔離されます。スーパー・キャパシタがホールド・アップ電力をモジュールに供給し、一時的にオンボード・フラッシュへデータを保存します。保存作業が終わると、NVDIMMモジュールはシャットダウンするという方式です。電力が復旧すると、スーパー・キャパシタが再充電されます。その後、データはフラッシュからDRAMに復旧され、ホストシステムが起動し、停電直前の状態で使えるようになります。

3種類のNVDIMM規格

NVDIMM規格の仕様は、「NVDIMM-N」、「NVDIMM-F」、「NVDIMM-P」の3種類があります。現在、N、Fは具体的な仕様の策定が決定していますが、Pについては使用方法の提案が行われている段階です。それぞれの用途を見てみましょう。NVDIMM-Nは、同じ記憶容量の中にDRAMと不揮発性メモリを混載したDIMMです。平常時はDRAM DIMMとして機能しますが、電源遮断時には不揮発性メモリを使い、バックアップメモリとして使われます。CPUおよびOSからアクセスできるのはDRAMだけです。なお、NVDIMM-Nはすでに実用化されています。NVDIMM-Fは、不揮発性メモリのみを搭載し、DRAMがないDIMMです。CPUやOSからはストレージとして認識されており、不揮発性メモリとしての役割を果たします。NVDIMM-Nより記憶容量が大きく、メモリならではの十分な高速データ転送も可能です。ただし、ストレージとしての側面が強いため、データ転送のスピードはNVDIMM-Nと比べると大きく劣ります。NVDIMM-Pは、DRAMと不揮発性メモリを混載していますが、NVDIMM-Nよりも不揮発性メモリの記憶容量が大きく、NVDIMM-Fでの動作モードも備えている点です。この場合、DRAMはストレージ用のバッファとして利用できます。

NVDIMMの用途

PCIeフラッシュのスピードを上回るNVDIMMは、ログへの書き込み時間を1/8に減少、データの読み込みスピードを16倍にできるという実験結果も出ています。一方で容量の少なさが課題となっているため、容量が少ない部分またはライトバックキャッシュに使う方法が考えられています。なかでも注目を集めている方法は、データベースを高速化して、ビッグデータを活用するためのサーバーという用途で、NVDIMMの使用が考えられています。これまでデータベースの高速化のボトルネックは、その大半がストレージI/Oでした。従来はフラッシュテクノロジーで解消するのが一般的でしたが、これでは急激なアクセス増加に対応できません。データベースを高速化するにあたって、全データをメモリ上に展開するという手法もあります。しかし、これではコストが大幅にかかってしまい現実的ではありません。データベースを高速化してもストレージへログを書き込み続ける必要がありました。NVDIMMはこの課題を解決できるメモリ規格です。サーバーのメモリスロットに装着し、通常のストレージとして機能させます。すると、高速ストレージとして働くため、アプリケーションを修正せずにログを書き込めるのです。大幅な高速化とコスト削減を両立できるのが、NVDIMMの大きな魅力と言えます。

ビッグデータを高速で扱うNVDIMM

NVDIMMは巨大なデータベースを高速で扱えるメモリです。Windowsサーバーとの相性はありますが、ユーザー視点からはほとんどの環境で安定した性能を発揮します。ローコストでハイパフォーマンスを達成できるので、高速でビッグデータを扱いたい人や企業の間で活用されるのではないでしょうか。

なお、TintriのTintri VMstore T5000オールフラッシュシリーズでは高速なNVDIMMが採用されており、仮想化環境において安定した性能を発揮することに大きく寄与しています。

 

2016年現在、メモリのDIMM規格はDDR4が最新です。DDR4にNVDIMMという新たな規格が追加されました。では、NVDIMMとはどのような規格なのでしょうか。

NVDIMMとは、Non-volatile memory(不揮発性メモリ)の性質を持ったDIMMという意味で、メモリの基盤にDRAMという高速な不揮発性メモリを用いたメモリの規格です。その名の通り、DIMMスロットに装着します。不揮発性メモリは、電源を供給せずにデータを記憶できるメモリを指します。DRAMとNANDを組み合わせる方式で使用するのが現状の使い方です。NVDIMMが誕生した背景には、メモリI/OがPCの性能におけるボトルネックとなっていたからです。この状況では、メモリとストレージ間のレイテンシーを解決しなければならず、解決策として提示されました。メモリとストレージ間のデータ転送を高速化するとともに、メモリへデータ保存ができるため、NVDIMMは一時的なバックアップができます。つまり、メモリとストレージの役割を相互に補完できるのです。