OpenCLLink の設定

このセクションでは,OpenCLLink をマシンでどのように設定するかについて説明する.また問題を見付けて解決する方法についても述べる.

設定と検証

OpenCLLink は,特別な設定を行わなくても,Mathematica をインストールすると自動的に使用できるように設計されている.このことは,OpenCLQ関数を使って検証することができる.

OpenCLLink アプリケーションをロードする.

In[1]:=
Click for copyable input

OpenCLLink がサポートされているかどうかをチェックする.下に示すようにTrueを返せば,OpenCLLink を使うことができる.

In[2]:=
Click for copyable input
Out[2]=

OpenCLQTrueを返さない場合は,then OpenCLLink を使うことはできない.しかし,これを正すために使用中のマシンを設定することができることもある.

以下は,OpenCLQFalseが返される主な5つの理由である.

  • サポートされていないオペレーティングシステム — OpenCLLink は,SUNのSolaris,あるいは10.6以前のバージョンのAppleのMac OS Xではサポートされていない.
  • サポートされていないハードウェア — OpenCLLink は,OpenCLを使用できるグラフィックスカードおよび/あるいはSSE3をサポートするCPUでしか使用できない.使用しているグラフィックスカードがサポートするかどうかについては,NVIDIA CUDAのWebサイトあるいはAMD/ATI OpenCLのWebサイトでチェックすることができる.
  • 誤ったATIドライバ — バージョン10.10以降のATIハードウェアには2つのバージョンがある.OpenCLをサポートするものと,しないものである.AMD Catalyst Accelerated Parallel Processing (APP) Technology EditionのドライバがOpenCLを使用するためには必要である.ドライバは特定のカードのみでサポートされており,AMD/ATIドライバWebサイトからダウンロードすることができる.
    • OpenCL ATI Stream SDKがない — for APPドライバでサポートされていないATIハードウェアについては,あるいは CPUを使うつもりであれば,AMD/ATI Stream SDKが必要である.Stream SDKはAMD/ATIのOpenCLのWebサイトからダウンロードできる.

    このセクションの残りの部分では,OpenCLLink を使用できるようにする方法について説明する.

Mac OS X

Apple Mac OS X Snow Leopard (10.6)には,オペレーティングシステムの一部としてOpenCLへのサポートが搭載されている.Snow Leopardより前のOS Xのバージョンではサポートされていない.

NVIDIA

概して,CUDALink が使えれば,OpenCLLink も使えるはずである.CUDALink の設定」には,CUDALink をどのように検証し,使用できるようにするかについて説明されている.このドキュメントを読めば,OpenCLLink の問題も解決することができるはずである.

AMD/ATI

OpenCLLink を使うには,OpenCLを使用できるビデオカード(次のセクションを参照)必要である.AMD Catalystドライバも必要である.ビデオカードの中には,AMD Catalyst Accelerated Parallel Processing (APP)ドライバを搭載したものもあり,その場合はこのドライバで十分である.APPドライバをサポートしない場合には,OpenCLLink を使うのにATI Stream SDKが必要である.

AMD Catalystドライバは,AMD/ATIのドライバWebサイトから,ATI Stream SDKはAMD/ATI StreamのWebサイトからダウンロードすることができる.

サポートされるAMD/ATIビデオハードウェア

以下のAMD/ATIビデオハードウェアが OpenCLLink でサポートされる.

  • ATI Radeon HD: ATI Radeon HD 5970,ATI Radeon HD 5870,ATI Radeon HD 5850,ATI Radeon HD 5770,ATI Radeon HD 5750,ATI Radeon HD 5670,ATI Radeon HD 5570,ATI Radeon HD 4890,ATI Radeon HD 4870 X2,ATI Radeon HD 4870,ATI Radeon HD 4850 X2,ATI Radeon HD 4850,ATI Radeon HD 4830,ATI Radeon HD 4770,ATI Radeon HD 4670,ATI Radeon HD 4650,ATI Radeon HD 4550,ATI Radeon HD 4350のいずれか
  • ATI FirePro: ATI FirePro V8800,ATI FirePro V8750,ATI FirePro V8700,ATI FirePro V7750,ATI FirePro V5700,ATI FirePro V3750のいずれか
  • ATI FireStream: ATI FireStream 9270あるいはATI FireStream 9250
  • ATI Mobility Radeon HD: ATI Mobility Radeon HD 4870,ATI Mobility Radeon HD 4860,ATI Mobility Radeon HD 4850X2,ATI Mobility Radeon HD 4850,ATI Mobility Radeon HD 4830,ATI Mobility Radeon HD 4670,ATI Mobility Radeon HD 4650,ATI Mobility Radeon HD 4500 Series,ATI Mobility Radeon HD 4300 Seriesのいずれか
    • ATI Mobility FirePro: ATI Mobility FirePro M7820,ATI Mobility FirePro M7740,ATI Mobility FirePro M5800のいずれか

    ATIのOpenCL実装では,SEE 2.x以降のサポートを持つx86 CPUもOpenCLデバイスであると認識される.適切なおよびのオプションを指定することによって,CPUを OpenCLLink で使うこともできる.

環境

MacOSXでは,OpenCLQはOSX 10.6 (Snow Leopard)がインストールされているかどうかをチェックする.それより前のバージョンではサポートされていないので,検出されない場合には失敗する.NVIDIAハードウェアでは,OpenCLQCUDALink における検出のCUDAQと同じ方法に従う.詳細については,CUDALink の設定」を参照のこと.

ATISTREAMSDKROOT

このセクションは,AMD/ATI GPUを持つシステム,あるいはAMD/ATI Stream SDKを一緒に使うCPUについてのみ当てはまるものである.

LinuxおよびWindowsでは,環境変数を使ってAMD/ATI Stream SDKへのパスを調べる.検出されない場合には,以下のパスがチェックされる.

"Windows""C:\\Program Files\\ATI Stream"
"Windows-x86-64""C:\\Program Files (x86)\\ATI Stream"
"Linux"$Failed
"Linux-x86-64"$Failed

が定義されていない場合の,AMD/ATI Stream SDKへのデフォルトのパス.

以下を使って Mathematica では変数をチェックできる.

In[1]:=
Click for copyable input
Out[1]=

検出されたら,その結果はに保存される.

エラーメッセージ

OpenCLInformationが返すエラーメッセージは,CUDAInformationのものと同じである.CUDALink 検出エラーメッセージ」 を参照されたい.

New to Mathematica? Find your learning path »
Have a question? Ask support »