ニュース
[GDC 2013]PS4セッションレポート(1)ハードウェアのさらなる詳細が判明。「グラフィックスタスクとGPGPUタスクの同時実行」に対応
最初にお断りしておくと,本セッションの開始時に「写真撮影は禁止」という通達があった。そのため,画面素材は何もない。本稿では適宜,過去の発表会などから写真(など)を流用して紹介していくので,この点はご了承のほどを。
PS4のコンセプトは?
Norden氏はまず,PS4のコンセプトおよびハードウェアスペックのおさらいから話を始めた。
PS4計画では,マルチプレイやネットワークへのフォーカスはもちろんだが,それに加えて,シングルプレイのゲーム体験をシームレスにソーシャルへつなげたり,マルチプレイにつなげることがコンセプトとして掲げられてもいる。
PS4のCPU周り
PS4を追いかけている人達からすると完全に復習的な内容になるだが,メインのプロセッサはAMDのAPU(Accelerated Processing Unit)。CPUコアは「Jaguar」(ジャガーもしくはジャギュア)マイクロアーキテクチャを採用した64bit対応モデルで,これが8基統合される。論理スレッド数を増やすSimultaneous Multi-Threading(以下,SMT)は搭載されないので,8コア8スレッド仕様だ。ちなみに,PS3のメインプロセッサたる「Cell Broadband Engine」(以下,Cell)のCPUコアとなるPowerPCコアは,SMTに対応する1コア2スレッド仕様となる。
キャッシュ容量は,L1キャッシュは1コアあたり命令キャッシュ32KB,データキャッシュ32KBで,(32+32)×8となり,合計512KBだ。L2キャッシュが4コアあたり2MB。合計4MBとなる。
命令実行は,命令に依存関係がない限りは順不同で実行するアウトオブオーダー方式に対応,分岐先の命令を分岐可否判定予測に伴って実行を仕掛ける投機実行機能にも対応する。CellのPowerPCコアだと,こうした機能はカットされていたが,PS4では対応するわけだ。筆者の推測だと断ってから続けると,PS4の各CPUコアは,動作クロック自体はCellより低くなる一方,こうした先進的(というか今日的)なシングルスレッド実行性能のおかげで,性能は相応に高くなるはずである。
話を戻すと,1命令で複数データの演算を行う128bitサイズのSIMD(Single Instruction, Multiple Data)ベクトル演算器も搭載されている。
PS4のGPUはグラフィックスタスクとGPGPUタスクを同時実行可能
現行のGCNアーキテクチャを採用するGPUには,「Southern Islands」(サザンアイランド)系のコアと,「Radeon HD 7790」で採用された「Sea Islands」(シーアイランド)系のコアがあり,どちらがPS4で採用されるのかは明らかになっていないが,いずれにしても大枠の構成は変わらないので,Radeon HD 7000シリーズ――より厳密にいえばRadeon HD 7800シリーズ――系をイメージしておけば,そこから大きくは外れないはずだ。
さて,今回のセッションでは,そんなGPUコアにSony Computer Entertainment(以下,SCE)が盛り込んだ拡張機能に関する説明がなされた。
1つは細かなキャッシュ制御だ。PS4のGPUコアでは,内部キャッシュの活用をプログラマブルに制御できるようになっており,高度なグラフィックス処理はもちろん,GPGPU用途にも威力を発揮するという。
また,デバッグ関連の機能も追加されている。Norden氏によれば,どの処理にどのくらいのサイクルが掛かったのかを解析するのに有効なパフォーマンスカウンタなどが追加されているとのことだ。
演算性能が1.843 TFLOPSに達するということも今回アピールされたが,このあたりはすでに筆者のPS4ハードウェア解説&推測記事でお伝えしているため,詳細は割愛する。ただ,2月時点では公開されていなかったGPUコアクロックが800MHzだと明示されたのはトピックといえるかもしれない。
PSSLは,グラフィックス処理用のシェーダプログラミングと,GPGPU用の(DirectXで言うところの)ComputeShaderプログラミング用の両方に対応した言語システムで,かなりハードウェアに近い部分まで,直接触れることができる設計になっている。前述のキャッシュ制御などはそうした機能の一例というわけだ。
Norden氏が強調していたのは,「DirectX 11.1やOpenGL 4.xをはるかに超えた領域にまでアクセスできる」ということ。性能的には,PS4と同スペックPCがあったとして,その上でDirectX 11.1やOpenGL 4.3ベースのグラフィックスプログラムを動作させたものと比べても,PS4のほうが圧倒的に高い性能で動作できるとのことである。
GPUを汎用目的に利用するGPGPUは,Cellを失ったPS4にとってキモとなるテクノロジーなのだが,前述したようにこれはPSSLから利用することとなる。
また,GPGPUタスクの発行および実行メカニズムにはSCEによるカスタマイズが入っているそうで,なんと,シェーダプロセッサが空いている限り,グラフィクスレンダリングタスクとGPGPUタスクは同時実行が可能という。
なお,Norden氏は明言していなかったが,GCNアーキテクチャの仕様上,実行単位は64基のシェーダプロセッサ(など)をひとまとめにした「GCN Compute Unit」単位となるはずである。
ちなみに現状,PC上のDirectX環境下やOpenGL環境下,あるいはOpenCL環境下において,グラフィックスタスクとGPGPUタスクのオーバーラップ実行は基本的にできない。たとえばNVIDIAのGPUだと,グラフィックスタスクとGPGPUタスクの同時実行が行えないため,明示的な動作モードチェンジを行う必要があるし,Radeonでも,Windows環境下ではそれに近い動作振る舞いになってしまう。
なのでこの部分は,「PS4ならではの大きな特長の1つ」と言っていいだろう。
PS4におけるGPU関連APIの詳細
この点については「ドライバソフトウェアが行っているレベルではない」との説明がなされているが,おそらくは「AMD Intermediate Language」(IL)レベルのところまでだと思われる。昔のことを覚えているユーザーのために言い換えると,「Close To Metal」(CTM)レベル。NVIDIAのGPUでいうところの「PTX」レベルまでということだ。
そして,もしそうであるなら,これは将来――“PS5”のような次世代機や,“PS4.1”のような半次世代機――への互換性維持に向けた配慮と,ネイティブ性能感を両立させるための,絶妙な落としどころだといえる。あまりに“ネイティブすぎる”と,将来の製品との互換性が取りにくくなるからだ。
Wrapとは「サランラップ」とか「クレラップ」とかの「ラップ」,つまり包むという意味で,GPUのネイティブAPIに挟み込まれたAPI変換層のような存在だ。DirectXやOpenGLのAPIコールをネイティブAPIコールに変換するようなものをイメージすると分かりやすい。
元来,こうしたラッパーは遅いというのが定説だが,Norden氏によれば「無視できるほど高速で薄いラッパー」だ。単純シリアルコードが高速なx86の恩恵は,こういったところに現れているのかもしれない。
なお,このWrapper APIはソースコードが提供されるので,開発者側で改良していくことも可能とのことである。
そのほかセッションでは,PS3のGPUに対してPS4のGPUは2世代分新しく,ポリゴン(=プリミティブ)の増減や発現,消失を,CPUの手を一切借りることなく制御できるジオメトリシェーダ,プログラマブルにポリゴン(=プリミティブ)を分割増減させたり変移させたりできるテッセレーションステージ」が追加されていることも解説された。
GDDR5のUMAを採用しメモリバス帯域幅はPS3の8倍に
2月時点の発表と同じく,メモリはGDDR5で,容量が8GBになると説明があった。
採用するのがAPUということもあり,CPUコアとGPUコアは同じメモリ空間を共有するUMA(Unified Memory Architecture)になっている。そのため,たとえば,「GPUでゲームシーンにおける各地点の低解像度な遮蔽情報をレンダリングして,これをCPU側のAIロジックに直接参照させ,キャラクターを的確かつ自発的に遮蔽物へ隠れさせたりする」といった,“CPUとGPUの相互連携型AI”のようなものも実現可能になる。
念のため付記しておくと,UMA自体はXbox 360ですでに採用されており,ゲーム機向けの技術として,それほど目新しいものではない。
ちなみに,メモリ関連でてNorden氏が強調していたのは,メモリバス帯域幅の広さだ。176GB/sという値は,PS3の8倍に相当する。
なお,以上をまとめてNorden氏が,スペック周りについて,「PS4はCPU+GPU+RAMで速い!」という結論を示していたことは付記しておきたい。
PS4のターゲットはコアゲーマー層である
ハイエンドPCの半分くらいのスペックであることはすでに判明しているわけだが,今回明らかになった,グラフィックスタスクとGPGPUタスクの同時実行,そしてUMAアーキテクチャを活かした最新世代x86系CPUの高速シリアルロジック実行が加わると,何か新しいゲーム性のようなものまでが誕生してくるのではないか,という期待感が出てくる。
一方,まことしやかに聞こえてくるウワサによれば,次世代Xboxは,ややカジュアルゲーマー向けに振ったアーキテクチャになっているそうだ。Wii Uもそちら側の路線であることを考えれば,それが良いか悪いかは別の議論として,おそらく「今回の次世代機」戦争において,PS4は唯一の(ハード)コアゲーミング向けのゲーム機となるかもしれない。ある意味で,ゲーマー向けPCがPS4のライバルとなるかもしれないのだ。
というわけでまずはここまで。次の記事では,PS4開発環境に関するレポートをお届けしたい。
PlayStation 4ティザーページ
Game Developer Conference公式サイト
- 関連タイトル:
PS4本体
- この記事のURL: