NVIDIA チーフサイエンティスト兼NVIDIA Research副社長 ビル・ダリー氏 |
今年の1月にNVIDIAチーフサイエンティスト兼NVIDIA Research副社長に就任したビル・ダリー氏が来日し、報道関係者を集めて記者会見を行なった。ダリー氏は'97年からスタンフォード大学のコンピュータ工学部の教授に就任し、2005年からはコンピュータ工学部 学部長を務めるなど学術分野での活躍してきたストリームコンピューティングの権威と言ってもよい研究者だ。
これまでNVIDIAのチーフサイエンティストを務めてきたデビッド・カーク氏(現NVIDIAフェロー)がどちらかと言えば3Dグラフィックスの権威であったのに対して、ダリー氏はGPUの新しい用途として注目されているGPUコンピューティングの権威であり、この人事は今後NVIDIAがどこに向かおうとしているのかを示すものとして、大きな注目を浴びている。
今回はダリー氏が報道関係者向けに行なった記者会見の模様をお伝えしていきたい。
●これまで大学で研究してきた経験を商用製品に役立てたいからNVIDIAに入った
ダリー氏は米国におけるストリームコンピューティングの権威であり、スタンフォード大学などで長年その研究に携わってきた。それだけに、今このタイミングでNVIDIAに転身するということには大きな注目を集めている。ダリー氏は「これまで長年ストリームプロセッサの研究を大学などで続けてきた。今回NVIDIAに入った一番の動機はその研究を商用製品に役立ててみたいと考えたからだ」と説明する。同氏によれば、現在GPUコンピューティングの市場で先頭を走っているのがNVIDIAであり、それがNVIDIAに入ることを決めた大きな要因であるという。
それではダリー氏はNVIDIAの中でどういう役割を果たしていくのだろうか。「私の役割は大きく2つある。1つはNVIDIA Researchを率いていくことであり、もう1つはそれらを活用しながら、先を見据えて製品をどのように進化させていくかを考えていくことだ」と、研究開発とそれを利用した製品への新しい技術の落とし込みといった役割を果たしていくことになるのだという。製品部門は今後3年間を見据えた部署だが、研究開発部門はその後となる3~10年を見据えて部署となる。つまり、ダリー氏はそうした2つの異なる目線を持つ部署の橋渡しとなるのだ。
同氏によれば、現在のGPU市場は“非常に熱い”マーケットなのだという。「'80年~'90年代にはCPUは年率50%という勢いで性能向上させてきた。しかし21世紀に入るとアーキテクチャ上の制限や電力の問題などからその伸び率は鈍化してきている。ところが、GPUは依然として年率50%を維持しており、今後はアプリケーションレベルで、CPUで行なわれていた処理もGPU側に移していくことになるだろう」と述べ、OSの起動やユーザーインターフェイスなどの処理にはCPUが、より大容量の演算が必要な処理はGPUといったような形での処理が定着していくだろう、という見通しを明らかにした。
●CPUとGPUはそれぞれの役割を果たしながらシステムの中で共存していくダリー氏は、競合他社の製品や技術と、NVIDIAの製品技術の比較について問われると「IntelのLarrabeeは現時点では実在していないので、比較することは難しい。ただ、これまでIntelが公開した資料に基づいて話をするのであれば、x86命令をデコードする際のスループット、プログラマブルなラスタライザーやテクスチャユニットなどの3Dグラフィックスを表示するための固定ハードウェアをもっていないことなどが、性能の足かせとなる可能性が高い」と述べた。
一方で「AMDのGPUとの比較という意味では、現状の3Dゲームなどのベンチマークでは彼らの製品も優れた数値を残しており、よい製品であると考えている。しかし、将来GPUコンピューティングのようなアプリケーションが増えてきた時にはどうだろうか。我々の製品はそうした未来も見据えた設計を行なっており、GPUコンピューティングと3Dグラフィックスの両方で性能が出るように設計している」と述べ、NVIDIAのGPUは3DグラフィックスのみならずGPUコンピューティングにも最適化されているとアピールした。
また、GPUが将来的にCPUを置き換えていくことになるのかという記者からの質問に対しては「現在利用されているアプリケーションには、レイテンシが性能のボトルネックになる処理はCPUのようなプロセッサが担当し、並列処理やスループットが性能のボトルネックになる処理はGPUで処理されるようになると考えている」と答えた。将来的にGPUがCPUを置き換えるというようなストーリーは考えていないという。
その上で、CPUとGPUの統合をどう考えるのかと問われると、「CPUとGPUが1チップになるというのは経済的な理由であり、それが理由なら充分にあり得る。性能やシステムデザインの柔軟性という観点では別々の方が理にかなっている」と答えた。
なお、噂になっているNVIDIAがx86プロセッサのようなCPUを設計しているのか、という質問も出たがそれについて「特に何も発表していない」と答えるに留まった。
●CUDAはOpenCLも包含するGPUコンピューティングのためのアーキテクチャこの他、現在GPUとCPUの間はPCI Expressのようなバスを経由して接続されているが、将来GPUコンピューティングのソリューションが増えていくと、その帯域幅が問題になるのではないかとの質問に対しては「現在のところのそれは大きなボトルネックになっていないと考えている。ただ、CUDA 2.2ではゼロコピーという新しい機能を追加する。ゼロコピーではメモリのアドレススペースをCPUとGPU間でマッピングすることにより、お互いの間でデータセットコピーの必要がなくなる。これにより一部の処理がGPU、その他はCPUでという処理を行なう場合にこれを利用することで、ほとんどのアプリケーションで帯域幅がボトルネックになることは無くなると考えることができる」と説明した。
これは、例えばTMPGEncのように、フィルターをCUDA、エンコードをCPUで行なうようなアプリケーションの場合、CPUのメモリ空間にあるデータをGPUに送り込む際に、PCI Expressの帯域幅がボトルネックとなりGPU側にデータが読み込まれるまでGPU側が待機状態になるため、せっかくのGPU処理があまり高速に行なわれなくなるという問題などに対処するためのものだと考えられる。
また、AMDが盛んにOpenCLこそスタンダードで、CUDAはプロプライエタリの仕様だとアピールしていることについては、「CUDAはプログラム言語ではない、CUDAはGPUコンピューティングのためのアーキテクチャであり、CUDAのアーキテクチャを基にしてアプリケーションが作られていく。C言語向けのCUDAは、すでにデファクトスタンダードのようになっており、100を超える一流大学や25,000人もの開発者がすでにこれを利用している。C言語向けのCUDAはプログラマーにとって非常に有益で、C言語の拡張として利用することができる。これに対してOpenCLはドライバモデルだ。CUDAではOpenCLを利用することもできるし、今後マイクロソフトが提供するDirectXベースのGPUコンピューティングも利用することができる」と答え、CUDAとOpenCLは競合するものではないという見解を示した。
さらに「我々もOpenCLが成功して欲しいと考えている。我々は公開されているものとしては最初のOpenCLに対応したドライバを公開しているし、OpenCLの標準化団体であるクロノスグループにも積極的に関わっている。業界と一緒にGPUコンピューティングを成功させていきたいと考えており、OpenCLもその取り組みの1つだと考えている」と話し、NVIDIAとしてもOpenCLの普及に積極的に取り組んでいくという姿勢を明確にした。
なお、ダリー氏は、5月29日にNVIDIAが開催する“Professional Solution Conference 2009”で基調講演を行なう予定となっており、こちらでもGPUコンピューティングに関するビジョンなどについて説明する予定となっている。
(2009年 5月 27日)
[Reported by 笠原 一輝]