- 自分用メモ
- 意外とてこずったので誰かの役に立つかもしれない。
はじめに
大学にDeep learning用のmachineが届いた。プリインスールされている諸々がOS(Ubuntu14.04LTSだった)を始め古過ぎ、アプデすると不具合が出まくるそうなので諦めてUbuntu 16.04 LTSを入れ直してGPUでkeras(Tensorflow back end)とchainerがjupyterで動くまでのメモ。やってみて、環境構築が難しいと言われる所以がわかった。端的にいうと、発展著しい領域なのでpackage周りのアプデが早過ぎて直ぐに情報が古くなること。pythonの仮想環境構築がほぼ必須になっていることの2つが原因だと思われます。このページを主に参考にしたのですが
(https://www.buildinsider.net/small/deeplearningenv/ubuntu#cuda-toolkit)
2017年末の記事なのにすでに内容が一部古いです。3回に分けて
- その1 NVIDIAドライバー、CUDA ToolkitとcuDNNのインストールまで
- その2 pythonとDeep learningのpackage周り
- その3 APC製のUPSの導入
でやりたいと思います。
NVIDIAドライバーのインストール
http://www.nvidia.co.jp/Download/index.aspx?lang=jp
から自分のGPUに合っているのを入れる。基本的にドライバは最新のでOK!
$ sudo dpkg -i ダウンロードしたファイル名
#追加指示が出ることもある
$ sudo apt -y update
$ sudo apt -y install cuda-drivers
$ sudo apt -y upgrade
$ sudo reboot
これで
$ nvidia-smi
エラーが出なければOK
CUDA ToolkitとcuDNNのバージョンを確認!
必ずTensorflowの公式サイト
https://www.tensorflow.org/install/install_linux#nvidia_requirements_to_run_tensorflow_with_gpu_support
で必要なCUDA ToolkitとcuDNNのバージョンを確認を確認する。俺はこれを怠ったのでCUDAとcuDNNを入れ直す羽目になりました。
CUDA Toolkitのインストール
超参考になるurl
https://qiita.com/JeJeNeNo/items/05e148a325192004e2cd
まずここで、必要条件を確認した上でCUDA Toolkit Archiveでhttps://developer.nvidia.com/cuda-toolkit-archive
で対応したものを落とす。2018年3月時点でUbuntu 16.04 LTSでTensorflowを使うのならCUDA toolkitは9.0。
sudo dpkg -i ダウンロードしたファイル名
sudo apt update
sudo apt install cuda-9-0
以上でインストール完了。一緒にパッチがあるならダウンロード後これもインストールしておく。
$ sudo dpkg -i ダウンロードしたファイル名
$ sudo apt update
$ sudo apt -y upgrade
$ sudo reboot
次にパスを通す
echo -e "\n## CUDA and cuDNN paths" >> ~/.bashrc
echo 'export PATH=/usr/local/cuda-9.0/bin:${PATH}' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64:${LD_LIBRARY_PATH}' >> ~/.bashrc
ターミナル再起動または
source ~/.bashrc
でCUDAのパスが書き込まれたbashrcを読み込む。
続いてCUDAがきちんとインストールできているのか色々確認する
echo $PATH # 出力に"/usr/local/cuda-9.0/bin"が含まれているか?
echo $LD_LIBRARY_PATH # 出力に"/usr/local/cuda-9.0/lib64"が含まれているか?
which nvcc # 出力が"/usr/local/cuda-9.0/bin/nvcc"になっているか?
nvidia-smi # nvidiaのGPUの情報が表示されているか?
nvcc -V #インストールされているCUDAのverが表示されるか?
cuDNNのインストール
https://developer.nvidia.com/rdp/cudnn-download から必要なものをダウンロード。俺の場合だとcuDNN7.0 for CUDA9.0でした。
# Install Runtime library
sudo dpkg -i ダウンロードした中でファイル名が一番短いやつ
# Install developer library
sudo dpkg -i ダウンロードしたやつの中でdevがファイル名に入っているやつ
# Install code samples and user guide
sudo dpkg -i ダウンロードしたやつの中でdocがファイル名に入っているやつ
これで一応はOKのはず。
動作を確認する。
cuda-install-samples-9.0.sh ~ # ホームディレクトリにサンプルコードをコピー。
cd ~/NVIDIA_CUDA-9.0_Samples/
make
cd bin/x86_64/linux/release # サンプルの実行ファイルがあるディレクトリに移動。
./smokeParticles
これで煙がうねうねしている姿が見えたらOK!