AMDのResizable BAR実装。CPUからGPU VRAM全域を参照し性能向上
自作PCを構築する際、BIOS設定項目の中で「Above 4G Decoding」や「Re-Size BAR Support」という文字を目にしたことがある方は多いはずです。AMDが提唱する「Smart Access Memory(以下、SAM)」は、これらのベースとなるPCI Express規格の機能を、AMDのCPUとGPUの間で最適化したブランド名称です。
簡単に定義すれば、**「CPUがGPUのビデオメモリ(VRAM)全域に直接アクセスできるようにすることで、データ転送のボトルネックを解消し、ゲームやクリエイティブアプリケーションのパフォーマンスを向上させる技術」**を指します。
通常、CPUがGPUのVRAMにアクセスする場合、一度にやり取りできるデータ量には制限があり、小さな「窓口(アパーチャ)」を通じて断片的にデータをやり取りしていました。SAMはこの制限を撤廃し、VRAMの全容量をCPUに開放します。これにより、特に高解像度テクスチャを多用する最新のタイトルにおいて、フレームレートの向上やスタッター(カクつき)の軽減が期待できます。
なぜこれまで、CPUはVRAMの全域にアクセスできなかったのでしょうか。それは、PCI Expressの古い仕様に基づく互換性の維持のためです。
従来の方式では、CPUはGPUのVRAMを256MBという非常に小さな単位でしか参照できませんでした。例えば、Radeon RX 7900 XTXのように24GB GDDR6という膨大なVRAMを搭載しているカードであっても、CPUは一度に256MB分ずつしかデータを読み書きできず、残りのメモリ領域にアクセスするためには、何度もアドレスを切り替える必要がありました。
この「小分けに転送する」プロセスは、CPUにとってオーバーヘッドとなり、結果としてデータ転送のレイテンシ(遅延)を増加させます。
SAMを有効にすると、CPUはVRAMの全領域(例:16GBや24GB)を単一の連続したメモリ空間として認識します。これにより、CPUは必要なデータがVRAMのどこにあっても、ダイレクトにアクセスすることが可能になります。
この仕組みは、業界標準である「Resizable BAR」に基づいたものですが、AMDは自社のRyzen CPUとRadeon GPUの両方を設計しているため、ドライバレベルでの最適化を深く行っています。その結果、他社製パーツの組み合わせよりも効率的なデータフローを実現しています。
SAMを有効にするには、CPU、GPU、そしてマザーボードの3点がすべて対応している必要があります。また、BIOS設定での有効化と、AMD Software: Adrenalin Editionでの確認が必要です。
SAMを利用するためには、以下の世代以降のハードウェアを組み合わせることが推奨されます。
| 項目 | 必要条件 | 備考 |
|---|---|---|
| CPU | Ryzen 3000 / 5000 / 7000 / 9000 シリーズ | Ryzen 5 3600以降などが一般的 |
| GPU | Radeon RX 6000 / 7000 シリーズ以降 | RDNA 2 / RDNA 3 アーキテクチャ |
| OS | Windows 10 (64-bit) / Windows 11 | 64bit OSが必須 |
| BIOS設定 | Above 4G Decoding $\rightarrow$ Enabled | Re-Size BAR Support $\rightarrow$ Auto/Enabled |
| ドライバ | 最新の AMD Software: Adrenalin Edition | バージョンによって最適化が異なります |
SAMを有効にした際、どの程度の性能向上が見込めるのかは、実行するアプリケーションによって大きく異なります。
SAMの恩恵を最も受けるのは、「CPUがGPUに大量のアセット(テクスチャやジオメトリデータ)を頻繁に転送する必要があるシーン」です。オープンワールドゲームや、高精細な4Kテクスチャを使用するタイトルがこれに該当します。
例えば、4nmプロセスで製造されたRadeon RX 7900 XTXを使用し、PCIe 4.0 x16接続で動作させている環境を想定します。このカードは24GBの高速なGDDR6メモリを搭載していますが、SAMが無効な状態では、CPUは依然として256MBの窓口を通じてのみアクセスします。SAMを有効にすることで、この24GB全域へのアクセス権を得るため、メモリ帯域の有効活用率が高まります。
一方で、CPU負荷が極めて低いゲームや、VRAM使用量が少ない軽量なタイトルでは、性能差は 1%〜2% 程度に留まるか、あるいは全く変化が見られない場合もあります。
PCパーツ業界は常に進化しており、SAMのようなメモリ最適化技術も次なるステージへと移行しようとしています。
2025年から2026年にかけて、PCIe 5.0対応のGPUが市場に浸透することが予想されます。PCIe 4.0の帯域幅が1レーンあたり約2GB/sであったのに対し、PCIe 5.0では約4GB/sへと倍増します。
帯域幅が広がれば、CPUとGPU間のデータ転送速度自体は向上しますが、それでも「どこにアクセスできるか」というアドレス空間の問題(SAMが解決している問題)は依然として重要です。次世代のGPUアーキテクチャでは、SAMの概念をさらに拡張し、CPUだけでなく、AI処理ユニット(NPU)や他デバイスからの直接アクセスを最適化する技術が導入される可能性があります。
AMDの次世代GPU(RDNA 4等)では、メモリコントローラーの設計が見直され、より効率的なVRAM管理が行われる見込みです。これにより、SAMを有効にした際のオーバーヘッドがさらに削減され、より多くのゲームタイトルで標準的に高いパフォーマンス向上が得られる「完全最適化」の状態に近づくでしょう。
また、2026年頃には、ユニファイドメモリに近い概念(CPUとGPUがより密接にメモリ空間を共有する仕組み)がデスクトップPC向けにも深化し、SAMのような「設定による有効化」ではなく、ハードウェアレベルで完全に統合されたメモリ管理が当たり前になると考えられます。
SAMを導入して性能を最大化させるためには、単にスイッチをオンにするだけでなく、いくつかの注意点があります。
Q1: NVIDIAのGPUを使っていてもSAMを利用できますか? A1: 厳密には「SAM」はAMDのブランド名であるため、NVIDIA製GPUでは利用できません。しかし、同等の機能である「Resizable BAR」はNVIDIAのGPU(RTX 30シリーズ以降など)でもサポートされています。AMD製CPUとNVIDIA製GPUの組み合わせでも、マザーボード側でResizable BARを有効にすれば、同様のメモリ全域アクセスによる性能向上が得られます。
Q2: SAMを有効にすると、VRAMの容量自体が増えるのですか? A2: いいえ、VRAMの物理的な容量が増えるわけではありません。例えば Radeon RX 6800 XT のVRAMが 16GB であるなら、有効にしても 16GB のままです。変わるのは「CPUがその16GBをどのように参照できるか」というアクセス効率であり、データの保存容量が増える機能ではありません。
Q3: 設定を有効にしたのに、Adrenalin Editionで「無効」と表示されます。原因は何が考えられますか? A3: 最も多い原因は「CSM (Compatibility Support Module)」が有効になっていることです。CSMが有効な状態では、BIOSでAbove 4G Decodingをオンにしても、OS側で正しく認識されません。BIOS設定でCSMを必ずDisabledにし、再起動して確認してください。また、古いBIOSバージョンを使用している場合は、最新のAGESAコードを含むBIOSアップデートを適用してください。