概要
- Samsung が LPDDR5X-PIM をHot Chips 2026で発表
- DRAM内蔵MAC で内部帯域幅を最大限活用
- 標準メモリコントローラ 互換性を維持しつつ独自計算機能を実現
- ソフトウェア・OS側の対応課題 が依然大きい
- PIMの普及にはメモリサブシステム全体の刷新が必要
SamsungのLPDDR5X-PIM技術概要
- PIM(Processing-in-Memory) の推進により、DRAMチップ内で計算処理を実現
- LPDDR5X-9600 規格準拠の16バンク構成DRAMに、各バンクごとにPIMブロック(MACユニット)を搭載
- 内部帯域幅 は全バンク合計で最大 614GB/s (従来のDRAM外部帯域幅 76.8GB/s と比較して大幅増)
- PIMブロック はMACツリー、レジスタファイル、制御ロジックから構成
- 1024ビット命令レジスタファイル(最大64命令格納)
- 4kbitソースレジスタ(アクティベーションベクトル用)
- 2kbitスケールレジスタ(重み係数のスケーリング用)
PIMブロックの計算性能
- INT8/FP8 フォーマットで各PIMブロックが毎クロック4回のMAC演算を実行
- パッケージ全体で 2.4TOPS (4ビット重みなら倍増)
- 8チップ構成 の場合、合計 9.6TOPS でIntel Meteor LakeのNPU並み性能
- ただし 128GBメモリ 必要でコスト高
標準プロトコルとの互換性・動作モード
- LPDDR5X標準プロトコル を維持しつつ、特定の行アドレスでPIMモード切り替え
- シングルバンクモード:通常動作
- マルチバンクモード:全バンク同時制御で内部帯域を最大活用
- 特殊行アドレス でPIMレジスタアクセスモードに移行
- 通常DRAMアクセスとPIMレジスタアクセスを切り替え
ソフトウェア運用フローと制約
- モデル重み を通常DRAMにロード→PIMモード切替→アクティベーション値等をPIMレジスタに書き込み
- マルチバンクモード でPIMレジスタ書き込みを全バンク同時に実施(SIMD的動作)
- PIMレジスタ初期化後、演算命令投入→結果をベクトルレジスタに格納→DRAMに書き戻し
- アドレス並び替え問題 に対し、Address Align Mode(AAM)で対処
- PIM/非PIM操作の同時実行不可
- 複数スレッドやプロセスが同時にDRAMへアクセスすると、誤動作やデータ破壊のリスク
マルチタスク・OS対応の課題
- PIM領域の分離運用 が必要
- メモリチャネル単位でPIM専用領域を割当て、他用途と帯域を分離
- これによりPIM/非PIM双方の帯域効率が低下
- マルチスレッド/マルチプロセス 環境ではPIM領域アクセスにロックが必須
- OS側でPIM動作中は他スレッド/プロセスをブロックし割り込みも禁止する必要
- プリエンプト時はPIMの全レジスタ状態を退避・復元
- 結果として マルチスレッド性能やシステム応答性が低下
キャッシュ・投機実行との非互換性
- PIMメモリ領域はuncacheable(キャッシュ不可) 指定が推奨
- CPU/GPUのDRAM待ち時間増大で性能低下
- PIMリードはMMIO的動作 (演算副作用あり)
- 投機的ロードやプリフェッチが誤動作を誘発
- 非投機的・キャッシュ不可アクセス が必須となり、CPU性能大幅低下
PIMアーキテクチャの本質的限界
- 各PIMブロックは 自身のバンクにしか高速アクセス不可
- 他バンクとのデータ交換は外部バス経由でボトルネック
- メモリサブシステム全体の設計変更 が普及には不可欠
- 例:DRAMインターフェースに専用計算コマンド追加、キャッシュコヒーレンシ対応
- CPU命令セット拡張(例:「rep macb」命令)などが必要
今後の展望と課題
- LPDDR5X-PIM は標準コントローラ互換で汎用性が高いが、現状ではソフトウェア・OSの対応が困難
- マルチタスク・キャッシュ・投機実行環境 との非互換が普及の壁
- メモリサブシステム全体の刷新・業界標準化 がソフトウェア側の普及促進に不可欠