Ubuntu 20.04 上安裝CUDA 11.6 + cuDNN8.4 + PyTorch

日前重新安裝了Ubuntu, 為了要使用PyTorch建立神經網路,因此需要先依序安裝NVIDIA GPU的驅動器、CUDA、cuDNN、PyTorch。以下是我建立的安裝順序,做個紀錄的同時,也提供有需要的朋友做參考。

スポンサーリンク

安裝驅動

添加顯示卡驅動選項資源

sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update

安裝好後接著使用以下指令來檢查可安裝的驅動

ubuntu-drivers devices
確認GPU驅動器

顯示的清單中,後面帶有recommended的選項會是我們需要安裝的項目。

使用以下指令安裝驅動

sudo apt install nvidia-driver- (數字)

此處我是用

sudo apt install nvidia-driver-515

安裝好後,使用指令nvidia-smi 做檢測,其中 右上角顯示的CUDA Version 版本號是顯示建議的CUDA版本,並非是已經安奘好的版本。

nvidia-smi 確認CUDA版本

安裝CUDA

安裝好驅動後,接著要安裝CUDA。這裡因為我要安裝的PyTorch版本是使用CUDA11.6,因此需要自NVIDIA官網[1]先下載CUDA的安裝檔

下載CUDA 11.6

安裝

接著依照官網中的步驟進行安裝

wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-ubuntu2004.pin
sudo mv cuda-ubuntu2004.pin /etc/apt/preferences.d/cuda-repository-pin-600
wget https://developer.download.nvidia.com/compute/cuda/11.6.0/local_installers/cuda-repo-ubuntu2004-11-6-local_11.6.0-510.39.01-1_amd64.deb
sudo dpkg -i cuda-repo-ubuntu2004-11-6-local_11.6.0-510.39.01-1_amd64.deb
sudo apt-key add /var/cuda-repo-ubuntu2004-11-6-local/7fa2af80.pub
sudo apt-get update

需要注意其中最後的步驟要改為以下的指令, 來指定安裝CUDA 11.6版本。

sudo apt install cuda-11-6 

修改bashrc 檔案

接著要修改開機時讀取的預設設定檔案

sudo gedit ~/.bashrc

在最後追加以下的項目

export CUDA_HOME="/usr/local/cuda-11.6"
export PATH="$CUDA_HOME/bin:$PATH"
export LD_LIBRARY_PATH="$CUDA_HOME/lib64:$LD_LIBRARY_PATH"
export CPATH="$CUDA_HOME/include:$CPATH"

完成好以上步驟後,需要重新開機。重新開機完成後再使用nvidia-smi,確認右上角CUDA的版本是否有轉換為CUDA 11.6版本。

安裝cuDNN

安裝好CUDA後。要安裝cuDNN[2]

下載cuDNN安裝檔

這裡因為是使用CUDA 11.6版本,

下載CUDA11.6 安裝檔

這裡我選的是 Local Installer for Ubuntu20.04 x86_64 (Deb)。下載好後,參考NVIDIA CUDNN資料步驟來安裝[3]

根據2.3.2. Debian Local Installation 的介紹,安裝步驟中的X,Y 是CUDA的版本,8.X.X.X是cuDNN的版本。

這裡我實際建立是使用以下步驟:

sudo dpkg -i cudnn-local-repo-ubuntu2004-8.4.0.27_1.0-1_amd64.deb
sudo cp /var/cudnn-local-repo-*/cudnn-local-*-keyring.gpg /usr/share/keyrings/
sudo apt-get update
sudo apt-get install libcudnn8=8.4.0.27_1.0-1+cuda11.6
sudo apt-get install libcudnn8=8.4.0.27-1+cuda11.6
sudo apt-get install libcudnn8-dev=8.4.0.27-1+cuda11.6

安裝pytorch

整理好CUDA、cuDNN後, 參考PyTorch官網[4]安裝的方式安裝PyTorch。

這裡我是安裝Stable(1.12.1):

安裝PyTorch

參考底下提示的指令進行安裝

pip3 install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu116

測試

安裝好後,需要測試確認:

測試PyTorch是否完成安裝

import torch
print(torch.__version__)  
確認PyTorch有無安裝完成

測試PyTorch 可否使用GPU

import torch
torch.cuda.is_available()

顯示為True 即表示PyTorch有成功讀取到GPU。

參考資料

[1] CUDA Toolkit 11.6

[2] NVIDIA 下載cuDNN

[3] NVIDIA cuDNN Documentation

[4] 安裝PyTorch

コメント

タイトルとURLをコピーしました