Mac業界の最新動向はもちろん、読者の皆様にいち早くお伝えしたい重要な情報、
日々の取材活動や編集作業を通して感じた雑感などを読みやすいスタイルで提供します。

Mac Fan メールマガジン

掲載日:

ストレージの概念を根底から覆す新しいメモリ「SCM」とは何か?

著者: 今井隆

ストレージの概念を根底から覆す新しいメモリ「SCM」とは何か?

画像:crucial

※本記事は『Mac Fan』2021年3月号に掲載されたものです。

読む前に覚えておきたい用語

15年あまりで急速に進んだ MacのSSD化

この15年あまりでMacの性能は大きく飛躍したが、中でも大きな進化を遂げたのがストレージだ。MacのストレージはFD(フロッピーディスク)に始まり、1980年代後半にHDD(ハードディスク)へと移る。そして、その後20年以上HDDが主役の時代が続いた。

変化が生じたのは、2008年1月に初代MacBookエアがリリースされたとき。Mac初となるSSD搭載モデルが用意され、それ以降SSDはMacBookシリーズからデスクトップモデルへと普及が進み、今では全モデルでHDDが廃止され、代わってストレージにはSSDが採用されている。

当初PATA(Ultra ATA)だったSSDのインターフェイスは、SATA(Serial ATA)からPCIe(PCI Express)へ、そのプロトコルも「AHCI(Advanced Host Controller Interface)」から「NVMHCI(Non-Volatile Memory Host Controller Interface)」へと進化を遂げた。

現在ストレージの主役であるSSDの中身は、記録媒体であるNANDフラッシュメモリと、それを管理しストレージインターフェイスへと変換するSSDコントローラで構成されている。

つまり、SSDは不揮発性メモリを記録媒体としたストレージだ。メモリデバイスである不揮発性メモリをストレージとして使用するのは、従来のコンピュータとその上で動くOSやアプリが、ストレージにプログラムやデータなどのファイルを置いて管理する、というアーキテクチャを採用しているためだ。

よって、SSDは本来のメモリデバイスではなく、HDDなどのストレージの動作を模した仕様になっている。

不揮発メモリのあるべき姿への回帰

SSDの記録媒体であるNANDフラッシュメモリはれっきとしたメモリデバイスであり、そのインターフェイスを見直すことでストレージではなく、メモリとしてメモリバスに接続することが可能だ。

プロセッサに直結されたメモリバスはPCIeやSATAに比べてはるかに高速で、かつアクセスのレイテンシ(遅延)も極めて少ない。

たとえば従来のIntel製CPUを搭載したMacに採用されていたSSDはPCIe Gen.3の4レーン接続で、理論値最大4GB/秒、実力値で約3GB/秒だが、「Apple M1」チップに搭載された4266MHz動作のLPDDR4メモリ(デュアルチャンネル/128ビット)の最大理論値は約68GB/秒に及ぶ。まさに桁違いだ。

この高速かつ低遅延のメモリバスに、不揮発性メモリを直接接続しようというデバイスが、「SCM(Storage Class Memory)」である。ただし、SCMの本来の目的は低速なストレージと高速なメモリデバイスの間に入って、両者の大きな性能格差を埋めることにあった。

しかし、不揮発性メモリの高速化と大容量化が進んだ結果、ストレージをSCMで置き換えることも可能となりつつある。

SCMはすでに実用化されており、たとえばIntelとMicron Technologyが共同開発した「3D XPoint」や、Samsungが開発した「Z−NAND」などがこれに相当する。

Intelの「Optane パーシステント メモリ」は、記録媒体に相変化メモリ「3D XPoint」を使用した不揮発性メモリモジュールで、128GB、256GB、512GBの容量を持つ。NANDフラッシュメモリを用いたSSDに比べて非常に高速で耐久性能も高い。
画像:Intel

