【コラム】
今週末の28日、米国のApple Storeではブラックフライデーのイベントが開催されるそうです。日本はどうなのよとサイトをチェックしましたが、11月25日時点では特に変化なし。まさか、毎年恒例の福袋までなにもないことはないでしょうから、大人しく待つことにします。
さて、今回は「OpenCL」について。ご存知、来年リリース予定のSnow LeopardでサポートされるGPGPU技術だ。先日、規格のとりまとめを行うKhronosグループがOpenCLの進捗状況を公開したので、その資料をもとにOpenCLがもたらす影響について考えてみたい。
15日から21日にかけ、米オースティンで開催されたハイパフォーマンスコンピューティング関連のイベント「SC08」。Khronosグループはそこで説明会を開催、OpenCLの進捗状況を説明した。SC08開催前の時点では、NDAに違反しない情報はこちらにある文章のみという状況であり、文脈からGPGPU技術であることを推測しているに過ぎなかったが、ようやく具体的な内容が判明したことになる。その後公開されたPDFから読み取れる、全体像に関係ありそうな事項は以下のとおりだ。
ロイヤリティーフリーかつ特定ベンダーに依存しない、ヘテロジニアスな構成向けにCPUとGPUのパワーを活用したプログラミング環境を提供
OpenCLの草案はAppleを中心にAMDとIntel、NVIDIAほか数社により作成され、6月にKhronos宛に提出。その後作業部会が結成され草案の見直しを行い、現在は加盟企業による承認待ちの状態
OpenCL作業部会には、Khronosのほか26社 - Intel、AMD、NVIDIA、ARM、NOKIAなど - が参加
GPU以外のデバイスにも対応する。組み込み / モバイル用途には、「OpenCL Embedded Profile」の策定が検討されている
そのOpenCLの仕様だが、Snow Leopard発表時点より情報量は格段に増加した。C言語ベース (ISO C99準拠) のプログラミング言語で各種関数を利用する、という形態は以前から知られていたが、メモリモデルが示されるなど、実装のあり方をイメージしやすくなっているのだ。
そのメモリモデルの概念図から判断すると、「Work-Item」と命名されたプログラムの最小単位 (スレッド?) はそれぞれ専用のローカルメモリ領域を持ち、それが1つのグループ「Compute Unit」という単位で管理されることがわかる。そのCompute Unitには、専属のローカルメモリが割り当てられ、かつ他のユニットとの間でキャッシュ領域を共有する、という構造だ。
これをCUDAのメモリモデルと比較してみると、全体的な構造がよく似ていることに気付く。草案策定時からNVIDIAが関与していることもあわせると、CUDAのアーキテクチャが多少なりとも影響しているのであろうことが推測される。
しかし、CUDAではテクスチャメモリ (グラフィックドライバにより確保された描画用メモリ領域) を使用している部分が、汎用のGlobal Memoryに置き換わっている。メモリモデルだけでは断定できないが、GPU以外のチップでも動作可能なデバイス非依存の性質を表しているとも言えるはずだ。
OpenGLとの連携も、今回正式に公開された機能の1つ。発表によれば、OpenCLはOpenGLとの間でリソース (テクスチャなど各種データ) の共有が可能になる。たとえば、OpenGLで描く図形へOpenCLによるフィルタ処理を加える場合、メモリ領域へ図形データをコピーする必要はなく、そのままOpenGLのメモリ領域へOpenCLからアクセスできる。その反対に、OpenCLで加工したイメージをOpenGLの機能で描画することも可能だ。
iPhone 3Gユーザでもある筆者としては、「OpenGL ES」との関係にも注目したい。OpenCLでは、組み込み / モバイルデバイス向けに軽量化した「OpenCL Embedded Profile」の策定も進められているが、同じく組み込み / モバイルデバイス向けサブセットの「OpenGL ES」との連携が考慮されているというのだ。現行iPhone OSにはOpenGL ES 1.1が採用されていることから、8月に仕様が公開された「OpenGL ES 2.0」を受け、次期iPhone OSではOpenGL ES 2.0 + OpenCLでアクセラレーション、という可能性も考えられる。今後の動向に注目しよう。
|
次期iPhone OSは、OpenGL ES + OpenCLでアクセラレーションされるかも? (画面はOpenGL ES 1.1の機能を利用したiPhoneアプリ「Space Buster Lite」 |
| KhronosがGPGPU技術標準化の作業部会を設立 - あの「OpenCL」も検討 [2008/6/18] |
| "GeForceの父" David Kirk博士、東大で並列コンピューティングについて講演 [2007/9/13] |
| 「CUDA」技術の全貌 - GeForce 8800を汎用ベクタプロセッサとして活用!? [2006/12/19] |
| Appleが3月初旬にスペシャルイベント開催の噂 - iPad 3の発表か [18:34 2/10] |
| リンクス、5600DPIのレーザーセンサーを搭載した8ボタンゲーミングマウス [16:51 2/10] |
| アスク、USBトークンキーをセキュリティキーとしたポータブルHDD2モデル [16:50 2/10] |
| 【特別企画】2012年 VAIO春モデルカスタマイズポイント ~VAIO Z編~ [15:44 2/10] |
| より多くのファイルをプレビュー表示できる「FenrirFS 2.3」が公開 [15:00 2/10] |
|
【レポート】ドコモ、「GALAXY S II LTE SC-03D」をバージョンアップ [19:03 2/10] 携帯 |
|
恋愛したくなる!? アニメ『アマガミSS+plus』 [19:00 2/10] ホビー |
|
【レポート】CP+2012 - 発売前の「X-Pro1」の高級感に酔いしれる - 富士フイルム [18:57 2/10] 家電 |
|
インターネット、V2版を再現した「VOCALOID3 Megpoid Native」発表 [18:43 2/10] クリエイティブ |
|
[機動戦士ガンダム]新連載マンガは「サンダーボルト」 3月スタート [18:41 2/10] ホビー |