深層学習用環境のセットアップ Ubuntu GNOME 16.04 LTS + CUDA9.1 + cuDNN7
Ubuntu GNOME 16.04 LTS のインストール
母艦のOSがWindowsであったため,WindowsでUbuntu ISOの準備を行う. 以下のリンクよりISOファイルをダウンロードし,USBWriterでISOをUSBに書き込み.
UbuntuGNOME/GetUbuntuGNOME - Ubuntu Wiki USBWriter のダウンロードと使い方 - k本的に無料ソフト・フリーソフト
日本語のフォルダ名を英語に変換
$ LANG=C xdg-user-dirs-gtk-updateCtrl + Alt + F1のターミナルで日本語が表示されないので,前もってフォルダ名を英語表記にする.
Linux kernel header のインストールを行う
$ sudo apt-get install linux-headers-$(uname -r)CUDA9.1 のインストール
https://developer.nvidia.com/cuda-downloadsへ行き,自身の環境にあったインストーラーをダウンロード. 私は Installer for Linux Ubuntu 16.04 x86_64 deb を選択.
のついたインストーラーだとwgetで直接インストールが可能.
$ wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/cuda-repo-ubuntu1604_9.1.85-1_amd64.debCtrl + Alt + F1 を押してターミナルに入る. lightdm (gdm) を停止
$ sudo service lightdm stop$ sudo service gdm stop公式のインストラクションに沿って以下のコマンドを入力.
$ sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/7fa2af80.pub$ sudo dpkg -i cuda-repo-ubuntu1604_9.1.85-1_amd64.deb$ sudo apt-get update$ sudo apt-get install cuda-9.1NVIDIA driversをロードするために再起動
sudo reboot※再起動後にログインループが発生した場合 アンインストール
$ sudo apt-get remove nvidia-*$ sudo apt-get remove cuda-*$ sudo apt-get autoremoveもう一度 CUDA9.1のインストールの章で書いてあることをやり直そう.
私は一度ログインループに陥ったが,アンインストール&再インストールでログインループが解消できた.
1回目はlightdmがインストールされていなかったことが原因?要検証
CUDA9.1 と NVIDIA driverがインストールされているかを確認
$ nvidia-smi # NVIDIA driverの確認$ nvcc -v # CUDAの確認上記2つのコマンドでステータスがでてくればインストールは成功
うまくいかないときは以下をターミナルで入力
$ sudo gedit ~/.bashrc~/.bashrcにパスを追加
export PATH=/usr/local/cuda-9.1/bin${PATH:+:${PATH}}export LD_LIBRARY_PATH=/usr/local/cuda-9.1/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}~/.bashrcを再読み込みし,確認
$ source ~/.bashrc$ sudo ldconfig$ nvidia-smi # NVIDIA driverの確認これでうまくいかなければ,他をあたってください.
cuDNN 7 のインストール
https://developer.nvidia.com/cudnn へ行き登録後に次をダウンロードする.
cuDNN v7.1.2 Runtime Library for Ubuntu16.04 (Deb)
cuDNN v7.1.2 Developer Library for Ubuntu16.04 (Deb)
cuDNN v7.1.2 Code Samples and User Guide for Ubuntu16.04 (Deb)
インストール
$ sudo dpkg -i libcudnn7_7.1.2.21-1+cuda9.1_amd64.deb$ sudo dpkg -i libcudnn7-dev_7.1.2.21-1+cuda9.1_amd64.deb$ sudo dpkg -i libcudnn7-doc_7.1.2.21-1+cuda9.1_amd64.debcuDNNの確認
cp -r /usr/src/cudnn_samples_v7/ $HOMEcd $HOME/cudnn_samples_v7/mnistCUDNNmake clean && make./mnistCUDNNmnistの出力が返ってくれば成功.