CUDAを7.5から8.0にアップグレード

Udacityのディープラーニング講座の中で使うTensorFlowのバージョンが1.0となっていてCUDA7.5だと動かない… (>_<)

ということで自宅PCのCUDAを7.5から8.0にアップグレードしました。

今まで自分にとって開発環境のアップグレードは鬼門で 今まで動いていたものがいろいろ動かなくなって

ああ、やらんかったらよかった…

ということが多々あったのですが今回はあまりにもスムーズでうれしかったのでメモを残します。(´ー`)

CUDA8.0のインストール

  1. NVIDIAのダウンロードサイトからCUDAをダウンロードしてきます。

    自分のPCにあったものを選択します。Ubuntu14.04用は https://developer.nvidia.com/compute/cuda/8.0/Prod2/local_installers/cuda_8.0.61_375.26_linux-run

  2. ダウンロードしたスクリプトを実行
chmod a+x cuda_8.0.61_375.26_linux-run
sudo service lightdm stop # Stop X-Server
sudo bash ./cuda_8.0.61_375.26_linux.run --silent --no-opengl-libs --toolkit

1分ぐらい待つと何のメッセージ出力がなく終了します。

えっ?( ´・д・)

と思うぐらい拍子抜けです。

続いて以下のコマンドでCUDAがインストールされていることを確認します。

nvidia-smi # check GPU is available
nvcc -V # cuda version should be 8.0

cuDNN(v5.1)のインストール

続いてcuDNNをインストール。こちらもNVIDIAのサイトからダウンロードしてきます。 cuDNNはNVIDIAのユーザー登録が必要です。

ユーザー登録面倒な方はこちらからダウンロードしてください http://momonoki.blob.core.windows.net/data/cudnn/cudnn-8.0-linux-x64-v5.1.tgz

tar xvfz cudnn-8.0-linux-x64-v5.1.tgz
cat /usr/local/cuda/version.txt # /usr/local/cudaがcuda-8.0へのリンクになっていることを確認
sudo cp cuda/include/cudnn.h /usr/local/cuda/include
sudo cp cuda/lib64/* /usr/local/cuda/lib64

chainerやTensorFlowの再インストール

そのままだとCUDAのバージョン不一致で動かないので一度アンインストールしてからインストールします。

# reinstall chainer
pip uninstall chainer
pip install chainer

# reinstall TensorFlow
pip uninstall tensorflow
pip install tensorflow-gpu

再インストールしたらMNISTのサンプル等でGPUありで動くかを確認します。

以上です。

これで AWSGPUインスタンス(何かびびってしまう。。)を使わずに自宅PCで課題を進められます。 (*´Д`)