ニュース
» 2010年09月22日 17時30分 公開

GPU Technology Conference:NVIDIAが明らかにした「Fermi」の次 (2/3)

[鈴木淳也(Junya Suzuki),ITmedia]

広がるCUDAワールドでGPUコンピューティング戦略を展開

 GPUコンピューティングにおけるCUDAの存在感を積極的にプッシュするNVIDIAだが、ファン氏は「マルチコアであってこそのGPUであり、GPUがCPUを駆逐するわけではない」という。ファン氏が両者の共存関係を強調するのは、IntelやAMDとの関係を意識した政治的な理由でなく、それぞれに得意不得意があることを理解しているからだ。

 GPUは汎用アプリケーションの実行に向いていないし、既存のCPUは並列コンピューティングで効率が悪い。GPUコンピューティングの得意分野は物理シミュレーションや統計演算などで、こうした特定の分野でCUDAの成果をアピールするのが、ファン氏の基調講演の目的でもある。

ファン氏が重ねて強調するのは、GPUコンピューティングはCPUを駆逐するものではなく、あくまで共存していくものであるという

並列コンピューティングにはさまざまな用途がある。最も知られているのは科学技術計算だが、それだけでも多くの用途が挙げられる(写真=左)。並列化の進展がなければ、今後10年で100倍以上の“パフォーマンス的損失”が生じるという(写真=右)

 ファン氏は、GPUコンピューティングに対するNVIDIAの取り組みの成果として、CUDAでアプリケーションを開発する技術者が増えてきており、Tesla搭載マシンをリリースしたOEMの数が2009年の1社から現在9社になったことを報告している。また、今回のGTCに合わせて登録されたCUDA関連技術論文の数は2009年から5倍にも達したという。

 基調講演では、CUDAを採用した具体的な成果としてMATLABの統計解析アプリケーション向け並列コンピューティング用ツールボックスや、Amber 11の分子シミュレーション解析アプリケーション、Ansysのエンジニアリングシステムなどのライブラリで、GPUアクセラレーションが可能になったことが取り上げられた。

MATLABの並列コンピューティング用ツールボックス。統計解析などのアプリケーション向けライブラリだ(写真=左)。Amber 11の分子シミュレーション解析アプリケーションもCUDAに対応した(写真=右)

 CUDA環境で開発したアプリケーションの実行にはFermiなどのCUDA対応GPUが必要だが、こうした環境を持たないx86の汎用システムのユーザーでもCUDAの恩恵を“ある程度”受けられるように、STMicroelectronics傘下のPortland Group(PGI)が「CUDA-x86」というCコンパイラの提供を発表した。このコンパイラを通すことでCUDA環境開発アプリケーションを通常のx86システム上でも実行できるようになる。

 このように、GPUコンピューティングによる並列処理は、アプリケーション次第で大きな効果を発揮する。Amberのベンチマークテストの結果において、Fermi世代のGPUでCUDAコアの増加を比例して処理性能が伸びるのに対し、汎用のx86系CPUではある段階から頭打ちになってしまう。この傾向は、ワークロードが重いほど明確で、並列性の高いアプリケーションほどGPUコンピューティングでは有利になる。

 Fermi世代GPUの並列処理の高さを示す1つの例として、ファン氏はCrayが開発したスーパーコンピュータ「Kraken」(AMD OpteronベースのHPCシステム)と同性能のマシンが、Fermiベースではわずか1つのボックスサイズに収まってしまうことを紹介している。Krakenは数年前に就役したマシンなので、厳密な意味で最新システムとの比較はできないが、Fermiのポテンシャルを分かりやすく示してくれる。

CUDAにおける過去1年間の成果。SDKのダウンロード数が倍増しただけでなく、対応OEMや学術論文の登録数が飛躍的に伸びている(写真=左)。STMicroelectronics傘下のPortland Group(PGI)が提供する「CUDA-x86」。x86プラットフォーム向けのCコンパイラセットだ。これにより、CUDA実行環境を持たないx86系PCでもCUDA対応アプリケーションをコンパイルして利用できる(写真=右)

AmberのベンチマークテストでFermiベースのGPUと通常のCPUとのパフォーマンスを比較する。ワークロードによっては大きな効果が得られる。スーパーコンピュータのKraken(Crayが構築したOpteronベースのHPCシステム)が処理可能なワークロードをFermiベースのGPUで置き換えると……このような形になる

Copyright © ITmedia, Inc. All Rights Reserved.

この記事が気に入ったら
ITmedia PC USER に「いいね!」しよう