まんぼう日記

takataka's diary

GPGPU用マシンにCUDAをインストール

昨日は体調崩して寝込み,今日は大学の行き帰り計23kmほど走ってきたたかたかです.相変わらずめちゃくちゃな生活しております (^^;  最近3週連続で週末(土土日)に仕事で,3日ともいつものX登校プチルート( X登校プチ15km 波穂神社 源内道 - まんぼう日記 & X登校プチ15km ふたたび & 背景画像更新 - まんぼう日記 )を走って登校するはめに…はめにとかいうて自分でそーすることにしたんですけどね (^^;;

 

瀬田川を南下 ==> 瀬田川洗堰 ==> 大戸川沿い ==> 堂 ==> 柴原 ==> 源内道で,寄り道なしで10kmちょい.全部走破する体力はありません(源内道とか山道やし)が,途中の歩きを入れても60分ちょいオーバー.走ってる間は1km5分台後半のペースを守れるようになりました.秋冬の頃は5分台は3kmが限界やったから,ちょっとは進歩したようです.

 

でまあ今日はちょっと遠回り.

f:id:takatakamanbou:20150607222014j:plain f:id:takatakamanbou:20150607222015j:plain

久しぶりのいつもの場所(左)と,甲羅干し中のかめさん(右).完全に自分用メモですが,唐橋から左の場所までちょうど5km,28分.右のかめさんは,X登校プチ15km ふたたび & 背景画像更新 - まんぼう日記 の時にも撮ろうとしたひとたちです.ついに甲羅干し中をとらえることができました.最大望遠やけど.今までずっと,大きいのん2匹と小さいのん1匹でおって,大きいのんの上に小さいのんが乗ってるん見たこともあるんやけど,今回は2匹だけでした….

 

さて,「はよタイトルの話に入れ」っちう声が聞こえてきそうなので,そろそろ本題 (^^;  GPGPU用マシンに Ubuntu をインストールして Theano を使えるようにする - まんぼう日記 の続きです.CUDA を入れて Theano で GPU 使う実験する話,になるはずでしたが,紆余曲折のあげくそこまでたどり着きませんでした.タイトルに偽りありです…すいません (^^;;  成功した後でうまくいった手順を要領よくまとめて書くとかそういうんはちゃんとした人におまかせして,へっぽこたかたかは右往左往 \(@_@;\ ... /;@_@)/ してる様子をだらだら書き記します.

 

2015-06-12 追記: 続 GPGPU用マシンにCUDAをインストール - まんぼう日記 に続編があります

 

 

Ubuntu 15.04 に CUDA をインストール

前回,件のマシンには Ubuntu 15.04 をインストールして Theano を使えるようにしました.その時参考にした Theano のインストールガイドのページ http://deeplearning.net/software/theano/install_ubuntu.html の下の方,Contributed GPU instruction ( http://deeplearning.net/software/theano/install_ubuntu.html#contributed-gpu-instruction ) 以下に CUDA を入れて GPU のテストをする話があるので,やってみました.Ubuntu 15.04 の例は載ってないので,14.04 のを見ながら.

 

まずは,NVIDIA のドライバと CUDA tool kit をインストール.

$ sudo apt-get install nvidia-current
$ sudo apt-get install nvidia-cuda-toolkit

前者は nvidia-304 が,後者は CUDA 6.5 のものが入りました.で,再起動してみると…ブート途中でエラーが出て,GUIでログインでけへんようになってまいました.どうも,304 ってバージョン古すぎなのが問題な気配.

$ sudo apt-get purge nvidia-304

したら,元に戻りました(たぶん,OSのインストール時に選択されたドライバが使われるようになったんやと思います).

 

うーむ.どうやら,自分で NVIDIA からビデオカードのドライバとCUDA一式をダウンロードして,手動でインストールするんがよさげ.でも,Ubuntu 15.04 向けの CUDA(最新は 7.0)はまだ用意されてないようです.14.04 向けとかを入れたとしても,なんか GCC のバージョンとかいろいろ問題になりそう….

 

というわけで,OSのインストールからやり直すことに (^^;

 

Ubuntu 14.04 LTS に CUDA をインストール

GPGPU用マシンに Ubuntu をインストールして Theano を使えるようにする - まんぼう日記 の時は,訳もわからず 14.04 をやめて 15.04 にしましたが,結局 14.04 でも問題なく起動しました.やぱし Tesla がちゃんと挿さってなかったせいでおかしくなってたみたい.で,Theano のインストールまではほとんど同じ.なぜか

$ sudo pip install Theano

がプロキシを通ってくれなかったので,

$ sudo pip --proxy http://hoge.fuga:port install Theano

としました.ちなみに,.bashrc に http_proxy とか書いても sudo すると継承してくれないので,継承するように設定しておくとよいのかもしれません.ちゃんと確認してませんが( 参考: 穀風: proxy 越しに sudo を使う ).そもそも apt-get はちゃんとプロキシ通ってるし….

 

お次は,先ほど同様にNVIDIA のドライバと CUDA tool kit をインストール.

$ sudo apt-get install nvidia-current
$ sudo apt-get install nvidia-cuda-toolkit

前者はやぱし nvidia-304 が,後者は CUDA 5.5 のものが入りました.再起動するとやっぱりビデオカードがちゃんと動かへんようです.しかも,今度は nvidia-304 を purge しても戻らず….あわわ.とりあえず

$ sudo apt-get install nvidia-331

としたらどうにかなりました.いい加減.

 

で,GPU の情報を表示させてみると…

$ nvidia-smi 
Sun Jun  7 16:39:02 2015       
+------------------------------------------------------+                       
| NVIDIA-SMI 331.113    Driver Version: 331.113        |                       
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  Tesla K20c          Off  | 0000:05:00.0     Off |                    0 |
| 30%   40C    P8    26W / 225W |     11MiB /  4799MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+
|   1  Quadro K620         Off  | 0000:0A:00.0      On |                  N/A |
| 34%   42C    P8     1W /  30W |     45MiB /  2047MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Compute processes:                                               GPU Memory |
|  GPU       PID  Process name                                     Usage      |
|=============================================================================|
|  No running compute processes found                                         |
+-----------------------------------------------------------------------------+

Quadro も Tesla もちゃんと認識してるようです.よしよし.

 

さあ GPU の動作確認を,と, http://deeplearning.net/software/theano/install_ubuntu.html の一番下の Test GPU configuration の節の仰せの通りに check_blas.py を実行しようとしましたが,check_blas.py が見つからへんそうで.

$ find /usr/ -name check_blas.py 
/usr/local/lib/python2.7/dist-packages/theano/misc/check_blas.py

ということで,パスが違いました.

$ THEANO_FLAGS=floatX=float32,device=gpu python /usr/local/lib/python2.7/dist-packages/theano/misc/check_blas.py

としたら,動いた〜と思ったら,

WARNING (theano.sandbox.cuda): CUDA is installed, but device gpu is not available  (error: Unable to get the number of gpus available: no CUDA-capable device is detected)

やそうな.がっくり.一応, 続 Theano + CUDA - まんぼう日記 の theano0908.py でも試してみましたが,同じでした.再度がっくり.

 

今日はここまで.次は,NVIDIA のドライバと CUDA を最新のものにして再挑戦してみる予定です.

 

 

余談ですが,帰りも同じルート.でも腰が痛くて歩いたり走ったり.源内道でイノシシに遭遇しましたよ.素人目にはまだ若者って感じの中型の個体に見えました.走って逃げてってくれたので何事もなかったんですが,ちょー速かったっす….

 

で,おそるおそる源内道を抜けて(後半は小走り (^^; ),走ってるうちに腰もほぐれてきて,スタートから7km地点から8km地点にかけての瀬田川沿いで 4:35min/km を記録.最速1km記録更新やないけど(下り坂で4:14min/kmってのを出したことがあるので.cf. 再び18km走4本のはずが… - まんぼう日記 ),たぶん平地での最速記録.