Snow LeopardのOpenCLのサンプルを試す

海上忍
2009/09/14 16:44

読者の中には、Snow Leopardの新機能「OpenCL」はどこ?と思った方も多いだろう。その理由を詳らかにする!……というわけにもいかなかったので、今回はアップルが公開しているサンプルを試してみよう。

 Snow Leopardの新機能として、鳴り物入りで紹介されてきた「OpenCL」。OpenCL実装を含む最初のOSとなるはずのSnow Leopardには大々的にフィーチャーされるはず……と、昨年12月の仕様公開時に確信したMacフォロワーは少なくなかったはず。

 しかし蓋を開けてみると、OpenCLの機能を生かしたアプリケーションは見当たらない。それらしきフレームワークは「/System/Library/Frameworks」に見つかるものの(OpenCL.framework)、otoolコマンドで調べたかぎり直接リンクしているアプリケーションはなく、QuartzCore.frameworkなどいくつかのフレームワークしかリンクを確認できなかった。

 少なくとも、一般のユーザの目に止まる形でOpenCLの機能をいかしたアプリケーションはSnow Leopardに収録されていない、と結論づけていいはずだ。

 一方でAppleのサイトに目を向けると、不特定多数が入手可能な形で(NDAの制約が発生するADCサイトの外で)公開されているサンプルコードが存在する。「OpenCL Procedural Grass and Terrain Example」はその1つで、風にそよぐ数百本(!)の草を眺めることができる。

 デフォルト設定のままビルドできるので、OpenCL対応のグラフィックチップ搭載機を利用している場合にはお試しいただきたい。

よく見ると微妙に異なる「草」の動きは、OpenCLとOpenGLがバッファを共有することで実現されている(画像をクリックすると拡大します) よく見ると微妙に異なる「草」の動きは、OpenCLとOpenGLがバッファを共有することで実現されている(画像をクリックすると拡大します)
生成された実行ファイル部分をotoolコマンドで調べたところ。OpenGLとOpenCLのフレームワークがリンクされていることがわかる(画像をクリックすると拡大します) 生成された実行ファイル部分をotoolコマンドで調べたところ。OpenGLとOpenCLのフレームワークがリンクされていることがわかる(画像をクリックすると拡大します)
記事に関係する情報をコメントでお寄せください

ニックネーム : CNET_IDにログインしてコメントする

コメント本文(必須) :
  • 新着記事
  • 人気記事
  • 特集
  • ブログ