はじめに

OpenCLLink は,Wolfram言語を使ってOpenCLのシステム情報についてのクエリを行い,Wolfram言語を使ってOpenCLプログラムを実行することを可能にする.このセクションでは,OpenCLLink の機能について簡単に述べる.

OpenCLとは

OpenCLLink パッケージは,Wolfram言語を通してOpenCLの機能を利用することを可能にする.ユーザは,OpenCLを使用できるデバイスのドライバとハードウェアをインストールしなければならない.現在 OpenCLは,多くの種類のNVIDIA,AMD/ATI,VIAのハードウェアでサポートされている.またAppleのMacOSX Snow Leopard 10.6でもネイティブサポートされている.

CPUとOpenCL

通常のCPUプログラムと違って,OpenCLではCPUあるいはビデオカード上のGPU(グラフィックスプロセッシングユニット)のいずれかで実行するコードを書くことができる.正しく行うと,性能を大きく高めることができる.

CUDAとOpenCL

CUDALink と違って,OpenCLLink ではGPUとCPU(CPUがそれをサポートするのであれば)の両方でプログラムを実行することができる.

システム情報

OpenCLLink パッケージを使うには,まずそれをロードする必要がある.

次に,システムサポートを OpenCLLink が検出するかどうかをチェックすることができる.これはOpenCLQを使って行う.

サポートされるハードウェアについて詳しく知りたい場合は,SystemInformationOpenCLInformationを使う.ここでは,SystemInformationを使う.

ユーザはOpenCLInformationを使って,基礎となるSystemInformationデータにアクセスすることもできる. OpenCLInformationからの結果はクエリを行うことができる.ここでは,最初のプラットフォームのデバイス名が表示されている.

OpenCLプログラミング

OpenCLLink の主な機能は,新しいGPUプログラムの開発を容易にし,これをWolfram言語の作業に組み込むことができるようにするということである.

OpenCLLink の機能を使うためには,まず OpenCLLink アプリケーションを以下のようにロードする必要がある.

簡単なOpenCL関数をロードする.これは入力ベクトルを取り,それぞれの要素を倍にする.

以下は,関数の呼出しに使う入力ベクトルである.

OpenCLFunctionを呼び出す.

以下のように,OpenCLFunctionInformationを使って関数の情報を得ることができる.