マイクロンが256GBメモリエクスパンダーでCXL 2.0に参入

Table of Contents

マイクロンが256GBメモリエクスパンダーでCXL 2.0に参入

Micron は、最大 256GB の DRAM を予備の PCIe x8 インターフェイスに取り付けることができる Compute Express Link (CXL) 2.0 準拠のメモリ拡張モジュールを発表した最新のチップメーカーとなりました。

CXL規格の開発は2019年初頭に本格的に開始されましたが、AMDとIntelの互換CPUが容易に入手できるようになったのはごく最近のことでした。両社の第4世代EpycとXeonが、この規格をサポートする最初の製品です。

この技術は、PCIe上にCPU、メモリ、アクセラレータ、その他の周辺機器を接続するためのキャッシュコヒーレントなインターフェースを定義します。しかし現時点では、実用的なアプリケーションはすべて、NVMe SSDを接続するのと同じようにDRAMをPCIeインターフェースに接続することを中心としています。これは、MicronがCZ120メモリ拡張モジュールで発表したものと基本的に同じで、実際には一部のデータセンターSSDに見られるE3.S 2Tフォームファクタを採用しています。

ネットワーキング概要

CXLに今注目すべき理由

続きを読む

モジュールは128GBと256GBの容量で提供され、36GB/秒の帯域幅を実現できる「独自のデュアルチャネルメモリアーキテクチャ」を採用しています。 

PCIe 5.0 x8インターフェースの転送速度は32GB/秒程度に過ぎないため、Micronがどのようにしてこれを実現したのかは定かではありません。チップメーカーにコメントを求めましたが、推測するに、チップメーカーはホストシステムではなく、DRAMからCXLコントローラに提供されるメモリ帯域幅を引用していると思われます。

これらは誰のためのものですか?

Micronは、これらのモジュールの主な使用例を2つ挙げています。1つ目は、増大するワークロードに対応するためにメモリ容量を「段階的に」追加できることです。例えば、CPUのメモリ容量が限界に達している場合、CXLモジュールを数枚挿入するだけで、マルチソケット・プラットフォームに移行することなく、既存のシステムに容量を追加できます。Micronによると、CZ120モジュールを8枚使用することで、システムメモリを最大2TBまで拡張できるとのことです。

2つ目のユースケースは、メモリ帯域幅が制限されるワークロードです。これは、高性能コンピューティングアプリケーションでよくあるボトルネックです。システムのメモリ帯域幅が限界に達している場合、CXLメモリモジュールはそれをさらに拡張する方法を提供します。MicronのCZ120の場合、モジュール1つにつき36GB/秒のメモリ帯域幅を追加できます。つまり、前の例の8つのモジュールは、256GB/秒の帯域幅も追加できることになります。

レイテンシを気にするなら、PCIe経由でメモリを接続するのは悪い考えのように思えるかもしれません。メモリDIMMがソケットにできるだけ近い位置に詰め込まれるのには理由があります。しかし、レイテンシは思ったほど大きな問題ではありません。実際、レイテンシはデュアルソケットシステムにおけるNUMAホップとほぼ同等と言われています。

  • Astera Labsは、CXL技術によりDDR5をPCIeスロットに挿入できると発表
  • 非バイナリDDR5がついに登場し、お財布を節約
  • AMD、Intel、Nvidiaはコアの飢餓をいかに防いでいるのか
  • CXLに今注目すべき理由

Micronがリリース時には言及しなかったものの、理論上はモジュールでサポートされるはずのユースケースの一つがメモリプーリングです。この機能は仕様バージョン2.0で導入され、CXLメモリモジュールをホスト上の複数のプロセッサからアクセスすることを可能にします。つまり、マルチソケットシステムやCXL互換アクセラレータをお持ちの場合、これらのプロセッサもこのメモリを活用できるはずです。

MicronのCZ120は現在、顧客向けにサンプル出荷中です。しかし、MicronがCXL 2.0互換製品を発表するのは初めてではないことは注目に値します。Samsungは5月に128GBのE3.SフォームファクタCXLメモリモジュールを発表しました。一方、Astera Labsは昨年からLeo-Pシリーズチップの売り込みを続けています。

CXLの次のステップ

CXL関連の初期のアプリケーションの多くはメモリ中心でしたが、相互接続ははるかに柔軟性に優れています。昨年導入されたCXL 3.0仕様により、スイッチファブリックのサポートが追加され、完全に分散化されたアーキテクチャへの道が開かれました。

複数のホストCPU間でメモリをプールするだけでなく、ストレージ、ネットワーク、GPUなど、あらゆるデバイスにCXLファブリック経由でアクセスできます。つまり、GPUバンクへのアクセスを単一のサーバーに限定するのではなく、CXL対応のGPUアプライアンスを1つ用意し、複数のクライアントから同時にアクセスできるようにするのです。

この考え方は、多数のネットワーク スイッチを接続して、ネットワークの両側のクライアントが反対側のシステムと通信できるようにするという考え方と実質的に変わりません。ただし、イーサネット上の TCP と UDP の代わりに、PCIe 上で実行される CXL について話している点が異なります。

しかし、このビジョンの実現はまだ数年先です。チップメーカーはCXL 1.1のサポートを開始したばかりですが、AMDのEpycのように、メモリデバイス向けにCXL 2.0を既にサポートしているメーカーもあります。CXLの完全な機能セットが成熟するまでには、まだしばらく時間がかかるでしょう。®

Discover More