ニュース
[GDC 2013]次世代CPU「Haswell」搭載Ultrabookは,今よりもゲームが得意になる? Intel,導入する拡張を解説
その内容の多くはソフトウェア開発者向けとなる専門的なものだったが,セッション中ではたびたび,Intelが2013年中の市場投入を予定している次世代CPU「Haswell」(ハスウェルもしくはハズウェル,開発コードネーム)で統合されるグラフィックス機能(以下,統合型GPU)に関する言及があった。本稿でレポートするのは,そんな「Haswellの統合型グラフィックス機能」についてとなる。
PCゲーマーの数はゲーム機のユーザーより3倍も多い?
Matt Ployhar氏(Senior Product Planner, Intel)。最近あまり活動実績を聞かなくなってしまったが,「PC Gaming Alliance」の代表でもある人物だ |
Ployhar氏は,「ノートPCとタブレット端末,スマートフォンを含めると,出荷されるコンピュータデバイスの80%はモバイル向けになっている」という現状を説明。そのうえで,「PCゲーマーの数はゲーム機のユーザーと比べて3倍,そして,コンピュータの80%はモバイル向けだ。そうなると,モバイルPCたるUltrabookはゲームメーカーにとって魅力的な市場ということになる」と論を展開した。
PCゲーマーの数はゲーム機のユーザー比で3倍に上るというスライド。世界規模で新興国市場なども含めれば,確かにあり得る数字とは言えるかもしれない。なおスライドにはほかにも,PCゲームのメリットとして,ロイヤリティが発生しないことなども列挙されている |
Haswellでは,DirectX 11.1に対する
独自の拡張が提供される
さて,そんなUltrabookだが,「Ultrabookに最適化されたゲーム」の増加を阻む要素が,統合型GPUの性能であることは言を俟(ま)たないだろう。そうした事情もあってか,午前中に行われた講演のテーマはすべて統合型GPU機能というほど,Intelは力を入れていた。
なかでも注目すべき話題だったのが,Haswellの統合型GPUでサポートされるという,Intel独自の拡張機能だ。
Ployhar氏が示したHaswellにおける統合型GPUのブロック図。ただし,今回の主眼はグラフィックスアーキテクチャではなく,あくまでもHaswell向けソフトウェア開発だ |
Haswellの具体的な解説は,IntelシニアアプリケーションエンジニアのSteve Hughes(スティーブ・ヒューズ)氏による講演,「Breaking the Rules on a GPU」(GPUの縛りを打ち破る)の中でなされた。
Steve Hughes氏(Senior Application Engineer, Intel) |
Hughes氏が見せたスライドでは,講演タイトルがちょっと下品な言い回しに改題されていた。テーマは第4世代Coreプロセッサ(Core 4)のDirectX 11の拡張についてだ |
Hughes氏によると,HaswellではDirectX 11に対して,Intel独自の拡張が2種類提供されるという。
そのひとつは,「CPUから統合型GPUのメモリを参照できる」というものだ。CPUから単体GPUのメモリを参照しようとした場合,アクセスには必ずPCI Expressを経由しなくてはならないので,性能面で大きなボトルネックになる。しかし「IntelのGPUはUMA※1だから,(PCI Expressを経由することなく)ポインタの共有が可能なのだ」と強調していた。
※1 Unified Memory Architectureの略で,CPUとGPUが同じメモリを共有する構造のこと
単体GPUのメモリはPCI Express経由で接続されるので,CPUから見ると遠くにある。だが,システムメモリならCPUの近くにあって帯域が太いから,UMAはPCI Expressのボトルネックとは無縁で済む……という話 |
「UMAだからメモリが共有できる」というのは,CPUやチップセットについて詳しい人ならば,「同じメモリを使うのだから,共有できるのが当然じゃないか?」と考えるかもしれない。だが,実は当たり前ではなかったりする。Hughes氏はこの理由について,「メモリ管理の仕組みが,CPUとGPUで異なるからだ」とシンプルに回答しているが,実際にこれこそが,UMAでメモリ共有ができない最も大きな理由だ。
Haswellの統合型GPUで提供される拡張機能でも,この問題が完全に解決できるわけではないと,Hughes氏は述べている。なぜなら,拡張機能によって「CPUが統合型GPUのメモリを参照できる」ようには確かになるのだが,「統合型GPUがCPUのメモリを参照する」ことは依然として行えないからだ。統合型GPU側でCPUのメモリを参照させたければ,結局はCPUから統合型GPUへのメモリコピーが必要になってしまうのである。
しかし,競合であるAMDのAPUでは,CPUコアとGPUコアでメモリを共有するにあたって,より高度な仕組みが導入されている。APUにおけるメモリ管理法の説明は割愛するが,簡単にいえば(いくつかの条件付きではあるものの)CPUコアとGPUコア間の相互メモリコピーが不要になっているのだ(関連PDF ※クリックするとファイルを開きます)。
つまりHughes氏の発言は,Haswellの統合型GPUでも,APUほど踏み込んだ実装はしていないこと意味しているわけである。
その一方で,HaswellにはAPUにない利点もある。APUでは,OpenGLに対する拡張機能は提供しているものの,Direct X向けの拡張は提供していない。これは(Microsoft以外による)DirectXの拡張が難しいためだが,IntelはそれをHaswellで提供するという。
Haswellで提供するDirectX 11の拡張API。「CreateSharedTexture2D」というヘルパー関数と,「CopyResource」というトラップが提供される。CopyResourceは,GPUからCPUのコピーであれば,コピーせずに参照のみを関連付ける |
透過ポリゴンを正しく透けさせるAdaptive Transparency
Haswellは拡張関数を提供して使いやすく
透過色のポリゴンを,図のように順序正しく描くアルゴリズムは,結構コスト高になる |
透過ポリゴンであってもZ値を持つので,手前に透過ポリゴンがあると先にそれが描かれてしまい,本来は透けて見えるはずのポリゴンが正しく表示されない。「これは,非常に古くからある問題だ」(Hughes氏)。
Intelは2011年のGame Developers Conferenceで,この問題を解決する手法として,DirectX 11で導入されたピクセルシェーダからランダムアクセス可能なバッファ「Unordered Access View」(UAV)を使う「Adaptive Transparency」(適応型透過,関連リンク)を発表していた。
Adaptive Transparencyは2パス方式の手法で,おおまかに説明すると以下のような処理を行う。
- 1回め:UAVにピクセルごとの深度(Z値)と色,α値を書き出す。
- 2回め:UAVのデータを元に,ピクセルシェーダで計算して描画する。
Adaptive Transparencyにもいろいろと問題があった……というスライド |
Haswellで提供される2つの拡張関数。ひとつは初期化の関数で,もうひとつがシリアライズを開始する関数だ |
そこでIntelはHaswellで,ランダムな順序でUAVに書き込まれたピクセルを,プリミティブ順に順列化(シリアライズ)するHLSL(High Level Shader Language)の拡張関数を2種類提供する。これはHaswellの統合型GPUで搭載される機能を使ったもののようで,基本的に処理コストをかけずに順列化できるのだという。Hughes氏いわく,「この拡張によって,Adaptive Transparencyのような重い処理の負担が軽減される」とのことだ。
なお,これらの拡張については近々サンプルコードなどが提供されるということなので,詳しく知りたい人はAdaptive TransparencyのWebページをチェックしておくことをお勧めする。
Coreプロセッサ統合型GPUへの最適化も指南
グラフィックスに関しては,「Using DX11 for Intel 3rd and 4th Generation Core Processors」(第3&第4世代Coreプロセッサにおける,DirectX 11の使い方)と題する実践的な講演も行われた。GPU全般に通じる最適化の話が中心だったが,その中でも,Coreプロセッサの統合型GPUシリーズに特化した最適化手法についてが興味深いので,簡単に説明しよう。
上のスライドでは,まず「メモリ帯域幅に注意すべし」とある。具体的には,「テクスチャは圧縮すること。色深度は必要以上にしないこと」とアドバイスされている。スライドの最後にも記されている,「GPUとCPUが帯域を共有していることを思い出せ」にも通ずる話だ。
また,「コストの高いMSAAは使わず,FXAAなど代替手段を使うこと」と,ポストプロセスを用いた,GPU負荷の低いアンチエイリアシング技法の使用も推奨された。「FXAAの品質はMSAAと大差がない」とのことで,MSAA以外のアンチエイリアシング技法には,Intelでも注目しているようである。
電力効率に関する説明スライド |
Haswellの統合型GPUで,AMDやNVIDIAのミドルクラス市場向け単体GPUと戦っていけるだけの性能を獲得するわけではない。しかし,現行世代の第3世代Coreプロセッサにおける統合型GPUと比べると,飛躍的に性能も機能も引き上げられることになる見通しだ。
Ployhar氏が述べていたように,ゲームプラットフォームとして見たUltrabookの魅力は,性能の向上と,本稿で紹介した機能面の拡張とによって,Haswell世代で確実に向上するだろう。
GPU Technology Conference公式Webサイト(英語)
- 関連タイトル:
Core i7・i5・i3-4000番台(Haswell)
- この記事のURL: