OpenCL
「Open Computing Language」の略です。OpenCLは、クロスプラットフォームの並列プログラミングに使用されるオープン標準です。もともとは2008年にAppleが開発し、現在はKhronos Groupが管理しています。OpenCLを最初にサポートした主要なオペレーティングシステムは、2009年にリリースされたSnow Leopard(Mac OS X 10.6)でした。
OpenCLは、ソフトウェアのプログラムが複数のプロセッサに同時にアクセスして並列処理を実行できるAPIを提供します。例として、CPU、GPU、デジタルシグナルプロセッサ(DSP)、フィールドプログラマブルゲートアレイ(FPGA)などがあります。複数のプロセッサに計算処理の負荷を分散することで、OpenCLは処理効率を高め、プログラムのパフォーマンスを大幅に向上させることができます。
OpenCLはさまざまな種類のプロセッサをサポートしますが、特に一般的な計算処理でGPUにアクセスするためによく使用されます。この技術はGPGPUとも呼ばれ、GPUの処理能力を活用して、CPUによる計算を支援します。OpenCLが登場する前は、CPUが最大限に動作している間も、グラフィックスプロセッサはアイドル状態のままであることがよくありました。OpenCLによって、GPUはグラフィックスとは関係のない計算処理でCPUを支援できるようになります。
OpenCLを活用するには、ハードウェアとソフトウェアの両方がOpenCL APIをサポートしている必要があります。OpenCLがもたらすパフォーマンス上の利点により、NVIDIAとAMDが開発したほとんどのビデオカードは現在、OpenCLをサポートしています。スマートフォンやタブレットで使用されるものなど、多くのモバイルグラフィックスプロセッサもOpenCLをサポートしています。
知識をテストする