ニュース
AMD、次世代標準を狙う複数のGPUテクノロジーを披露
「FreeSync」対応モニタ続々登場。「Async Shaders」でVRも加速!
(2015/3/31 13:01)
日本AMDは3月末に実施された記者説明会で、AMD RadeonシリーズGPUでサポートされる3つの最新GPUテクノロジー「FreeSync」、「Liquid VR」、「Async Shaders」について幅広い紹介と解説を行なった。
このなかでゲーマーイチオシとなるのは、最新のディスプレイ同期技術となる「FreeSync」だ。これはゲーム側のフレームレートに合わせてディスプレイのリフレッシュレートを同期させるという、機能的にはNVIDIAの「G-Sync」とほぼ同等の技術となるが、「FreeSync」はVESA標準の技術であり、より多くの対応モニターが発売される見込み。その第一陣は4月には各メーカーから出荷される模様だ。
「Liquid VR」は、Oculus RiftやSteam VR(HTC Vive)など、新世代VRヘッドセットの表示系をGPU/ドライバ側で支援する機能。RadeonのGCNアーキテクチャが実現する非同期シェーダー技術「Async Shaders」の活用により、グラフィックスパフォーマンスと遅延の低減に大きく貢献するという技術だ。
AMDのGPU技術はWii U、プレイステーション 4、Xbox Oneといったすべての現世代ゲームコンソールで採用されていることもあり、ゲーミングの分野では大きな存在感を持っている。そこに加えてVESA標準技術の「FreeSync」をはじめ、これら新たなGPUテクノロジーを投入することでPCゲーム分野でも幅広くGCNアーキテクチャのメリットを提供していこうという狙いだ。以下、各テクノロジーを解説していこう。
適応型VSYNCをのVESA標準「FreeSync」、対応モニタも続々
今回紹介された各テクノロジーのうち、ゲーマーの皆さんがすぐにでもその効果を確かめられるのが「FreeSync」だ。これは前述のとおり、ゲーム側のフレームレートに合わせてディスプレイのリフレッシュレートを同期させる技術。一般的にはAdaptive VSYNC(適応型VSYNC)とも呼ばれる技術だ。
モニターは通常60Hz(16.6ミリ秒に1回)、120Hz(8.8ミリ秒に1回)といった固定レートで画面を書き換えているが、この技術では画面書き換えのタイミングをGPU側で自由に制御でき、垂直同期とゲーム側の描画の非同期性にまつわる諸問題を解決する。
例えばゲーム画面の描画に20ミリ秒かかった場合、60Hz刻みの垂直同期に従う従来のモニターでは画面の出力が最初の16.6ミリ秒に間に合わないため、さらに16.6ミリ秒を待って次の垂直同期でようやく画面を書き換えるシナリオ(VSYNC ON)が一般的だ。この場合フレームレートは半減してしまい、遅延の増大やカクつきを引き起こす。これを避けるため垂直同期を待たずに新しいフレームを出来た先から送り込む方法(VSYNC OFF)もPCゲーム界隈ではよく使われるが、この場合は垂直同期の途中で次のフレームが差し込まれるために、画面の上半分と下半分で1フレームずれて表示されるという“ティアリング”の問題が発生する。
これらの問題を解決するため、ゲーム側の描画が完了した時点でGPUからモニターに信号を送り、「リフレッシュを開始せよ」と能動的に指示できるようにするのが適応型VSYNCのキモだ。これにより、ゲーム側フレームの描画にかかった時間に関係なく、その描画が終わった瞬間にモニターが表示をリフレッシュできるようになる。そのモニターの最大リフレッシュレートを上限として、その瞬間のゲームの描画にあわせて55Hzとか48fpsといった任意のタイミングでモニターが駆動するわけだ。
これによりティアリングは根絶され、遅延も最小化される。ゲーム側としても、常時60fpsが出せないようなヘビーな状況でもフル稼働することができ、柔軟にベストエフォートのフレームレートを出すことができるというわけだ。
ユーザーにとってのメリットも大きい。ティアリングやカクつきがないため、おおむね50fps以上出ていれば従来の60fps同等の滑らかさに見えるし、操作への反応も高められる。この傾向は最大リフレッシレートが高くても同様で、120Hzモニターなら100fpsくらい出ていれば固定VSYNCにおける120fpsと同等に見える。このあたりは既に普及しているNVIDIAの「G-SYNC」でも確かめられるメリットだ。
いいことづくめの適応型VSYNCだが、NVIDIAによる同系統の技術「G-SYNC」はNVIDIA独自の設計が行なわれており、ライセンスフィーの負担や専用のSoCをモニター側に搭載する必要があるなど、モニター側へのハードルが高いという問題があった。それらの問題も解決するのがAMDが採用する「FreeSync」である。
「FreeSync」はVESA標準のオープンな技術であるため、ディスプレイメーカーによるライセンスフィーの支払いが不要である。特殊なチップの搭載も不要。このため結果として、対応モニターは「G-SYNC」対応のものよりもぐっと安価になる。これまで「G-SYNC」対応に二の足を踏んでいたメーカーの参入もたやすい。
実際、4月に発売される予定のLG「29UM67」および「34UM67」をはじめ、Samsung、Viewsonic、Acer、Benq、Nixeusといったメーカーが現時点で11モデルに及ぶ対応モニターの発売を予定。解像度は1,920×1,080から3,840×2,160まで、最大リフレッシュレートは60Hzから144Hzまでと選択肢も幅広く、登場時点から「G-SYNC」以上のバリエーションでモニターを選べるようになる模様だ。同クラスで価格を比較すると「FreeSync」対応モニターのほうがかなり安価であることもあり、既存のRadeonユーザーを中心にスムーズな普及を見せていきそうだ。
VR向けAPI「Liquid VR」、DX12で加速する「Async Shaders」
今回紹介された中でも、より将来を見越したテクノロジーとなっているのが「Liquid VR」と「Async Shaders」だ。
「Liquid VR」は3月のGDCで初めて開発者向けに紹介されたVRヘッドセット向けのAPIで、表示遅延の低減や描画パフォーマンスの向上といったVR品質を高める機能をGPUとドライバのレベルで提供するものだ。
おもな技術構成はNVIDIAが開発するVR向けAPI「VR Direct」とよく似ていて、ヘッドトラッキングの遅延低減機能とマルチGPUによるステレオ映像の出力といった部分が核になっている。
ヘッドトラッキングの遅延低減は、「Oculus Rift DK2」にも実装されているTime WarpingというテクニックをGPU側でも支援するというものだ。Time Warpingというのは、ヘッドトラッキングセンサーから取り込まれたユーザーの位置・角度をもとに1度描画された映像を、描画後のタイミングでもういちどセンサーの値を読み込み(Late Laching)、最新の位置・角度に合わせて描画された映像をずらす(ワープさせる)というもの。これによりヘッドトラッキングの遅延を低減することができるわけだが、「Liquid VR」ではこのプロセスをGPU側で支援することでさらに効率を高める。
マルチGPUによるステレオ映像の描画支援は、VR映像の品質を高めつつ遅延の増加を抑えるという技術だ。マルチGPU構成、AMDプラットフォームではCrossfire構成というが、通常は複数フレームを複数のGPUで分担して描画する方式となっている。このため2GPU構成の場合、2フレームふんのバッファリングが発生するということになる。これはVR用としては致命的な遅延を生み出してしまうため、Liquid VRでは同一フレームにおけるサイド・バイ・サイドのステレオ映像を2GPUで分担描画するというモードを搭載。余計な遅延を生み出さずにマルチGPUのパワーをVRで活用できるというわけだ。
これに加えて独自性があり、面白いのは「Direct-to-Display」という技術。これはOSを介することなくHMDに直接フレームバッファの内容を表示するというもので、表示遅延の低減のほか、OSとHMD間の互換性を向上させるという効能もあるという。
といったコンポーネントで構成される「Liquid VR」をさらに加速させる基盤技術となるのが「Async Shaders」だ。これはもともと最新のRadeonシリーズに搭載されているGCNアーキテクチャのハードウェア的な強みとなっている部分で、それがDirect X12やVulkan、Muntleといった最新のグラフィックスAPIでかつてなく引き出されるようになる、というのがキーになっている。
PS4やXbox Oneにも搭載されているGCNアーキテクチャのRadeonシリーズGPUには、シェーダーエンジンのほかにACE(Asynclonous Compute Engine:非同期計算エンジン)と呼ばれる8コアの汎用プロセッサが搭載されており、複数のタスクを同時に処理できる。「Async Shaders」はこれを柔軟にグラフィックス処理に使おうというコンセプトだ。
例えば完成したフレームに後処理を行なうポストエフェクト処理。これを通常のシェーダーエンジンで行なうかわりにACEを用いて行なうと、GPUタスクの切り替えにまつわるオーバーヘッドが大幅に削減されて高速化が見込める。例えばPS4の「Infamous」では既にこの技術が使われていて、33ミリ秒の描画時間が28ミリ秒に短縮(5ミリ秒の節約)できたという。余った描画時間は当然ながらさらなる映像のリッチ化に使える。
遅延の低減が求められるVR向けの描画においても、「Async Shaders」によってTime Warpingを含むポストプロセス的な処理を緻密にスケジューリングできるようになるほか、フレームレートを一定に保ったまま描画品質の方を柔軟に調整するといったアダプティブな実装も可能となる。
こういったGCNアーキテクチャが持つ「Async Shaders」のメリットは、Direct X12、Vulkan、Muntleといったマルチスレッド処理に最適化された次世代のグラフィックスAPIで最大限に発揮できるようになる。コンソールマシン界隈では既に実績のある技術であるため、Direct X12の登場以降はその効果をPCゲームでもすぐに見られるようになりそうだ。また、Vulkanに対応するValveのSteam MachinesでもNVIDIA陣営とのパフォーマンス比較は面白いことになるに違いない。
いま、AMDはコンソールマシンの世界で培ったテクノロジーを改めてパッケージングし、次世代のPCゲームシーンに投入しようとしている。Radeonシリーズで高く評価されてきたコストパフォーマンスの高さはDirect X12/Vulkan世代のPCゲームでさらに飛躍することになるだろうか。対応ゲームの登場に期待していきたい。