初めに
この記事は、普段Pytorchで深層学習を行う私の、CudaとNvidia-Driverのインストール方法のメモです。そのため、Pytorchを使用しない人はその他のサイトを参考すると良いかもしれません。
また、間違った認識・記述があれば、是非コメントお願いします。
準備
まずは、以下4つを調査する。
- LinuxのKernel等のバージョンを確認
- PytorchのサイトでPytorchが対応しているCUDAのversionを確認
- 対象CUDAのためのNvidia-Driverのversionを確認
- Nvidiaサイトでサポートしている対象CUDAのUbuntu環境を確認
1. Linuxのkernelのバージョンを調査
私が使用した環境は、以下の表で示す。
Distribution | Kernel | GPU |
---|---|---|
Ubuntu 20.04.6 LTS | 5.4.0-182-generic | GeForce RTX 4090 |
Distribution, Kernel 確認コマンド
Distribution 確認コマンド
cat /etc/lsb-release
##出力結果
5.4.0-182-generic
Kernel 確認コマンド
uname -r
##出力結果
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=20.04
DISTRIB_CODENAME=focal
DISTRIB_DESCRIPTION="Ubuntu 20.04.6 LTS"
2.PytorchのサイトでPytorchが対応しているCUDAのversionを確認
-
Pytorhcのinstallサイト
2024/5月現在、pipでのPytorchのinstallでは、CUDA 12.1まで対応している。(やっぱり最新を使いたい)
3. 対象CUDAのためのNvidia-Driverのversionを確認
-
CUDA Toolkitと最低限必要なDriver Version
CUDA 12以上には、最低525.60.13以上のDriverをinstallした方がベター。
4. Nvidiaサイトでサポートしている対象CUDAのUbuntu環境を確認
-
System Requirements
2024/5月現在で、CUDA 12.1でサポートされているLinux Kernelは、5.15.0-43。
筆者はKernelを合わせるためにいろいろ試してみたが、結局上手くいかなかった。Kerelが一致していなくても動いたため、現状無視している。
Nvidia-Driverをinstall
-
最初に
DriverやCUDAが入っている場合は削除する
DriverとCUDAを削除sudo apt-get --purge remove nvidia-* sudo apt-get --purge remove cuda-*
-
Nvidia-Driverのinstallは、NVIDIAのサイトが提示したコマンドを少し変えて実行したらOK
- Installer Typeは、deb (network)にしています。環境に応じて、選択するタイプは変更して下さい。
-
提示されたコマンドは、以下のように変更します。(今回は535にしていますが、525以上であればOK)
Driverのinstallコマンドwget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.1-1_all.deb sudo dpkg -i cuda-keyring_1.1-1_all.deb sudo apt-get update sudo apt-get -y install cuda-drivers-535
CUDAをinstall
-
実行コマンド
CUDAのinstallコマンドwget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.1-1_all.deb sudo dpkg -i cuda-keyring_1.1-1_all.deb sudo apt-get update sudo apt-get -y install cuda (もしくは、sudo apt-get -y install cuda-toolkit-12-5)
CUDAとNvidia-Driverのバージョンを確認
- CUDAのバージョンを確認する際は、以下のコマンド
CUDA version 確認コマンド
/usr/local/cuda/bin/nvcc --version
- Nvidia-Driverのバージョン確認は、以下のコマンド
Nvidia-Driver version 確認コマンド
cat /proc/driver/nvidia/version
その他
ちなみに、Nvidia-Dockerはこちらの記事が非常に参考になる。
最後に
- Pytorchから逆算したNvidia-DriverとCUDAのインストール法を紹介したが、Pytorchのバージョン依存を気にしなくても、おそらく関係ないかもしれない。
- また、NVIDIAがサポートしているKernelも変更したいが、Kernelを変更しようとするとPCがブラックアウトした。全Kernelでサポートしてくれないのだろうか。ちょっと不満。