〜NVIDIAチーフサイエンティスト〜

David Kirk博士インタビュー

Text & Photo by トライゼット西川善司

ページ 1/3


 2003年5月,NVIDIAのチーフサイエンティストを務めるDavid Kirk博士と一部のGPUアナリストとの合同インタビューが行われた。博士はGPU・グラフィックス業界において超有名人なわけだが,そんな彼を1時間だけ,我々日本のプレス陣が占有する機会が得られた。


■David Kirk博士ってどんな人?

NVIDIAのチーフサイエンティストDavid Kirk博士
 まず始めに,おそらく一般のゲームファンは知らないであろうDavid Kirk博士の略歴と,彼とNVIDIAの関係について簡単に紹介したいと思う。

 David Kirk博士は「GeForceシリーズの父」と呼ばれる人物だ。彼はマサチューセッツ工科大学(MIT)機械工学部を卒業後,Apollo Computerに入社,ここからコンピュータグラフィックスの世界へ転向することになる。その後,カリフォルニア工科大学に進んで本格的にCG関連の研究に打ち込み,博士号を獲得した。在学中はCG学会「SIGGRAPH」の論文発表者の常連としてその名を知られ,1996年にNVIDIAからヘッドハンティングされて同社に入社,現在に至る。

 Kirk博士は,電気回路設計者というよりは"CGのアルゴリズムのエキスパート"といったほうがいいだろう。そのためNVIDIAではGPUの論理設計,すなわち"どういうアーキテクチャにするか"といった方面を担当している。

筆者宅にまだあったRIVA128(4MB)のカード。これがNVIDIAをトップブランドへのし上げた。この時代はファンレスのGPUがあたり前。ヒートシンクを塔載していないビデオカードがあったほどだ
 Kirk博士が開発に携わった最初のGPUは,あの名機「RIVA128」で,ご存じの通りNVIDIAの名を世界的に有名にした大ヒット作だ。その後発表された「RIVA TNT」では,当時ライバルだった3dfx社の「Voodoo」シリーズを速度面で圧倒的に上回り,「NVIDIA=最速」というブランドイメージを定着させるに至った。
 続くGeForce 256では,ジオメトリ演算のアクセラレータ「ハードウェアT&L」を他社に先駆けて実装し,「NVIDIA=最新テクノロジ」というイメージももたれるようになった。そしてRIVA128以降,ほぼすべてのGPUの設計の舵取りを行ってきたのが,まさにKirk博士なのである。
 Kirk博士は2002年のSIGGRAPHで,"リアルタイムCG技術の基盤を作り上げるのに貢献した"として,CG関連分野の賞としては最も権威のある「ACM Computer Graphics Achievement Award」を受賞している。

 今回の合同インタビューでは,未だに謎の多いNVIDIAの最新GPU,「GeForce FX 5900」(以下,FX5900)シリーズの話題を中心にお話を伺っている。「DOOM III」の話題も飛び出しているので,ゲームファンもぜひチェックしておいてほしい。

  ##David Kirk氏……以下,Kirkと表記


■GeForce FX 5900は5800の2倍のパフォーマンスって本当?


―――NVIDIAの公式資料によれば,GeForce FX 5800(以下,FX5800)シリーズに対して,FX5900シリーズは単位時間あたりのプログラマブルシェーダ演算量が2倍になっているとありますが,これはどのように実現しているのですか?
Kirk:
 内部的なことは詳しく説明できませんが,浮動小数点(以下,FP)実数演算シェーダユニットを増加させることで実現しています。またシェーダユニットの相互接続をリファインしているので,場合によっては2倍以上のシェーダパフォーマンスを得られる可能性もあると思います。

―――ひと口にプログラマブルピクセルシェーダといっても,色+α演算器(*1)などいろいろありますが,いったい何が増えたんでしょうか?
Kirk:
 我々は「色+α演算器」といった特定の機能しかない演算器のインプリメントはもう不要だと思っています。そこで積和算器(*2)を増設しました。これは色演算,α演算もできますし,そのほか多様なFP実数演算ができるものです。フォグ演算や鏡面反射,テクスチャアドレス計算もできるでしょうし,FP実数の数学的演算も可能でしょう。
 ピクセル単位のバンプマッピングやパーピクセルライティング,環境マッピング,拡散反射といった処理では,色演算やα演算のほかにさまざまな実数演算が行われるのです。だから,我々は色演算やα演算だけを行う演算器ではなく,汎用的なユニットを増やす方針を採ったのです。

―――するとFX5900シリーズは,FX5800シリーズと比べてピクセルシェーダパフォーマンスは本当に向上していると考えていいんですね?
Kirk:
 そうです。2倍以上といってもいいでしょう。

