ニュース
Windows 10環境におけるRadeonとAPUの優位性をAMDがアピール。DX12世代ではマルチGPUのトレンドが変わるか
そんなDirectX 12時代において,自社製GPUやAPUの優位性を強くアピールし続けているのがAMDだ。いわく,DirectX 12世代のアプリケーションにおいて,「Graphics Core Next」(以下,GCN)アーキテクチャは実力を発揮できるとのことなのだが,そのWindows 10リリース時点におけるまとめ的なセッションが,2015年7月28日に,報道関係者向け電話会議として実施された。
まとめということで,語られた内容の多くは発表済みのものだったのだが,いくつか興味深い新情報も含まれていたので,今回は,その内容をひととおりお伝えしてみたい。
ゲームグラフィックス以外でもGPUの機能を積極的に活用
Windows Vista以降のWindowsでは,ゲームグラフィックスや動画再生だけでなく,ウインドウの表示,そしてアプリ内の文字や画像の表示といった一般的な画面描画にもDirectXとGPUを活用している(関連記事)。それがWindows 10ではさらに深化しており,Windows 10に標準で付属するアプリ(以下,標準アプリ)のいくつかでも,AMD製GPUおよびAPUによるアクセラレーションが有効になるという。
その1つが,DirectX 12対応GPUやAPUに統合されるH.264エンコーダ「VCE」およびデコーダ「UVD」の活用だ。たとえば,Windows 10標準の「Xbox」アプリが持つ「ゲーム録画」(Game DVR)機能では,VCEによるH.264ハードウェアエンコードを行える。当然,録画時のCPU負荷上昇は避けられるわけである。
また,同じくXboxアプリの機能である「ゲームストリーミング」でも,Xbox Oneから送られてきたストリーミング映像のデコードにUVDを利用できる。付け加えるなら,Xboxアプリ以外に,無線LAN経由で映像を伝送するワイヤレスディスプレイ機能やリモートデスクトップ機能でもVCEがハードウェアエンコーダとして使われるそうだ。
もちろん,GPUそのものも活用される。Windows 10の新Webブラウザ「Edge」におけるHTML5やWebGLの表示においては,GPUアクセラレーションが有効になる。Windows 10を普段使いしているだけでも,AMD製GPUおよびAPUで恩恵を受けられるというのが,AMDのメッセージなのである。
DirectX 12対応ゲームで,AMD製GPU&APUはIntelとNVIDIAを圧倒する?
DirectX 12の特徴の1つに,メモリバッファ上で描画コマンドやパラメータを形成しておき,GPUを制御するドライバソフトへ渡す処理をマルチスレッドで行えるようになったことがある。これにより,マルチコアCPUの性能を引き出しやすくなって,ゲーム全体の処理効率が上げられると期待されている。
4Gamerでも,グラフィックスベンチマークソフト「3DMark」に導入されている「API Overhead feature test」を使って,この効果を確認しているが(関連記事),今回のセッションでAMDは,同社製CPUやAPUを使ったベンチマークテスト結果を公表した。
それによると,8コアCPUである「FX-8350」を使ってAPI Overhead feature testを実行した場合,DirectX 11では処理に使用するCPUコア数が増えても処理できるポリゴン数は変化しなかった。しかしDirectX 12では,処理に使うCPUの数が6基になるまで,使うCPUコア数が増えるに従って性能が向上したとのことだ。
また,API Overhead feature testで「A10-7850K」と「Core i5-4460」を比較すると,A10-7850Kは約2.5倍高いスコアを記録したという。
CPUだけでなく,GPU側にとっても大きなメリットがある。たとえば「Radeon R9 390」の場合,DirectX 11とDirectX 12でAPI Overhead feature testを実行すると,最大で15倍もの性能差が出たという。NVIDIA製GPUとの比較だと,4K解像度という高負荷条件において,「Radeon R9 290X」が「GeForce GTX 980」に対して約1.7倍ものスコア差をつけたそうだ。
もちろん,DirectX 12のメリットを享受するには,ゲーム側がDirectX 12に対応する必要がある。また,API Overhead feature testがそのままゲームにおける性能差につながるわけではない。ただ,AMD製GPUやAPU,あるいはCPU搭載環境で高速化が図られるのは間違いないわけで,その点では大いに期待が持てるといえるだろう。
DirectX 12ではマルチGPU環境に標準対応
CrossFireやSLIのメリットが高まるか
と,ここまでが既出の話題。
新情報としては,DirectX 12は,標準でマルチGPU環境に対応していると明言された点が挙げられる。
DirectX 11以前のDirectX APIは,マルチGPU構成をサポートしていなかったため,GPUメーカーは,CrossFireやSLIといった独自のマルチGPU構成を,ゲームアプリケーションとドライバ,グラフィクスカードの協調によって実現していた。しかし,DirectX 12では,その状況が大きく変わることになるのだ。
DirectX 12が標準でマルチGPU環境をサポートすることにより,マルチGPU環境における画面の描画方法にも変化が出てくると,AMDは予告している。
複数のGPUを使ってゲーム画面を描画する場合,複数のGPUがそれぞれ1フレーム分の映像をレンダリングする「Alternate Frame Rendering」(以下,AFR)という描画方式と,1フレームの映像をGPUの数だけ水平に分割したうえで,各GPUがそれぞれをレンダリングして最終的に1枚の画面を生成する「Split Frame Rendering」(以下,SFR。Scissorとも呼ぶ)という描画方式が利用されていることを覚えている人もいるだろう。
このうち,AFRは複数GPUへの対応をシンプルに実現できるため,よく利用される方式となっているのだが,ゲーム用途ではちょっと困った欠点もある。ユーザーの操作やゲーム上での変化が画面に反映されるまで時間がかかるため,どうしても映像が若干遅延して見えるのである。
一方のSFRは,1フレームを水平分割するという処理が入るため,マルチGPUへの対応が面倒になる一方,AFRのような遅延は原理上発生しない。そのためAMDは,SFRへの対応をゲームデベロッパ側に呼びかけていたこともあった(関連記事)
DirectX 12に対応することで,ゲームグラフィックスでSFRを利用するのが簡単になるのかどうかまでは言及されなかったが,AMDではDirectX 12でSFRの利用が促進されると考えているようだ。マルチGPUへの標準対応とSFRの活用が進めば,今までは費用対効果がそれほどよろしくない拡張と思われていたグラフィックスカードの複数枚差しが,一般的になっていくかもしれない。
なお,セッションの最後には,AMDプラットフォームに最適化されたDirectX 12対応ゲームの例として,「Deus Ex: Mankind Divided」と「Ashes of the Singularity」の2タイトルが挙げられていた。DirectX 12世代のタイトルを試してみたいと考えている場合は,両タイトルの名前を憶えておくといいだろう。
AMD+DirectX 12テクノロジのWebページ
- 関連タイトル:
Windows 10
- 関連タイトル:
DirectX
- この記事のURL: