Help us understand the problem. What is going on with this article?

Ubuntu 18.04へのCUDAインストール方法

Ubuntu 18.04 に NVIDIA の CUDA のインストール方法です。私は主に Google Cloud や Amazon EC2 の GPU インスタンスを使っているので、それ前提で書きます。ストレージは20GB程度必要です。Python からしか使わない場合は Anconda 内蔵の CUDA を使用するのがお勧めです。

Ubuntu の他のバージョンはこちらをご覧ください。

前準備

sudo apt update
sudo apt upgrade

CUDA 10や11をNVIDIAのリポジトリからインストール

CUDA 10 から Ubuntu 18.04 向けが https://developer.nvidia.com/cuda-downloads で配布されるようになりました。以下は、Installer Type で deb(network) を選択する場合の流れです。ここで apt install で cuda だと最新版がインストールされ、cuda-10-1 のようにバージョン指定も出来ます。

sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/7fa2af80.pub

wget wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/cuda-repo-ubuntu1804_10.2.89-1_amd64.deb
sudo dpkg -i cuda-repo-ubuntu1804_10.2.89-1_amd64.deb
sudo apt update

sudo apt install cuda cuda-drivers
sudo reboot

rm cuda-repo-ubuntu1804_10.2.89-1_amd64.deb

その後、~/.bashrc の末尾にこれを追加する必要があります。

export PATH="/usr/local/cuda/bin:$PATH"
export LD_LIBRARY_PATH="/usr/local/cuda/lib64:$LD_LIBRARY_PATH"

そして一度ログオフして再度ログインしてください。

nvidia-smi で動作確認です。cuBLAS など cuDNN 以外は一通りついてきます。

cuDNN のインストール

CUDA 10 以降の場合

CUDA 10 以降で cuDNN 7.3 以降の場合、NVIDIAのリポジトリからインストールできます。"7.5.0.56-1+cuda10.0" の部分は https://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1804/x86_64 から適切なバージョンを探してください。バージョン指定をしないと最新のがインストールされますが、その際は CUDA も最新のバージョンを使用している必要があります。

echo "deb https://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1804/x86_64 /" | sudo tee /etc/apt/sources.list.d/nvidia-ml.list
sudo apt update
sudo apt install libcudnn7-dev=7.5.0.56-1+cuda10.0

CUDA 9 の場合

強引に Ubuntu 16.04 用のリポジトリからインストールする方法ですが、そもそも Linux 全体で同じバイナリが使えるので Ubuntu 18.04 でも問題が無いようです。

echo "deb https://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1604/x86_64 /" | sudo tee /etc/apt/sources.list.d/nvidia-ml.list
sudo apt update
sudo apt install libcudnn7-dev

CUDA 9.2をNVIDIAのリポジトリからインストール

CUDA 9.2 は Ubuntu 18.04 は未対応なんですが、Ubuntu 17.10 用を強引にインストールできます。NVIDIA が https://gitlab.com/nvidia/cuda/blob/ubuntu18.04/9.2/base/Dockerfile に書いている方法です。動作しますが CUDA 10 で良いなら CUDA 10 を使った方が良いと思います。https://bugs.launchpad.net/ubuntu/+source/nvidia-graphics-drivers-390/+bug/1753796 に書いてあるバグにより --force-overwrite が必要です。

sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1710/x86_64/7fa2af80.pub

echo "deb https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1710/x86_64 /" | sudo tee /etc/apt/sources.list.d/cuda.list
sudo apt update
sudo apt -o Dpkg::Options::="--force-overwrite" install cuda-9-2 cuda-drivers

sudo reboot

その後、~/.bashrc の末尾にこれを追加する必要があります。

export PATH="/usr/local/cuda/bin:$PATH"
export LD_LIBRARY_PATH="/usr/local/cuda/lib64:$LD_LIBRARY_PATH"

そして一度ログオフして再度ログインしてください。

nvidia-smi で動作確認です。cuBLAS など cuDNN 以外は一通りついてきます。

強引な方法ですが Theano を使う限りだと問題ない感じがします。

CUDA 9.1 をUbuntuのリポジトリからインストール

Ubuntu 18.04 のリポジトリからインストールする方法です。Ubuntu 16.04 との違いはデバイスドライバのパッケージ名に-driverが付きました。

sudo apt install nvidia-cuda-toolkit nvidia-driver-440
sudo reboot

nvidia-smi で動作確認です。cuBLAS など cuDNN 以外は一通りついてきます。

ただし、この方法は Ubuntu 18.04 である限り、ずっと CUDA 9.1 です。

Ubuntu 16.04 と違って GRUB の設定をいじらなくても変なバグは無い感じです。

Anaconda内蔵のCUDAとcuDNNを使用する場合

Anaconda で conda install tensorflow-gpu などをすると自動的に CUDA と cuDNN がインストールされます。ただしデバイスドライバはインストールされないので sudo apt install nvidia-driver-440 して sudo reboot が必要です。Python からしか使わない場合は、この方法が簡単です。NVIDIA のリポジトリは不要です。

後始末

sudo apt autoremove
sudo apt clean
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away