PS4の登場でPCのdGPU至上主義が古いものになるだろう
技術に詳しい方々からPS4アーキテクチャーが高く評価されている理由について、
色々ありますが、分かりやすく解説している記事があったので、以下にご紹介したい。
※dGPUはディスクリートGPUのこと。つまり外部から追加できる単体GPU。性能にこだわる自作PCファンなら必須。
ちなみに、僕の自作PCにはGTX460を入れてあります。
みらいさんの記事:PS4のグラフィック・アーキテクチャはPCゲームにも変革をもたらす
次いでテクスチャデータがHDDから読み出されRAMにコピーされる。その後テクスチャは「ロック」され、RAM上のテクスチャがPCIeバス経由でVRAMにコピーされる。これはPCの最も大きなボトルネックだが、PS4では完全に無くされている。データは共有メモリへ、HDDから直接かあるいはディスクからストリーミングされる。
あるいはPCゲームで破壊可能な環境を作りたいと考えてみよう。その場合、ひどく速いとは言えないCPU上で物理演算を実行し、それからグラフィックスメモリのジオメトリ・バッファを更新する必要がある。あるいはGPUで物理演算をすべて実行し、直接そこでジオメトリを変更することもできるが、そうするとAIがそれを使用できるようにRAM上にそのデータを引き出す方法を考えなくてはならない。
いずれにせよ、VRAMとRAMの両方のジオメトリを管理することになる。一本のPCIeバスを介して、常に両方のコピーを更新するわけだ。繰り返しになりるが、これは大きなボトルネックだ。
一部のPC派が言うには、PCIeバスの帯域幅には全くボトルネックにならないとのことらしいが、完全に間違っていますね。今のゲームの作りならのパフォーマンスはともかく、ゲームを進化させるには、どうしてもボトルネックになりますからね。
いいですね。PC派が主張しがちなdGPU最強説を論破する記事であり、実に気分がいいです。むしろPC業界側には、自らの弱点を反省にアーキテクチャを変革しなければならないですね。それができるかどうかは別の問題ですが。現行のPCアーキテクチャのままで半導体の進化にて性能が向上すれば全て解決できるという考えが続く限り、PC業界の将来は暗いかもしれません。
みらいさんの記事:AMDグラフィックス製品チーフアーキテクト: PS4を本当に気に入っている
彼はまた、ソニーがPS4について明らかにした仕様に非常に感銘を受けているようだ。
「ソニーはエンジニアリングで極めて良い仕事をしたようですね。... CPUとGPUが同じチップにあって、多くの問題が解決されますし。(データをGPUへ投げ、処理結果を取得するような、いったり来たりがいらないので)
みらいさんの記事:OSが軽いPS4が次世代ハードで有利になる?
FXAAの開発者が、PCにはないPS4の強みについて言及しています。
PS4とPCとの差は、ロンチ時にすぐに明らかにはならないないことには注意してほしい。だがロンチ後、PS4の開発者向けツールがそろいさえすれば、この差は現実のものとなるだろう。ハードレベルまで知っているPC技術者として、ハードが本来出せる性能を死ぬほどに知りつつも、しかしMSとハードベンダはPCのAPIでGPUへのローレベルのでアクセスを決して許さないために、その性能を使うことができない。そうしたフラストレーションをこれまでもずっと感じてきた。
簡単な例を一つ挙げると、PCで「drawcalls」を行うと、コンソールでのlibGCMスタイルのAPIを使った場合に比べて、およそ10倍~100倍のオーバーヘッドがかかるのだ。
マーク・サーニー氏も、OpenGL/DirectXよりローレベルからのアクセスができると言及していますので、すなわちPCゲームに比べて、ハード性能を徹底的に引き出すような開発も可能になるでしょう。
ハード性能を引き出す意味として、そもそもソニーは家電向けの組込み用開発経験は豊富。UIとか操作性を向上するための開発はIT業界に比べて弱いかもしれない。しかし、限られた資源でのパフォーマンスを向上させるための経験は実に豊富。
ある意味OSが本業であるMSを凌駕しているかもしれない。大容量メモリを積んだPCのパワーに任せた作りにすればいいからね。(正確には、MSに関しては少ない資源でのハード性能を引き出す技術力というより、一貫としたUI作りは下手なのが深刻な問題だと思うよ・・)
ところで過去のPSシリーズはなぜUMAを採用しなかった理由について解説したい。
PS1~PS3時代ではUMA方式じゃ、”帯域幅が足りなかったから”です。そのためPSシリーズはVRAMを独立させるという分離方式を採用していました。
PS4はUMAを採用したのは、GDDR5採用で、UMAの問題である帯域幅は十分になったからです。もちろんフルHD(1080p)までが条件となりますが、その解像度ならボトルネックになるとは考えにくいです。むしろUMAならのメリット(上記にてUMAのメリットについてしつこいほど解説されていますが。)を最大限に活かせるのが強みになったからです。
一応XBOX360は元々UMA方式採用しているが、高速のeDRAM(10MB)搭載で帯域不足を緩和させようとしましたが、遅延レンダリングとの相性が悪い問題もありました。PCゲームからの完全移植が困難になってきた事例(EAのBF3等)も出るようになりました。西川氏の記事(Deferred Shading編) が詳しいので、ぜひ参照してほしい。
次世代XBOXも、同じような方式でDDR3+eSRAM(32MB)を採用するといわれていますが、肝心のESRAMは約100GB/sで、PS4のGDDR5(176GB/s)より遅いらしく、むしろESRAMの少ない容量が弱点となります。フルHDといっても、全然容量が足りないだろうと思われます。また、eSRAMはダイサイズを結構食いますので、演算系のダイサイズが大きく減るため、結局演算力が大きく落ちます。PS4はGPU系のダイサイズはほとんど演算系ですので、次世代XBOXのパフォーマンスとして厳しくなります。少なくともその次世代XBOXで開発する開発者をパフォーマンスに関しては悩ませるのは間違いないようですね。
「尖った独自技術をしっかり盛り込めた」、PS4の開発責任者に設計思想を聞く
PS4の設計における基本コンセプトとは、どのようなものだったのだろうか。根底に流れていたのは、「『ゲーム・ソフトの開発者にとっての“パズル”を作ってはいけない』という思い」(Cerny氏)だったという。
「例えば、主記憶として外部メモリの他にeDRAM(オンチップDRAM)を用意したら、メモリ帯域幅がTバイト/秒級になるだろう。性能的には大きな進歩だ。しかし、開発者には『小容量のeDRAMと大容量の外部メモリのどちらに、どのデータを置けば最も速く動作するのか』というパズルを解いてもらうことになってしまう。そうした状況は避けたかった。開発者がゲームの価値の創造に時間を割けるようにすることを最優先した」(Cerny氏)。
マーク・サーニー氏いわく、パフォーマンスを引き出すためのパズルのような作りを極力追放したこと。PS2,PS3は開発者がパズルのような作りで開発する必要はありましたが、180度切り替えた点について興味深いですね。むしろ初代PS1路線に原点回帰したといえるでしょう。もしかしたら、マーク・サーニー氏が久夛良木さんが作り上げた初代PS1を強くリクスペストしていたかもしれません。
| 固定リンク
「PS4」カテゴリの記事
- PS4対応VRヘッドセットが発表される!(2014.03.20)
- PS4のリモートプレイはかなり実用レベル!(2014.02.27)
- VW90ES(100インチ)でPS4をプレイしてみた(2014.02.24)
- PS4でプレイして思ったこと(2014.02.23)
- 2.22(2014.02.22)
この記事へのコメントは終了しました。
コメント
せっかくなので付け加えさせてくださいw
プレイステーション4は唯のハイエンドPCではないとキルゾーンの開発が語る
http://www.gewaku.com/archives/26603619.html
「PS4にボトルネック無し!見つけてごらん」とキルゾーン開発者はかく語りき
http://blog.gamekana.com/archives/7036109.html
先日ネットで話題になったGuerrilla Gamesのディレクターのインタビュー記事です。
ここでもPS4はPCアーキにあるようなボトルネックを解消するように、設計開発が徹底されていた様が伺えます。
>”あれには、一年以上かかったかな。メインの素材が決定して、ボトルネックを発見するために何度も話し合ったのに。”
>氏は付け加える。”僕達はキルゾーン3の一部とキルゾーン4のアート部分を平行してこの概念上の機器で動かし、何が起こるかをテストしていたんだ。
>-ハードウェアのボトルネックを発見し、チップについて考える前にそれを解消しようとしてね。”
他のGuerrilla Gamesのインタビューでも、サーニーをはじめとしてSCEファーストが集まってPS4は作られたという証言がありました。
天才一人が作り上げるハードというのもロマンがありますが、
皆の英知を結集して作り上げるというのにもぐっとくるものがありますw
投稿: | 2013年4月16日 (火) 00時55分
ともかく,アーキテクチャはシンプル。
低レベルでGPUやCPUにアクセスできる。
GPUとCPUで完全なUMAを実現。
これが,開発者への「売り」なんでしょうね。
逆に,それ以外はPS4の売りではなく,
それは構成される各パーツ群も言えること。
まさに,OSを含めた「PSアーキテクチャ」なわけで。
うまく軌道にのれば,
将来の各種汎用IPの進化の恩恵を受けることで,
PCのような成長をすることができるのかも。
というか,このアーキテクチャを流用した,
業務用画像編集専用マシンとかまた出そうだなあw
投稿: kon2 | 2013年4月16日 (火) 10時46分
>せっかくなので付け加えさせてくださいw
補足ありがとうございます!
ボトルネックないか徹底的に検証されたらしいね。PS4のAPU内部にも負荷確認のような機能も搭載されています。開発者のヘボなプログラミングにて遅くなる可能性もありますので、ある意味最大のボトルネックは開発者側の技術力かもしれませんね。
投稿: mkubo | 2013年4月17日 (水) 06時22分
>>kon2さん
>うまく軌道にのれば,
>将来の各種汎用IPの進化の恩恵を受けることで,
>PCのような成長をすることができるのかも。
PS Vitaにもいえますね。スマホ部品の共通化によりコストダウンも可能になると思いますし。CPU/メモリの強化版PS Vitaもあってもおかしくないかもしれませんね。
PS3→PS4のような大転換はもうないと思うし、PS4→PS5の互換性はおそらく問題ないでしょうね。
西川氏が指摘していたPS4.1、PS4.2のような展開も可能になるかもしれませんね。ただ実際にそういう展開になるかは懐疑的ですが。
>業務用画像編集専用マシンとかまた出そうだなあw
GPGPUとの相性はいい分野ですので、業務用への展開は検討されてもおかしくないですね。確かにPS4のOSはフルBSDベースなので、比較的にやりやすいと思いますね。
投稿: mkubo | 2013年4月17日 (水) 06時30分
>mkuboさん
PS3の失敗をうまく生かしているのかな,と。
失敗というのは,カスタム部品を使いすぎて,結果的に成長の余地を奪ったこと。
PS4はクタさんが言っていた
「PSが溶ける」をするための下地造り。
アーキテクチャとしての,プラットフォームとしてのPS。
とにかく,知るほど
「シンプルなアプローチ」に驚かされます。
これから,本格的に4K時代がくるにあたり,とくにテレビ放送ともなれば,
シンプルかつパワフルな機器が必要となります。
3D配信において,Cellが役に立ったように,
今回のアーキテクチャもソニー本体で活用できそうな気がします。
投稿: kon2 | 2013年4月17日 (水) 10時06分
>>kon2さん
>今回のアーキテクチャもソニー本体で活用できそうな気がします。
ソニーは医療分野には積極的ですが、以下の研究もされているようです。当時はPS4が未発表なのでPS3で公開されていたのですが、開発のしやすさでPS4へ移行してもおかしくないですね。
http://techon.nikkeibp.co.jp/article/NED/20121213/256236/
PS3の高い画像処理能力を生かし、病理診断をスムーズに
家庭用ゲーム機「プレイステーション3(PS3)」を病理診断に活用する─。このような研究を、ソニーが進めている。同社は2012年11月に東京で開催された医療機器関連の展示会「HOSPEX Japan 2012」で、その成果を披露した(図A-1)。
病理診断は、病変部の組織を採取して観察し、病変の種類や広がりなどを調べる行為。通常は、採取した病変組織を一つずつプレパラートにして、病理医が観察している。顕微鏡をのぞきながら、プレパラートを手で前後左右に動かして所望の位置に調整し、レンズの倍率を切り替えながら観察する、いわば“アナログ”な作業である。ここにソニーは、デジタル化の余地を見いだした。特に、ゲーム機の特徴である高い画像処理能力を生かすことで、デジタル化した高精細な病変組織の画像を、病理医がスムーズに扱えるシステムが可能になると踏んだ。
展示したシステムは、まるで「Google Earth」で所望の場所を探して拡大するように、PS3のコントローラを利用しながら手早く病変組織を観察できることが特徴だ。具体的には、1枚当たり1G~2Gバイトの病変組織画像が、コントローラの操作に対して0.2秒以下の遅延時間で応答すると説明する。
研究を進める中で、思わぬ発見もあったという。画像を表示するディスプレイは、ソニーが医療向けに積極展開を狙う有機ELが適することだ。画像を縦横無尽に動かす際、応答速度の課題がある液晶では鮮明な画像を表示できないためである。
投稿: mkubo | 2013年4月18日 (木) 01時51分
http://techon.nikkeibp.co.jp/NED/s/entry/digihtuki/index.html
新規申し込みのみ、無料期間にキャンセル可能なので、申し込みました。2週間以内または4月の終わりまでに解約する必要あり。
サーニー氏の全文についてやっと確認。サーニー氏の言い回しに関する変更のみで、新情報はほぼなし。ニュアンスは微妙に違うので、興味深かったです。
-マイクロプロセサに集積するCPUとGPUとして、AMD社のものを選んだ理由は何でしょうか。
PS4の設計を開始したのは2008年のことです。以来、たくさんの企業と、あらゆる技術の採用について議論してきました。今回AMD社を選んだのは、技術そのものや実現時期、そしてビジネスの観点から総合的に判断した結果です。
x86アーキテクチャを採用したことについては、非常に良かったと思っています。ツールチェーンや数値計算ライブラリ、マルチメディア用拡張命令を活用するソフトウエアなどが、他のアーキテクチャに比べて充実しているからです。数多くのゲーム・タイトルの開発に携わってきた私の経験に照らすと、PS4は本当に開発しやすいハードウエアになったと思います。
-メモリ構成以外に、パソコンのアーキテクチャから変えた部分にはどのようなものがありますか。
非常に多くのカスタマイズを施していますが、大きなものは4点あります。
第1に、CPUとGPUの間の高速なバス・インタフェースとして利用可能な通信機構を設けました。具体的には、GPU内のシェーダー・コアが、CPUの管轄下にあるシステム・メモリのデータを読み書きできるようにしています。これにより、CPUとGPUの間で10Gバイト/秒を超えるデータ転送が可能になりました。
第2に、GPUのキャッシュ・メモリからシステム・メモリへの書き戻し回数を減らせるようにしました。「揮発性」か「不揮発性」かを表すタグをGPUのキャッシュ・ラインに付加し、それに応じてキャッシュ操作を行うように変えています。
第3に、演算パイプ(処理のグループ)やその中の演算キュー、グラフィックス描画処理パイプなどの間で、多階層にまたがった優先順位を付けられる調停機能を設けました。PS3のタスク切り替え機構「SPURS」(SPU Runtime System)と似た考え方です。
最後に、GPUの前処理をCPUに肩代わりさせる機能も付加しました。これまでのゲーム機の最大のボトルネックはメモリ・インタフェースでしたが、多くの場合、2番目のボトルネックはGPUの頂点処理性能でした。そこで、GPUの負荷が大きいときに頂点処理(の一部)をCPUが肩代わりできるようにした。
PS3と比較すると、外部から要素技術を集めるだけに変わったように見えるかもしれませんが、そんなことはありません。尖った技術をしっかり盛り込めたと思っています。我々はイノベーションを主導していく会社だと自認していますし、これからもそうした部分を大事にしていきます。
-CPUとGPUを混載し、統合されたメモリ空間で動作するという考え方は、AMD社と英ARM社が提唱する「HSA」(Heterogeneous System Architecture)と良く似ています。HSA Foundationが規定するヘテロジニアス・コンピューティング用のソフトウエア・スタックを載せる予定はあるのでしょうか。
短期的および中期的にはHSA Foundationとは異なるアプローチを採ることになるでしょう。ヘテロジニアス・コンピューティングという考え方は同じですが、ゲームのようにハードの性能をギリギリまで引き出すのは、C++言語による開発では難しいからです。
そこで我々は「PSSL」(PlayStation shading language)と呼ぶシェーダー言語を用意します。OpenGLやDirectXの最新仕様を盛り込むのに加え、PS4のハードウエアが持つ独自の機能も直接扱えるようにします。
長期的には、PS4でのGPGPU(GPUを使った汎用演算)の広がりに期待しています。レイ・トレーシング(光線追跡)や人工知能、物理シミュレーションなど、シミュレーションの大半はGPUで実行されるようになるでしょう。先に説明した独自のカスタマイズは、GPGPUを効率良く行えるようになる効果もあります。
投稿: mkubo | 2013年4月18日 (木) 01時53分
>mkuboさん
サーニー氏の記事ですが,
おおむね自分が抱いている印象と違いはありませんね。
ともかく,アーキテクチャに説明を割いているのが印象的。
ゲーム機ではなく,
新しいコンピュータのアーキテクチャとして
捉えた方がよいのだと思う。
OSもBSDベースらしいし。
このアーキテクチャのすばらしいところは,
「スケールダウン」も「スケールアップ」も
おそらく自在だろう,ということ。
んで,これまたお花畑思想ですが,
ソニーの展開するデジタル家電全般に
展開することもまた可能なのです。
Jaguarを選んだことも,ね。
ゲームほどの性能はいりませんから,
適切なスペックダウンを施せば
安価にレスポンスのよいテレビや
レコーダを作ることができると思います。
というか,してくれ,ですかねw
nasneとtorne使ってると
レコーダーやTVのレスポンスってばかばかしくなりません?
そこいらをてこ入れできれば,面白いことになると思うのですが。
投稿: kon2 | 2013年4月18日 (木) 09時08分
>>kon2さん
>んで,これまたお花畑思想ですが,
ソニーの展開するデジタル家電全般に
展開することもまた可能なのです。
Jaguarを選んだことも,ね。
ゲームほどの性能はいりませんから,
適切なスペックダウンを施せば
安価にレスポンスのよいテレビや
レコーダを作ることができると思います。
確かにPS4のAPUはGPU側の18CU搭載ですね。一説によると20CUベースだが、
Cell(SPE8個→7個)と同じように冗長性を取るため、18CUにしている可能性はあります。
要するに、歩留りで18CU以下となったPS4のAPUは家電・業務用向けに回せばいいのではと思いますね。PCのGPUではよくやっている手法です。ハイエンド向けのGPUは基準以下となった場合、ミドルレンジへ回しています。
PS4のAPUのメモリコントローラはGDDR5専用か分かりませんが、DDR3も対応できるなら、
メモリ系のコストダウンも可能になりますね。帯域として30~60GB/sぐらいなら十分かもしれませんし。
GDDR5専用としても、2GB~4GBに調整すればいいしね。GDDR5チップの4枚~8枚というのは家電向けとしてコストが重いかもね。
ただ、安定調達の意味として、PS4は実際に1000万台/年以上に売れるかは不透明な面もありますので、ゲーム機並みにたくさん売れるとは思えないデジタル家電の分も確保しておけば、安定的に消費できるのが強みになるかもしれません。
そもそもデジタル家電だけなら、高コストのGDDR5を安く調達するのは無謀ですしw
ソニー本体にとっては、低コストで確保するのも可能になりますので、他社に対する強みを持てるかもしれません。
最初のPS4世代のAPUはさすがに厳しいかもしれませんが、第2世代あたりのPS4のAPUなら、あらかじめ低コストメモリ対応も実現すれば展開も容易になるのではと思いますね。
まあ業務用から始まると思いますね。出荷台数が少なくても問題ない世界ですし。
投稿: mkubo | 2013年4月18日 (木) 23時55分
>mkuboさま
まあ,業務用からですよね。
4Kを扱える機器の需要はこれから増えますからね〜
ただまあ,
せっかくx86ベースで動作する
リアルタイム性に優れたOSを
BSDベースで起こすんですから,
ぜひとも家電でも使ってほしいですよね。
投稿: kon2 | 2013年4月19日 (金) 12時16分
>>kon2さん
>ぜひとも家電でも使ってほしいですよね。
ソースコードレベルではLinux資産の移植はおそらく容易と思いますので比較的にやりやすいかもしれませんね。
投稿: mkubo | 2013年4月22日 (月) 06時44分
PCやXBOX360のUMAとPS4のメモリ共有は別物だと思います
UMAはCPUとGPU間でデータ転送が必要なはずです
キャッシュの整合が取れないのでお互いのメモリには直接アクセスできないのですね
AMDのAPUではDualCPUと同様に同じメモリマップになっていてお互いのメモリに直接アクセスできます
投稿: | 2013年4月23日 (火) 00時18分
>PCやXBOX360のUMAとPS4のメモリ共有は別物だと思います
>UMAはCPUとGPU間でデータ転送が必要なはずです
>ユニファイドメモリアーキテクチャ (Unified Memory Architecture)とは、メインメモリをCPUだけでなく、他のデバイスにも共有して使用するメモリアーキテクチャの一つである。
広義の意味として間違ってないと思いますが?
種類としてUMAではないなら、なんと呼べばいいですか?
サーニー氏も、共有する構成と言及している。適切な意味としてUMAと言ってもいいはず。
>PS4では、CPUとGPUが統合された8Gバイトのメモリを共有する構成を採用しました。また、インタフェースとしてはGDDR5を採用しました。これにより、176Gバイト/秒のメモリ帯域幅を実現しています。
投稿: mkubo | 2013年4月23日 (火) 22時49分
「分かりやすく解説している記事はあったので」は「分かりやすく解説している記事があったので」が自然ですね。
投稿: | 2013年10月 8日 (火) 22時20分
うーんAPU(CPU+GPU)自体は
AMDが開発したものをソニーがカスタマイズした物なので、
PCとコンシューマ機の垣根はほとんどないと思います
演算性能からいくとPCのグラフィックカードのミドルレンジよりやや上となります
そのうちAMDがhUMAを取り入れた
汎用APUを出してくるのは間違いないでしょう
実際にAMDのGPUはPS4のように物理演算を強化してますしね
投稿: | 2014年5月15日 (木) 21時53分