GF100のエンジニアリングサンプルを用いたシングルカードシステム。電源ユニットには,SilverStone Technologyの「SST-ST1500」が組み合わされていた
2010年1月18日14:00,NVIDIAは,Fermi(フェルミ)アーキテクチャを採用した次世代GeForceで,開発コードネーム
「GF100」 と呼ばれるGPUについて,
グラフィックスプロセッサとしての機能概要 を公表した。
本稿では,2010 International CESの会期中に開催された報道関係者向け事前説明会の内容を基に,GF100におけるグラフィックス周りの拡張について解説していきたいと思う。なお,Fermiアーキテクチャそのものについては,
2009年10月1日の記事 で西川善司氏が解説を行っているため,そちらを併せてチェックしてもらえれば幸いだ。
明らかになったGF100のブロックダイアグラム。詳細は後述する
GT200の拡張にあらず!
新設計でジオメトリ性能を大幅に強化
GF100の強化ポイント
2009年秋のGPU Technology Conferenceで公開されたFermiアーキテクチャは,倍精度浮動小数点演算性能の引き上げや,CPUライクなキャッシュアルゴリズムの採用など,汎用コンピューティング処理に最適化した印象を強く受けるものになっていた。
しかし,GF100でNVIDIAは,独自のアプローチでグラフィックスアーキテクチャを拡張してきている。説明会によれば,GF100の開発に当たってNVIDIAが目指したのは,以下の4点だ。
ジオメトリのリアリズム
比類なきイメージ品質
ゲームにおける革新的なGPUコンピューティング機能
過去最高のGPUパフォーマンス
Jonah M. Alben上級副社長(Senior Vice President, GPU Engineering, NVIDIA)
GF100では,「GT200にテッセレーションを付加する」という単純なアプローチを採用しなかった。それは,GT200アーキテクチャにテッセレータを追加しても,ジオメトリ処理のボトルネックが発生しやすいためだ
とくにNVIDIAがこだわったのは,ジオメトリ処理能力の向上。これは,DirectX 11における強化ポイントとも合致する部分である。
同社でGPU開発を統括するJonah M. Alben上級副社長は,「DirectX 9&10世代のGPUでは,統合型シェーダ化によって,シェーダパフォーマンスが飛躍的に向上している。しかし,ジオメトリ処理に関しては,専用ハードウェアを持っていた前世代のGPUよりもパフォーマンスが落ち込むことになった」と説明する。実際,「GeForce GTX 285」(以下,GTX 285)は,シェーダ性能が「GeForce FX 5800」(以下,FX 5800)の150倍以上へ引き上げられた一方で,ジオメトリ処理性能はFX 5800の3倍弱にしか上がっていないという。
一方,DirectX 11では,キャラクターや背景など,オブジェクトが持つシンプルなジオメトリデータに頂点データを付加することでポリゴンデータを細分化し,よりリアルなグラフィックス表現を可能にするテッセレーション(Tessellation)機能が追加された。GPUの持つジオメトリ処理性能が問われる世代になったわけだ。
GF100では,ジオメトリ処理性能を引き上げるため,思い切って専用ハードウェアを強化。ジオメトリエンジンとしてのPolyMorph Engineを新設計した
そこでNVIDIAはGF100で,16基のCUDA Core――以前は「Streaming Processor」もしくは「Processor Core」と呼ばれていたシェーダプロセッサのこと――をまとめた「Streaming Multiprocessor」(ストリーミング・マルチプロセッサ,以下 SM)ごとに1基,テッセレーション処理用のテッセレータを含むジオメトリ処理専用ハードウェア
「PolyMorph Engine」 (ポリモーフエンジン)を実装。PolyMorph Engineにはこのほかにも,流用される頂点データを読み出す「Vertex Fetch」や,視点に応じたポリゴン変形処理を担当する「Viewpoint Transform」,ジオメトリデータのキャッシュやビデオメモリへの出力&格納を可能にする「Stream Output」などを搭載し,SM単位で複雑なジオメトリ処理ができるようにしている。これにより,GF100のジオメトリ処理性能は,GeForce GTX 285比で最大8倍に高められたという。
SMの詳細。SM(=32 CUDA Core)ごとに1基,合計16基のPolyMorphエンジンを搭載する。また,4基のテクスチャユニット(※図中の「Tex」)とテクスチャキャッシュもSMへ統合されている
PolyuMorph Engineと同じく新設計となったRaster Engine
さらにFermiアーキテクチャでは,GT200(≒GeForce 200)世代にあった,3基のSMによる「Thread Processor Cluster」(TPC)というブロックを廃して,代わりに,4基のSMを「Graphics Processing Cluster」(以下,GPC)と定義。GPCごとに,ラスタライズ処理を行う「Raster Engine」を組み合わせている。これにより,ROPを除くグラフィックス処理はGPC内でこなせるようになったわけで,いわば“クアッドGPU”的なデザインを採っていると言えなくもない。
GF100でグラフィックス処理の管理クラスタとして新設されたGPC。GPCごとに一つのRaster Engineを搭載し,ROP以外のグラフィックス処理をこのGPC内で処理できるよう,機能実装レベルをGT200アーキテクチャから大きく引き上げている
NVIDIAによる,GF100と「ATI Radeon HD 5870」のテッセレーション性能比較。最大で6倍以上のパフォーマンスを発揮すると謳われる
DirectX 11では,テッセレーション機能の採用によって,これまで以上にラスタライズ処理の負荷が高まり,キャラクターなどポリゴンデータの流用も飛躍的に多くなる。
そんなDirectX 11時代に向けて,一連の処理をGPC内で完結できるようにすることにし,ジオメトリ処理の並列化を加速するのが,NVIDIAの狙いだ。
※ムービーファイルへのリンク
※ムービーファイルへのリンク
基本機能も大幅強化
〜ポイントごとにチェック
●テクスチャユニット&テクスチャキャッシュ
GF100のキャッシュアーキテクチャが,グラフィックス処理においてもたらす効能をまとめたスライド
GF100では,SMごとに,4基ずつのテクスチャユニットと,テクスチャキャッシュが統合された。
現行のGT200アーキテクチャでは,3基のSM(=24 CUDA Core)で構成されるTPCごとに8基のテクスチャユニットを搭載。フルスペックの240 CUDA Core仕様となるGTX 285で,合計80基のテクスチャユニットを搭載していた。これに対してGF100では,SM(=32 CUDA Core)ごとに4基で,合計64基。数のうえでは減ったことになるが,この点についてNVIDIAは,「(GT200のTPCごとではなく)SMごとにテクスチャユニットを搭載することで,処理効率は大幅に向上する」としている。
GF100とGT200におけるキャッシュ実装仕様と,GF100の優位性を示した図(上)。容量64KBのメモリ領域を16KBと48KBに分けてL1キャッシュメモリ&共有メモリとして利用することで,頂点データやPhysX命令などを効率よく再利用できるようになる。さらに,容量768KBのL2キャッシュは,テクスチャやROPデータの共有にも効果を発揮する(下)
NVIDIAによるテクスチャ処理性能のパフォーマンス比較。GT200世代から大幅なパフォーマンスアップを実現したと謳われる
個々のテクスチャユニットは,1クロックで,テクスチャアドレスと,四つのテクスチャサンプルを処理できる。さらに,L1テクスチャユニットをSM内に統合し,後述する大容量のL2キャッシュもキャッシュ領域として使えるようにしており,その結果,GF100のテクスチャリング性能は,GT200アーキテクチャと比べて,40〜70%向上したとのことだ。
また,Fermiアーキテクチャの要とも言える新しいキャッシュアルゴリズムも,GF100のパフォーマンス向上を支えている。
Fermiアーキテクチャでは,GT200の256KBから768KBと容量が3倍に増えたL2キャッシュや,16KBまたは48KBに設定可能(※排他)なL1キャッシュと共有メモリによって,グラフィックスメモリにアクセスすることなく多くの処理をこなせるようになる。とくに,大容量化されたL2キャッシュのインパクトは大きく,頂点データやテクスチャ,ROPデータをSMやGPCで共有することが可能になり,より効率的なグラフィックス処理が可能になるという。
●ROP
GF100に搭載された新ROPによって,アンチエイリアシング適用時のパフォーマンスも飛躍的に向上したとされる。NVIDIAが示したこのグラフは,「Tom Clancy's H.A.W.X」におけるアンチエイリアシング適用時のフレームレートをGT200と比較したもの
Emett Kilgariff氏(VP, GPU Architecture, NVIDIA)
ROPは,GT200世代と同様,GF100でも,メモリコントローラと対になる形で実装されている模様。8基のROPを実装したパーティションが六つあるので,合計48基のROPが,4基のGPCとクロスバースイッチで結ばれることになる。
GF100で採用される新型ROPは,32bit整数ピクセルを1クロックで,FP16ピクセルを最高2クロックで,FP32ピクセルを最高4クロックでそれぞれ出力できる。また,アンチエイリアシング性能が大幅に引き上げられるとともに,32x CSAA(Coverage Sampling Anti-Aliasing)もサポートされるようになった。
CSAAは,GeForce 8800シリーズで実装されたアンチエイリアシング機能で,サンプリング点が,ターゲットとなるキャラクターなどのエッジとなる部分に対して外側になるのか,内側になるのかといった位置情報と色情報を圧縮してメモリに格納することによって,より多くのサンプリング点を持たせたアンチエイリアシング処理が可能になるものだ。32x CSAAでは,八つのカラーサンプルと24のサンプリング点によって,より滑らかなスムージングが可能となったと謳われている。
同社のGPUアーキテクチャ担当副社長Emett Kilgariff氏(VP, GPU Architecture)は,「GF100では,32x CSAAを有効にしても,8xAAと同等のパフォーマンスを実現できる」と,イメージ品質を高めても優れたパフォーマンスを発揮するGF100アーキテクチャの優位性をアピールする。
「Age of Conan: Hyborian Adventures」を例に,CSAA適用時のパフォーマンスが例示された。それによると,32x CSAAのフレームレートは8x MSAAと比べて7%しか低下しない。また,GT200の16x CSAA(下段左)とGF100の32x CSAA(下段右)を拡大画像で比べると,草のエッジは後者のほうがより自然に平滑化されている
●並列コンピューティング性能
Fermiアーキテクチャの強みを活かし,GF100ではさらに強力な物理演算やAI処理,ポストプロセシング処理が可能になるという
GF100では,リアルタイムレイトレーシング性能も向上。ラスタライズ処理と併用すれば,ゲームプレイでもレイトレーシングの手法を取り入れた“シネマクオリティモード”などを用意できるはず,というのがNVIDIAの主張である
もちろん,Fermiアーキテクチャが持つ最大の特徴である優れた並列コンピューティング性能は,グラフィックスでもNVIDIA PhysXやAIの処理,イメージプロセッシングに活かされる。
NVIDIAでデスクトップGPUビジネスを統括するDrew Henry氏(General Manager, Desktop GPU Business Unit)は,「GF100の登場により,“シネマクオリティモード”といった,より高画質なゲームプレイが実現可能になる」とアピールする。
GF100に搭載されたリッチなテッセレーション機能を使えば,キャラクターや背景の距離に応じてディテールを切り替えるLoD(Level of Detail)により,最小限の負荷で高品質のグラフィックス表現が可能になるが,それだけに留まらず,GF100の処理能力を活かし,リアルタイムレイトレーシングの手法を部分的にゲームに盛り込むことも不可能ではないというわけだ。
※ムービーファイルへのリンク
デモは,GeForce GTX 285搭載システムとGF100搭載システムを並べた状態で実施された。フレームレートは,左のGeForce GTX 285システムが0.229fpsなのに対し,GFでは0.65fpsとなっていた(※それぞれ黄緑の枠内は,フレームレートの値を撮影したもの)
●3D Vision Surround
3D Vision Surroundとそのハードウェア要件。いわゆる倍速駆動のディスプレイを,3台,同じ製品で揃えねばならないという,高いハードルがある
また,GF100では3台のディスプレイで3D立体視を可能にする
「3D Vision Surround」 がサポートされるのもトピックだ。
3D Vision Surroundを担当するJason Paul氏(Sr. Product Line Manager, Enthusiast GPUs, NVIDIA)は,「3D立体視環境をマルチディスプレイ対応させることで,レースゲームやフライトシミュレータなどで,よりリッチな体験ができるようになる」と,現行3D Visionの発展系として,同機能を位置づける。
ただ,3D Vision Surroundを利用するためには,「GF100またはGeForce GTX 200シリーズのGPUを搭載したグラフィックスカードでNVIDIA SLI構成をとり,さらに,3台の液晶ディスプレイを,すべて同じ製品で揃える」という,高いハードルがある。
※ムービーファイルへのリンク
なおも詳細な製品スペックは公表されていないが
一部ベンチマークテスト結果が明らかに
Drew Henry氏(General Manager, Desktop GPU Business Unit, NVIDIA)
今回の説明会では,GF100搭載グラフィックスカードの動作クロックや消費電力,そして価格といった,最終製品の仕様に絡んだ情報は一切明らかにされなかった。
下に写真で示したとおり,「Far Cry 2」と「Dark Void」によるベンチマークテスト結果は明らかになったものの,Drew Henry氏は,今回公開されたグラフィックスカード(の実機)はすべてエンジニアリングサンプルで,製品版とは異なる可能性が高いと釘を刺しており,そのベールが剥がされたとはまだまだ言えない状況だ。
「Far Cry 2」の「Ultra High」設定で,GF100(左)とGeForce GTX 285のベンチマーク比較も行なわれた。前者が平均フレームレート83.99fps,最低フレームレート65.42fpsなのに対し,後者は同50.47fps,38.24fpsとなったていた
こちらはGPU PhysX対応タイトル「Dark Void」を用いたベンチマーク比較。GF100だと平均フレームレートが77.28fps,最低フレームレートが50.81fpsなのに対し,GeForce GTX 285は同37.91fps,28.92fps。GF100が倍近いパフォーマンスを示している
NVIDIAでテクニカルマーケティングを担当するTom Petersen氏。GF100によほど自信があるのか,このポーズ
ただ,Henry氏が「GF100はすでにTSMCで量産に入っており,
第1四半期中の市場投入を計画している 」と明言していた点は押さえておきたい。また,NVIDIAがGF100アーキテクチャを2010年中にトップ・トゥー・ボトムで展開することも明らかにされている。
Henry氏は,「GF100は,PCグラフィックスの新たな10年を切り開く,高品質なグラフィックスを実現する」と,最新アーキテクチャに絶対の自信を見せていたが,実際のところはどうなのか。一刻も早い製品発表を待ちたいところである。