ストレージとメインメモリの境が無くなる時代が到来するかもしれない

「メモリ何GB?」「128GB」

メモリと言ったらSDRAMであってSSDでは無い。このことはPCを語る上で常識のように語られています。メモリの容量を聞かれてストレージの容量を答えてしまうというミスは、PCに詳しくない人がやりがちなミスとして、もの笑いの種になっています。しかし現在、フラッシュメモリの高速化は留まるところを知らず、HPCなどの分野ではフラッシュメモリをメインメモリ化する案が浮上しているほどです。メモリとストレージの差について再考してみましょう。

メモリと言う概念のルーツ「ノイマンアーキテクチャ」に立ち返る

メモリと言う概念のルーツはコンピューターの原型にあたるノイマンアーキテクチャにあるでしょう、ノイマンアーキテクチャには以下のような装置があります。

  • 入力装置
  • 出力装置
  • 中央演算装置
    • 制御装置
    • 数値/論理演算装置
  • 記憶装置

記憶装置は、オリジナルではメモリユニットと呼ばれていて、命令やデータを置いておく場所とされています。一般的に言うメモリは記憶装置にあたります。またストレージも記憶装置に分類されます。メモリは電源を落としたらデータが飛んでしまう揮発性メモリを指し、ストレージはデータが飛ばない不揮発性メモリを指すのが一般的です。

現在のメモリシステムは様々な記憶媒体が階層構造となりメモリヒエラルキーを構成しています。メモリヒエラルキーの頂点にはL1キャッシュが位置していて、通常L2キャッシュやL3キャッシュなどが後に続き、メインメモリのSDRAM、ストレージのNANDフラッシュメモリ、バックアップ用の磁気ドライブへと続きます。階層の上位ほど高価で高速なものが採用され、下位ほど安価で容量が確保できる低速なものが採用されます。

メモリヒエラルキーの役割は演算装置に渡すための命令やデータを置いておくことなので、メモリヒエラルキー全体がノイマンアーキテクチャで言うメモリユニットの実装であると考えることが出来ます。ストレージとメモリを全く別のものと考えるのは、ノイマンアーキテクチャに立ち返れば正しい見方とは言えないと思います。

SSDの登場により、ストレージに当たる階層がSDRAMに近づいて来た

現在、SSDという高速ストレージが登場し、メインメモリの階層とストレージの階層の境が曖昧になりつつあります。

SSDの近代的な接続方式にM.2というものがあります。内部的にPCIeを4レーン使う接続方式です。PCIe 3.0の帯域は1レーンにつき片方向1GB/sなので、M.2の最大の帯域幅は4GB/sということになります。これは初代DDR SDRAM 500MHzのシングルチャネルと同じ数値です。規格上の最大値と実効速度なのであまり良い比較とは言えませんが、SSDがSDRAMに近づいていると言うことは出来るかと思います。

SSDにはRAIDを組むという選択肢もあります。M.2規格のSSDを2つRAID0で接続したとして、最大の帯域幅は8GB/s、これはDDR 500のダブルチャネル、DDR2 1000のシングルチャネルと同じ数値です。私が最初に触ったPCのRAMよりも速いです。

十分に高速なSSDにSWAP領域を切ると、SWAPをしていてもほとんど遅延なくシステムを動かせるのです。SSDの更なる高速化によりこの傾向は強まるでしょう。今までメインメモリと呼んでいたものはCPUのラスト・レベル・キャッシュ(LLC)として動作し、SSDに切ったSWAP領域が今までメモリと呼んでいたものになるということもあり得るかも知れません。キャッシュとSRAMの対応、SDRAMとメインメモリの対応、NANDフラッシュとストレージの対応は、それぞれが高速化することで切れる可能性があるのです。

米Advanced Micro Devicesは、同社が開発するワークステーション向けGPU製品Radeon Proに、SSDをVRAMの一部として使う技術SSGを採用しています。内部的にM.2 x2 RAID 0で繋げているようで規格上の最大の帯域幅は8GB/sとなります。VRAMとしては桁違いに遅いですが、従来のVRAMに載りきらなかった超高解像度の動画を編集する際のパフォーマンスは飛躍的に伸びたそうです。超大容量のメモリーとしてSSDを使うという試みは既に始まっています。

超高速フラッシュメモリーは計算モデルを変える

HPCの分野では、フラッシュメモリーの活用は大きなテーマになっています。IoT時代の到来や観測機器の技術革新によって、コンピューターは従来に無いような規模のデータを扱うことになることが予想されています。それに対してSDRAMの容量の向上は全く追いついていません。未来をコンピューターを見据えるのであれば、ストレージとメモリについての見方を変える必要があるのでは無いでしょうか。

Add a Comment

メールアドレスの入力は任意です。(公開されることはありません)