EQQ.jp

Index


 

OpenCLの環境構築

Ubuntu 16.04 LTS で OpenCL の環境構築の方法を紹介します。

特に、NVIDIA の古いグラフィックボード(グラフィックチップ)を利用している人向けの内容です。

環境の構築には、基本的に apt コマンドのみを利用します。

 

 

まず、使っている Ubuntu の環境を調べます。
以降の操作は、ターミナル(端末)から行います。

Ubuntu のバージョンなどは、以下のコマンドで調べます。

$ lsb_release -a
$ uname -a

利用しているグラフィックボードやグラフィックチップは、以下のコマンドで調べます。

$ lspci
$ sudo lshw

NVIDIA のグラフィックボードを利用していて、特にドライバを変更してない場合、nouveau ドライバを利用していると思います。

これは、以下のコマンドで調べることができます。

$ dmesg | grep -i nouveau

apt コマンドで、NVIDIA 系のソフトウェアをインストールするわけですが、apt で利用できるソフトウェアパッケージ等は以下のコマンドで調べることができます。

$ apt list | grep -i nvidia
$ sudo apt search nvidi

これらを見ると、私の環境では、304, 331,340, 346, 352, 361, 367, 375, 384のバージョンのドライバが apt コマンドで利用できることがわかりました。

次が肝心な調査になりますが、デバイスで利用可能なドライバを、以下のコマンドで調べます。

$ sudo ubuntu-drivers devices

このコマンドを実行すると私の環境では、以下のように表示されました。

model : C79 [GeForce 9400M] vendor : NVIDIA Corporation
driver : nvidia-304 – distro non-free
driver : xserver-xorg-video-nouveau – distro free builtin
driver : nvidia-340 – distro non-free recommended

この場合、nvidia-340 のバージョンのドライバが推奨(recommend)されていることがわかったので、以下のコマンドで、バージョン 340 のドライバをインストールします。

$ sudo apt install nvidia-340

OpenCL で開発を行いたいので、以下のコマンドで、OpenCL の開発環境をインストールします。

$ sudo apt install nvidia-340-uvm nvidia-opencl-dev nvidia-modprobe

※ nvidia-340-uvm のバージョン番号は、インストールしたドライバのバージョンに合わせて下さい。

NVIDIA のグラフィックボードで、OpenCL を入れたとなれば、CUDA も入れたいとなるところです。

以下のコマンドで、CUDA もインストールできるようですが、最新バージョンのドライバも一緒にインストールされてしまい、うまく動作しませんでした。

$ sudo apt install nvidia-cuda-toolkit (古いチップには推奨せず)

リブート後、動作確認を行うため、clinfo をインストールして、実行します。

$ sudo apt install clinfo
$ clinfo

GPU の環境が表示されれば、正常に動作していると思います。

OpenCLインストールで紹介したようなテストプログラムを用意し、コンパイルして、実行してみます。

$ gcc -o test test.c -lOpenCL
$ ./test