主にパソコン向けに3次元グラフィックス・チップを開発する米NVIDIAは11月14日,大学における並列プログラミングの講義用途として,同社のGPU(Graphics Processing Unit)用のC言語処理系「CUDA」の採用が広がっていると発表した。すでに採用校は20を超えるという。CPU/GPUの世界では現在,GPUが搭載する浮動小数点演算ユニットを,あたかもスーパー・コンピュータのように汎用的な科学技術計算に利用する「GPGPU」(General Purpose GPU)が提唱されており,今回のCUDAはGPGPUの一例である。

 グラフィックス処理では画面を構成する細かい要素ごとに計算をして,その計算の集合体が画面となる。GPUはこうした処理を高速に実行するためマルチコアとして設計されている。さらに,現在のGPUは,頂点シェーダやジオメトリ・シェーダ,ピクセル・シェーダといった描画パイプラインを,プログラミング可能な汎用の演算ユニットによって実現している。こうした背景から,GPUをスーパーコンピュータとして使うGPGPUという発想が注目を集めるようになっている。

 米NVIDIAのハイエンド・ゲーム愛好家向けGPUカード「GeForce 8800シリーズ」の例で言えば,プログラミング可能な浮動小数点演算用のコア「Stream Processor」(SP)が128個(廉価版は112個)載る。1つのSPは統合的/汎用的な演算ユニットであり,プログラミングによって頂点シェーダにもピクセル・シェーダにもなる。その浮動小数点演算性能は,1個のSPで数G FLOPS,128個全体では数百G FLOPSに達する。