まんぼう日記

takataka's diary

GPGPUマシンの更新(2) 〜 CUDA 7.5 と cuDNN 5.0RC

GPGPU用のマシンを手に入れました - まんぼう日記 のマシンのOSを入れかえて,CUDA等も更新しました.その結果,こういう環境になりました.

  • OS: Ubuntu 16.04 LTS
  • CUDA 7.5 & cuDNN 5.0RC
  • Theano 0.8.2

というわけで,作業メモ.

この(2)では,CUDA 7.5 と cuDNN 5.0RC をインストールします.

 

ちなみに,以前このマシンがまだ Ubuntu 14.04 だった時に CUDA や cuDNN を入れた話が以下にあります.

 

目次

 

 

CUDA 7.5 のインストール

CUDA 8.0RCにせえへんの?

NVIDIAの CUDA のページ CUDA Toolkit | NVIDIA Developer に行くと,``CUDA Toolkit 8 RC Now Available'' とあって,CUDA 8 の Release Candidate が出てます.リンクをたどると,後述の 7.5 と違って Ubuntu 16.04 用のパッケージもあります.ですが,Pascal アーキテクチャな新しい TITAN X とか GeForce GTX 1080 とか持ってるわけやないし, Theano や Caffe の対応状況が不明やし,というわけで,今回は 7.5 でいくことにしました.

 

NVIDIA のサイトからダウンロードしてインストールしようとしたらうまくいかず 

CUDA 7.5 Downloads | NVIDIA Developer からたどっていくと,Ubuntu 用は 15.04 と 14.04 の二つの選択肢しかありませんでした.仕方なく 15.04 用の deb ファイル(1.9GB!)をダウンロードして指示どおりインストールしようとしたら,

$ sudo dpkg -i cuda-repo-ubuntu1504-7-5-local_7.5-18_amd64.deb
$ sudo apt-get update
$ sudo apt-get install cuda

最後の install の際に

W: file:///var/cuda-repo-7-5-local/Release.gpg: 鍵 「ほげほげ」 による署名は弱い digest アルゴリズム (SHA1) を使用しています
E: file:/var/cuda-repo-7-5-local/Release の取得に失敗しました  Release ファイル /var/lib/apt/lists/partial/_var_cuda-repo-7-5-local_Release にセキュリティ目的のために十分に強いと考えられているハッシュエントリがありません

とエラーになってしまいました.ここでがんばって解決策を探す気はせえへんかったので,すごすご撤退.16.04標準のリポジトリに 7.5 があるので,そっちからインストールする路線に切りかえます.

 

apt install であっさりインストール

というわけで,これだけ

$ sudo apt install nvidia-cuda-toolkit

自分でdebファイルをダウンロードしてインストールした場合(たかたかの以前の記事ではそうでした)は CUDA のライブラリ等は /usr/local/cuda 以下に置かれますが,上記のやり方の場合は,いろんなライブラリとごっちゃに/usr/lib/x86_64-linux-gnu以下に置かれてました.

 

cuDNN 5.0 のインストール

いったん cuDNN 5.1RCを入れたけど,いろいろあって 5.0 にしました

実は,最初にインストールした cuDNN は 5.1RC  (June 16, 2016)  でした.ところが,後で Theano 0.8.2 で適当なプログラムを実行してみると,

UserWarning: Your cuDNN version is more recent than the one Theano officially supports. If you see any problems, try updating Theano or downgrading cuDNN to version 5.

とか言われてしまいました(cf. GPGPUマシンの更新(3) 〜 Theano と Caffe のインストール - まんぼう日記 ).

 

そんなこんなで,以下は 5.1RC のインストールの説明になってます

わざわざ書き直すのめんどくさいので…すいません (^^; 

 

過去の記事とはライブラリの置き場所が違うくらいで,全く同じ手順で済みます.

 

https://developer.nvidia.com/rdp/cudnn-download  に行き(NVIDIA Developerに登録してログインが必要),

Download cuDNN v5.1 RC (June 16, 2016), for CUDA 7.5

   :

cuDNN v5.1 Library for Linux

   :

 を選択してダウンロード.入手した cudnn-7.5-linux-x64-v5.1-rc.tgz を適当な場所に展開.CUDAのインストール先が上述の通りなので,cuda/include/cudnn.h/usr/include へ,cuda/lib64/*/usr/lib/x86_64-linux-gnu へ.こうなりました.

$ ls -l /usr/lib/x86_64-linux-gnu/libcudnn*
lrwxrwxrwx 1 root root       13  8月  8 17:18 /usr/lib/x86_64-linux-gnu/libcudnn.so -> libcudnn.so.5
lrwxrwxrwx 1 root root       17  8月  8 17:22 /usr/lib/x86_64-linux-gnu/libcudnn.so.5 -> libcudnn.so.5.1.3
-rwxr-xr-x 1 root root 60696704  8月  8 17:21 /usr/lib/x86_64-linux-gnu/libcudnn.so.5.1.3
-rw-r--r-- 1 root root 59715990  8月  8 17:21 /usr/lib/x86_64-linux-gnu/libcudnn_static.a

 

次はこいつらの動作確認ですが,後で Theano を入れてからやることにします.