GPU,CUDAを使ったディープラーニング実行基盤を整備する
概要
なぜかは分からないが、開発に使用しているCUDAの環境が壊れており、tensorflow,keras,chainerといったのディープラーニング系フレームワークが一切使えない状況になっていた。
仕方なく再設定を行ったもののせっかくなのでメモを残すことにする。
なおnvidia-driver,CUDA,cuDNN,tensorflowの設定はバージョンによる整合性のために毎回ハマるため、組み合わせのセットをストックしておきたい。
環境
環境は以下の組み合わせ。組み合わせが違うと正しく動作しないので注意。
- nvidia-driver:418 (前の環境では384で動いた)
- CUDA:8.0
- cuDNN:6.0
- tensroflow-gpu:1.3.0
なおこの記事執筆時にはtensor-flow2.0やCUDA10.0も登場しており、少し古いバージョン環境となる。tendorflowでは対応するCUDAやcuDNNも公開されているので、こちらも参考にしていただきたい。
https://www.tensorflow.org/install/source#common_installation_problems
手順
driverの削除
$ dpkg -l | grep nvidia
$ sudo apt-get --purge remove nvidia-*
$ dpkg -l | grep cuda
$ sudo apt-get --purge remove cuda-*
driverインストール
$ sudo add-apt-repository ppa:graphics-drivers/ppa
$ sudo apt-get update
$ sudo apt install nvidia-384 #384を指定したが418が入った
sudo shutdown -r now
CUDAインストール
$ dpkg -l | grep nvidia
$ sudo apt-get --purge remove nvidia-*
$ dpkg -l | grep cuda
$ sudo apt-get --purge remove cuda-*
$ sudo add-apt-repository ppa:graphics-drivers/ppa
$ sudo apt-get update
$ sudo apt install nvidia-384 #384を指定したが418が入った
sudo shutdown -r now
CUDAは以下で公開されているのでwgetで取得する。
http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/
$ wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/cuda-repo-ubuntu1604_8.0.61-1_amd64.deb
$ sudo dpkg -i cuda-repo-ubuntu1604_8.0.61-1_amd64.deb
$ sudo apt update
$ sudo apt-get install cuda-8-0
$ shutdown -r now
cuDNNインストール
cuDNNは以下で公開されているので,直接サイトよりダウンロードする。(要登録)
https://developer.nvidia.com/rdp/cudnn-archive
ダウンロードするのは以下3つ
- cuDNN v6.0 Runtime Library for Ubuntu16.04 (Deb)
- cuDNN v6.0 Developer Library for Ubuntu16.04 (Deb)
- cuDNN v6.0 Code Samples and User Guide for Ubuntu16.04 (Deb)
各ファイルに対して以下を実行
$ sudo dpkg -i libcudnn6_6.0*+cuda8.0_amd64.deb
$ sudo dpkg -i libcudnn6-dev_6.0*+cuda8.0_amd64.deb
$ sudo dpkg -i libcudnn6-doc_6.0*+cuda8.0_amd64.deb
インストールの確認
$ cd /usr/local/cuda-8.0/bin/
$ bash cuda-install-samples-8.0.sh ~
$ cd ~/NVIDIA_CUDA-8.0_Samples/
$ make
$ cd bin/x86_64/linux/release
$ ./smokeParticles
以下によりmakeに失敗ことがある
/usr/bin/ld: -lnvcuvid が見つかりません
collect2: error: ld returned 1 exit status
make[1]: *** [cudaDecodeGL] エラー 1
3_Imaging/cudaDecodeGL/findgllib.mkの61行目でUBUNTU_PKG_NAME = "nvidia-375"
を"nvidia-384"や "nvidia-418"に変更し、nvidia-driverと整合性を合わせることで解決した。
その他
nvidia-driverやcudnnは数年前と比べてインストーラーが日々整備されてきており、参考サイトによってもインストール手順が違うので注意されたし。
Author And Source
この問題について(GPU,CUDAを使ったディープラーニング実行基盤を整備する), 我々は、より多くの情報をここで見つけました https://qiita.com/asakbiz/items/731fb6b3002f93337915著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .