
火曜日、NVIDIAはCUDAアプリケーションのターゲットとしてx86プロセッサをサポートすると発表しました。これは、現在NVIDIAのコンピューティングアプリケーション向けGPUラインをサポートするように作成されたアプリケーションが、GPUを必要とせずに標準的なx86 CPUで実行できるようになることを意味します。
本日は、ポートランド・グループのマシュー・コルグローブ氏にお話を伺いました。ポートランド・グループは、高性能並列コンピューティング・アプリケーション向けのコンパイラを専門としています。STマイクロ社の子会社であるポートランド・グループは、主にマルチプロセッサシステム向けに設計されたFortranのバージョンに注力しています。プログラミング言語として、Fortranは科学計算分野で依然として広く利用されており、手続き型計算に大きく依存しており、CやC++のような汎用言語として設計されていません。
コルグローブ氏は、x86 CUDA Fortranの初期バージョンはAMDとIntelのマルチプロセッサCPUに重点を置き、浮動小数点演算には最新バージョンのSSEを活用すると述べた。また、ラボではIntel AVX(アドバンスト・ベクター・インストラクション)版のコンパイラの動作シミュレーションが既に実施済みであると述べた。そのため、IntelがAVX対応のSandy Bridge CPUを出荷すれば、並列アプリケーションのパフォーマンスは大幅に向上するはずだ。
コルグローブ氏に、AMD GPUがCUDAアプリケーションのターゲットになる可能性についても尋ねたところ、AMDのGPUラインをサポートする予定はないとの返答がありました。「AMD GPUをサポートできれば嬉しいですが、AMDからの多大なサポートが必要で、それがなかなか得られません。」
Nvidia GPU と x86 プロセッサの両方をサポートすることで、アプリケーション開発者は、混合システム (x86 + GPU) および GPU ハードウェアのないシステムで実行できる単一のバイナリでソフトウェアを構築できるようになります。
NVIDIAがこの取り組みに協力するのは興味深い。CUDAアプリはx86では動作が遅くなることは間違いないが、CUDAの独自性はGPUに注力するNVIDIAにとって一定の競争優位性となっている。OpenCLやMicrosoftのDirectComputeといったコンピューティングAPIの新たな標準規格の出現を考えると、NVIDIAは時代遅れにならないために他のプロセッサ技術をサポートする必要があると考えたのかもしれない。
PCWorld の GeekTech ブログから GPU Tech Conference に関する詳細がさらに報道されます…
- GPU 技術カンファレンス 2010 における高性能コンピューティングのルール
- ジェンスン・フアンがGPU技術カンファレンスを開始
Twitterまたは Facebookで GeekTech をフォローするか、 RSS フィードを購読してください。