MENU

Ubuntu 18.04 LTS GPUディープラーニング環境のセットアップ

nvidia-dockerを使えば楽にGPU環境にアクセスできますが、仮想環境なしで本体に環境設定する方法も使うので、記録を残しておきます。

参考

www.mechmathmass.tokyo

構成

OS: Ubuntu 18.04 LTS GPU: RTX 2070

事前準備

環境を最新にする

シェルで

$ sudo apt-get upgrade
$ sudo apt-get update
$ sudo apt list upgradable

Gitを入れる

$ sudo apt-get install git

NVIDIAドライバのインストール

nouveauの無効化

$ lsmod | grep -i nouveau
$ sudo sh -c "cat << ETX > /etc/modprobe.d/blacklist-nouveau.conf
blacklist nouveau
blacklist lbm-nouveau
options nouveau modeset=0
alias nouveau off
alias lbm-nouveau off
ETX" && cat /etc/modprobe.d/blacklist-nouveau.conf
$ sudo sh -c "echo 'options nouveau modeset=0' > /etc/modprobe.d/nouveau-kms.conf" && cat /etc/modprobe.d/nouveau-kms.conf
$ sudo update-initramfs -u
$ sudo reboot

ビルドツールのインストール

$ sudo apt-get install build-essential

NVIDIAドライバのダウンロード

CUIでドライバを入れていきます。

GPUの対応確認

対応したドライバを検索します。 www.nvidia.co.jp

f:id:massskt:20190521101013p:plain

検索して、バージョンを確認しておきます。 f:id:massskt:20190521101051p:plain

$ sudo add-apt-repository ppa:graphics-drivers/ppa
$ sudo apt update
$ sudo apt-get install nvidia-410

*430の場合は nvidia-driver-430でいける

CUDAのインストール

ダウンロード

以下で、CUDA Toolkit 10.1 をダウンロード developer.nvidia.com

以下を実施します。

インストール

$ cd /home/ダウンロードした場所
$ sudo dpkg -i cuda-repo-ubuntu1804_10.1.168-1_amd64.deb
$ sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/7fa2af80.pub
$ sudo apt-get update
$ sudo apt-get install cuda-toolkit-10-0

環境変数の設定

以下で環境設定を編集します。

 $ nano ~/.bashrc 

末尾に以下を追加して保存。環境変数のパスの設定です。 ただし、/usr/local/cuda-10.0/lib64 については、実際にtensorflow 実行時にlibcupti.so.10.0が存在しないとエラーが発生しました。実際に該当ファイル場所を探して/usr/local/cuda-10.0/extras/CUPTI/lib64 にあることがわかりましたので、私の場合は/usr/local/cuda-10.0/extras/CUPTI/lib64に変更しました。

export PATH=/usr/local/cuda-10.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-10.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}

再起動して以下を実行できることを確認します。

nvcc  -V

CuDNNのインストール

以下でダウンロードします。 ユーザー登録を実施する必要があります。

https://developer.nvidia.com/rdp/cudnn-download

I agree to the terms of the cuDNN software licence agreement

Download cuDNN v.7.5.1 for CUDA 10.1をダウンロードします。(CUDAのバージョンに合わせる)

次に、以下の3つをダウンロードします。

cuDNN Runtime Library for Ubuntu18.04 (Deb)

cuDNN Developer Library for Ubuntu18.04 (Deb)

cuDNN Code Samples and User Guide for Ubuntu18.04 (Deb)

ダウンロードしたものをインストールします。順番はこの通りのようです。 ダウンロードしたパッケージに合わせてください。

$ sudo dpkg -i libcudnn7_7.5.1.10-1+cuda10.1_amd64.deb
$ sudo dpkg -i libcudnn7-dev_7.5.1.10-1+cuda10.1_amd64.deb
$ sudo dpkg -i libcudnn7-doc_7.5.1.10-1+cuda10.1_amd64.deb

deep環境の確認

仮想環境で、環境を汚さずに確認します。(一応)

適当なテストする階層で

python -m venv test
source test/bin/activate
pip install tenforflow-gpu==1.13.1
$ python

````

from tensorflow.python.client import device_lib device_lib.list_local_devices()

これでGPUの表示があれがGPUを使用しています。
適当なコードを試して確かに走ることを確認します。