GeForce FX 5900カード GeForce FXファミリースペック比較図。FX5900のシェーダパフォーマンスは5800の2倍!?


■GeForce FXシリーズが採用する仮想的なパイプラインとは?


―――しかし実数演算器の増量はトランジスタコストの点から見て高価になりませんか? プロセスルールの限られたトランジスタ予算の範囲内で実数演算器を増量するのは困難では?
Kirk:
 あなたが言っているのは,ピクセルパイプラインとピクセルパイプラインアーキテクチャを前提にした考え方です。これはとてもいい質問ですね。
 GeForce FXシリーズは,これまでのGPUの基本概念である「ピクセルパイプライン」という考え方から脱却した最初のGPUです。我々は今後,演算パワー,FP実数演算,そしてデータパスに着眼していくことになります。そしてデータパスというのは,プロセッサを構成するにあたっては高予算なものです。
 GeForce FXシリーズは,それぞれクロック単位のピクセルレンダリング量が異なります。つまり,何をどうレンダリングしているかによって"外から見た仮想的なパイプライン数"(後述)が変わってくるのです。

 例えばZバッファ操作やステンシルバッファ操作などは,処理時に取り扱うデータ量の単位が小さいので,単位時間内により多くのピクセルを処理できます。
 しかし,データ量の多くなる色演算とZバッファ操作,あるいはα演算などを同時に行った場合は,逆に処理が遅くなっていきます。GeForce FXシリーズは"今,どんな演算を行っているか"を判断してデータパスを効率よく活用していくような機能を塔載しているのです。

―――するとFX5900はFX5800からみて,プログラマブルピクセルシェーダのアーキテクチャも改良されていると考えていいんでしょうか?
Kirk:
 そうです。FX5900はFX5800より効率的にシェーダユニットを実行するようにリファインしています。簡単にいえば,浮動小数点演算器をさらに巧みに使う仕組みを実装したという感じでしょうか。

―――「仮想的なパイプライン数」という表現ですが,もう少し詳しく説明してください。
Kirk:
 GeForce FXファミリーでは,ピクセルをレンダリングするのに必要なデータ量や浮動小数点実数演算量によって,クロックあたり4ピクセルのレンダリングができるのか,8ピクセルできるのかが変わってきます。
 例えば,50命令からなるシェーダプログラムを実行したとして,4ピクセルのレンダリングにかかる時間はもしかしたら50クロックかもしれません。つまり少量のピクセルスループットになるかもしれませんが,シェーダ処理に凝った分,美しいピクセルが描画されるわけです。

―――状況によって見かけ上のパイプライン数が変わる――,だから実体のない「仮想的なパイプライン数」と表現したのですね。実際にGeForce FXシリーズは,その考え方に則した挙動を示しますからね。
Kirk:
 我々がGPUデザイナーとして考えたのは,「演算パワー,浮動小数点実数,データパスの三つを,パイプラインから分離する」というものです。
 ですから,パイプラインで処理するという概念は,もはやGeForce FXファミリーにはないのです。

―――これはGPUアーキテクチャの大きな変革といえるわけですね。CPU時代でいえば,アーキテクチャがPentiumからPentium Proへと移行したときのような感じでしょうか。
Kirk:
 そうですね。このGeForce FXアーキテクチャは,既存のアプリケーションを動作させるためと,現在開発中の「DOOM III」(id software)のような,近未来に登場してくるアプリケーションに対応するために生まれてきたものなのです。

DOOM IIIの影生成にはステンシルシャドウボリューム技法が使われており,同作はFX5900のUltraShadow機能の対応タイトル第1号になるといわれている
―――DOOM IIIのエンジンがGeForce FXシリーズに適しているというのはどういった理由からでしょうか?
Kirk:
 DOOM IIIエンジンでは,影生成のためにステンシル操作が陰影処理以上に発生しています。そして各ピクセルに対する陰影処理に大量の演算パワーが必要なときほど,より多くのピクセルパイプラインが欲しくなることでしょう。しかし逆にピクセルスループットはそこそこで,それよりも浮動小数点実数演算を大量に行いたいというケースだってやってくるかもしれません。

―――そこでGPUに求められるのは"アーキテクチャの柔軟性"だというわけですね。
Kirk:
 そのとおりです。今後はこういった傾向が強まると考えています。つまり,クロックあたりのピクセルスループットが求められる一方で,より強力な浮動小数点実数,要するに"馬力"が必要になってくるだろうということです。
 我々はこれから6か月ごとに2倍の演算能力をもつGPUを発表してきますよ。

(*1)色演算は色の足し合わせ,α演算は透明色の足し合わせ
(*2)ベクトルと行列の計算に多用されるのが積和算


ページ 1/3