ニュース
» 2008年12月17日 11時25分 UPDATE

残るのはオープンな規格──AMDのGPGPU「ATI Stream」と「OpenCL」の関係

日本AMDは、同社のGPGPUサポート技術である「ATI Stream」の説明を、AMD本社から来日したスタッフを交えて行った。

[長浜和也,ITmedia]

 ATI Streamは、AMDが整備を進めているGPGPUを利用するために用意されるプラットフォームで、NVIDIAでいうところのCUDAに相当する。HPC向けのGPUである「FireStream」シリーズでは2007年から利用可能となっていたが、先日リリースされたCatalyst 8.12にもATI Streamが実装され、Radeon HD 4000シリーズでGPGPUが利用可能となった。コンシューマーユーザーもCatalyst 8.12に導入されたトランスコート機能「Avivo Video Converter」でGPGPUのパフォーマンスを享受できるようになっている(現在のバージョンではRadeon HD 4800/同 4600シリーズのみ利用可能)。

kn_atistrm_01.jpgkn_atistrm_02.jpg Catalyst 8.12で導入されたATI Streamを利用する「Avivo Video Converter」で、GPGPUによるトランスコードを行える(ただし、変換するフォーマットによってはCPUで処理される場合もあり)(写真=左)。AMDの説明ではCUDAを利用したアプリケーションが114秒かかる処理をAvivo Video Converterは48秒で終了できるとしている(写真=右)

 AMDは、ATI Streamの特徴としてオープンであることを挙げている。ベンダーが開発してきた「独自仕様」の技術が数多くあったが、その多くが衰退して業界標準のオープンな規格に置き換わっていったことをAMDは示している。その上で、ATI Streamが利用できるAPIとして、AMDだけなくNVIDIAも参画している組織である「Khronos Group」が策定した業界標準規格の「OpenCL」をサポートしたアドバンテージを訴求した。

 AMDは、同社がCPUとGPUに対する開発環境を提供できる唯一の企業であることをアピールしながらも、GPGPUの市場は立ち上がってから3年ほどしかたっていないため、(CPUやGPUの市場のように)支配的なプレイヤーはいないと述べたうえで、OpenCLはオープンスタンダードとなり得る規格であって、そうなれば、インテルもNVIDIAも使うことができ、いったんプログラムを記述してしまえば、ほかのハードウェアシステムでも簡単に移植して実行できるため、ソフトウェアベンダーの開発効率も向上すると説明している。

kn_atistrm_03.jpgkn_atistrm_04.jpgkn_atistrm_05.jpg 3Dアクセラレーションの「3dfx Glide」やメモリ規格の「Rambus」など、メーカーが独自に提唱した規格は“オープン”でないために、その多くが業界標準の規格に置き換わっていった(写真=左)。オープンであることを重視するATI Streamは、サイバーリンクのPowerDirector 7やアークソフトのTotalMedia Theaterなどで2009年の第1四半期でサポートされる予定だ(写真=中央、右)

kn_atistrm_07.jpgkn_atistrm_09.jpg AMDが示す、ATI StreamがサポートしているOpenCLと独自技術で実現するCUDAの違い(写真=左)。OpenCLは、どのベンダーでも利用でき、開発言語はオープン規格のKhronosをベースにしている。また、CPUやGPUを利用する機能もOpenCLでは最適化されている。AMDは、業界標準のAPIを利用することで、AMD製のCPUやGPUだけでなく、ほかのベンダーのCPUやGPUでも容易に利用できるプログラムを開発できるとしている(写真=左)

 AMDによると、これまでは、CPUで処理を行うプログラムを開発する言語とGPUで処理を行うプログラムを開発する言語はそれぞれ別に用意されていたが、最近では、CPUで行える処理とGPUで行える処理に重なる部分が出てきており、そのような状況に対応するため、OpenCLではCPUとGPUで利用できるAPIも用意されているという。CPUとGPUのカップリングには高いレベルが要求されるが、CPUとGPUのメーカーであるAMDなら可能であると説明している。

kn_atistrm_06.jpgkn_atistrm_08.jpg 従来、別の目的で利用されてきたCPUとGPUだが、GPUでプラグラムが可能になったり高度な並行処理が可能になったことで、最近ではCPUとGPUで同じ処理が行えるようになってきた(写真=左)。ATI Stream SDKのバージョンは現在1.3で、2009年第1四半期には1.4が公開される予定だ。そこではマルチGPUのサポートなどが導入される見込みだ

Copyright© 2017 ITmedia, Inc. All Rights Reserved.

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