Ubuntu Desktop 18.04にCUDA 10.1をインストールする!

Ubuntu 18.04 LTS Desktopに、CUDA 10.1をインストールします。本校執筆時点で最新バージョンではないので、バージョンを指定してインストールします。

使用した環境

  • Intel® Core™ i5-7500
  • GeForce GTX 1060
  • GeForce GTX 1070
  • Ubuntu 18.04 LTS Desktop (18.04.1)
  • CUDA 10.1

CUDA 10.1をローカルにダウンロードしてインストール

CUDA 10.1のrunfile形式のインストーラをダウンロードし、NVIDIAのホームページに記載の通りのコマンドを入力して、ダウンロードしたモジュールからインストールします。

build-essentialのインストール

build-essentialをインストールします。

$ sudo apt install build-essential

既存のインストール済みのモジュールの削除

旧バージョン等、インストール済みのモジュールがある場合は削除します。

sudo rm /etc/apt/sources.list.d/cuda*
sudo apt-get --purge remove nvidia-*
sudo apt-get --purge remove cuda-*

グラフィックドライバ「nouveau」の無効化

グラフィックドライバ「nouveau」の無効化を行い、再起動します。

$ lsmod | grep nouveau
nouveau              1716224  5
mxm_wmi                16384  1 nouveau
wmi                    24576  2 mxm_wmi,nouveau
ttm                   106496  1 nouveau
i2c_algo_bit           16384  2 nouveau,i915
drm_kms_helper        172032  2 nouveau,i915
drm                   401408  12 nouveau,i915,ttm,drm_kms_helper
video                  45056  2 nouveau,i915
$ sudo bash -c "echo blacklist nouveau > /etc/modprobe.d/nvidia-installer-disable-nouveau.conf"
$ sudo bash -c "echo options nouveau modeset=0 >> /etc/modprobe.d/nvidia-installer-disable-nouveau.conf"
$ cat /etc/modprobe.d/nvidia-installer-disable-nouveau.conf
blacklist nouveau
options nouveau modeset=0
$ sudo update-initramfs -u
update-initramfs: Generating /boot/initrd.img-4.15.0-29-generic
$ sudo reboot

ダウンロードしたモジュールの実行

「nouveau」が無効化されたことを確認して、runfileを実行します。ライセンスに同意し、全モジュールを選択してインストールします。

$ lsmod | grep nouveau
$ cd $HOME/Downloads
$ sudo sh cuda_10.1.105_418.39_linux.run

インストールが完了したらマシンを再起動します。

CUDA 10.1のインストール状況を確認

インストール状況の確認として、NVIDIAのドライバーのバージョンを表示してみましょう。

$ nvidia-smi
Fri May  1 07:12:34 2020       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 418.39       Driver Version: 418.39       CUDA Version: 10.1     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  GeForce GTX 1070    Off  | 00000000:02:00.0 Off |                  N/A |
|  0%   42C    P0    31W / 151W |      0MiB /  8119MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+
|   1  GeForce GTX 106...  Off  | 00000000:03:00.0 Off |                  N/A |
| 49%   28C    P0    29W / 120W |      0MiB /  3019MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+
|   2  GeForce GTX 106...  Off  | 00000000:05:00.0 Off |                  N/A |
| 14%   34C    P0    24W / 120W |      0MiB /  3019MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+
|   3  GeForce GTX 106...  Off  | 00000000:06:00.0 Off |                  N/A |
|  5%   32C    P0    25W / 120W |      0MiB /  3019MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+
|   4  GeForce GTX 1070    Off  | 00000000:07:00.0 Off |                  N/A |
|  0%   38C    P0    30W / 151W |      0MiB /  8119MiB |      4%      Default |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID   Type   Process name                             Usage      |
|=============================================================================|
|  No running processes found                                                 |
+-----------------------------------------------------------------------------+

おわりに

インストール方法としては、回線が高速な場合、ネットワーク経由のインストールが便利ですが、手順をあやまると最新バージョンがインストールされたりするので、バージョン固定したい場合は、runfileをダウンロードしてインストールするのが確実です。