3D XPointは3DPCM(相変化メモリ)、Z−NANDは3DNANDベースの独自設計品で、いずれも従来のNANDフラッシュメモリより高速な不揮発性メモリとなっている。

もちろん従来の3D NANDのアクセス方法を工夫することで速度を高めたNVDIMMのような製品もあり、いずれも不揮発メモリをメモリデバイスとして扱う点で共通している。

SCMがもたらすストレージ概念の変革

不揮発性メモリをメモリバスに接続することにより、SCMでは従来の(SSDなどの)ストレージに比べて非常に高速なアクセスが可能になるが、実はそれはSCMの優れた特性の1つに過ぎない。SCMの真意は「ストレージ概念の変革」にある。

現在のパソコンでは、電源を入れるとストレージ上のOSがメモリに転送されて起動し、さらにユーザの指示によってアプリやデータがストレージからメモリに転送されて処理され、その結果が再びメモリからストレージに転送される。

たとえるなら、書棚(ストレージ)にある書籍(OS、アプリ、データなど)の中から自分に必要なものを、自分の机(メモリ)に持ってきて仕事をする、そんなイメージだ。

従来のパソコンではOSやアプリ、データなどはすべてファイルとしてストレージ上に置かれており、これをメモリに転送してプロセッサが処理していた。しかし、全ファイルがメモリ空間上に存在するSCMでは、ファイルをメモリに転送する必要がない。

しかし、SCMではストレージがメモリバス上にあるため、そもそもメモリにロードする必要がない。OSやアプリ(書棚の資料)をわざわざメモリ(机上)に持ってくる必要がなくなり、すべてはプロセッサから直接手が届く場所に存在する。

つまり、SCMによってOSやアプリはメモリに転送することなく瞬時に起動するようになる。さらに、OSやアプリをロードしておく場所が不要になるので、メモリ容量も最小限で済む。

このような優れたSCMの特性を活用するには、システムの対応が欠かせない。一方、AppleはApple M1において「ユニファイドメモリ」アーキテクチャ(UMA)を採用した。これは従来のプロセッサ中心のアーキテクチャではなく、メモリシステムを中核に置き、各プロセッサがこれにアクセスする方式だ。

Apple M1に採用されたUMAでは、広帯域かつ低レイテンシのメモリをM1チップ上に搭載し、同チップ上のすべてのプロセッサがこのメモリを共有する。UMAではメモリと各プロセッサ間が超高速伝送路「ファブリック」で接続されている。
画像:Apple

データを格納したメモリをシステムの中心に置くこの考え方は、SCMと非常に親和性が高い。なぜならUMAとSCMを組み合わせることで、メモリ上のみならずストレージ上のデータに各プロセッサが直接アクセスできるようになり、あらゆるデータへのアクセスが高速になると同時に、データ転送そのものが不要になるためだ。

実はApple M1ではSSD(不揮発性メモリ)の接続先がひっそりと変更されている。従来のIntel Macでは、SSDとプロセッサ間はPCIeで接続されていた。しかし、Apple M1のSSDの接続先は「Apple Fabric」、すなわちM1の中枢神経に相当する、超高速伝送路の「ファブリック」に直結されている。

従来のIntel Mac(上)では、SSDコントローラであるApple T2はプロセッサ上のPCHとPCIe接続されていたが、Apple M1のSSD(下)の接続先は「Apple Fabric」となっており、M1チップ上のメモリと同じ接続方法に変更されている。

つまり、Apple M1内のすべてのプロセッサは、SSDに直接アクセスできるようになっているものと推測される。

今後macOSの最適化と不揮発メモリの高性能化が進めば、Appleシリコンはその圧倒的な性能にさらに磨きを掛けると同時に、Macは将来のパソコンのあり方を変える存在になるだろう。

著者プロフィール

今井隆

今井隆

IT機器の設計歴30年を越えるハードウェアエンジニア。1983年にリリースされたLisaの虜になり、ハードウェア解析にのめり込む。

この著者の記事一覧

おすすめの記事