在 Ubuntu 上安裝 CUDA 的完整指南【適合初學者】

1. 簡介

CUDA(Compute Unified Device Architecture)是由 NVIDIA 提供的平行運算平台和 API,能夠利用 GPU 進行高速計算處理。
廣泛應用於機器學習、深度學習、科學計算等領域。
本文將詳細說明如何在 Ubuntu 環境中安裝 CUDA。

2. 先決條件

2.1 確認支援的 GPU

首先,確認您的系統中搭載的 NVIDIA GPU 是否支援 CUDA。
請在終端機中執行以下指令:

lspci | grep -i nvidia

如果輸出結果顯示 NVIDIA 設備,則表示 GPU 已被識別。
詳細的支援 GPU 清單可以在 NVIDIA 官方網站上查詢。

2.2 確認 Ubuntu 版本

CUDA 僅支援特定的 Ubuntu 版本。
請使用以下指令檢查目前的 Ubuntu 版本:

lsb_release -a

通常,建議使用 Ubuntu 的 LTS(長期支援)版本。
最新的支援資訊請參考 NVIDIA 官方文件。

2.3 確認 gcc 是否已安裝

安裝 CUDA 需要使用 gcc 編譯器。
請執行以下指令來確認 gcc 是否已安裝:

gcc --version

如果系統尚未安裝 gcc,請使用以下指令進行安裝:

sudo apt install build-essential

 

侍エンジニア塾

3. 安裝 NVIDIA 驅動程式

3.1 移除舊版驅動程式

如果系統已安裝舊版的 NVIDIA 驅動程式,建議先將其移除,以避免發生衝突。
請執行以下指令:

sudo apt-get --purge remove '*nvidia*'
sudo apt-get autoremove

3.2 選擇並安裝適合的驅動程式

請前往 NVIDIA 官方網站,確認與您的 GPU 相容的驅動程式,然後按照以下步驟進行安裝:

  1. 新增驅動程式的 PPA 倉庫
    請在終端機中執行以下指令,加入 NVIDIA 驅動程式倉庫:
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt-get update
  1. 確認推薦的驅動程式
    請使用以下指令來查詢建議安裝的驅動程式:
ubuntu-drivers devices

輸出結果中標示為「recommended」的即為系統推薦的驅動程式。

  1. 安裝驅動程式
    請使用以下指令,安裝建議的驅動程式版本:
sudo apt install nvidia-driver-<推薦的版本號>
  1. 重新啟動系統
    驅動程式安裝完成後,請執行以下指令重新啟動系統:
sudo reboot

4. 安裝 CUDA 工具包

4.1 選擇 CUDA 版本

請前往 NVIDIA 的 官方 CUDA 下載頁面,確認與您的 GPU 及 Ubuntu 版本相容的 CUDA 版本。
如果使用最新版本,請務必確認與現有軟體和函式庫的相容性。

4.2 新增倉庫並安裝 CUDA

請按照以下步驟安裝 CUDA 工具包:

  1. 新增 NVIDIA 倉庫
    請執行以下指令(以 Ubuntu 20.04 為例):
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
  1. 新增倉庫金鑰
    請執行以下指令,取得並安裝倉庫金鑰:
sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/7fa2af80.pub
  1. 安裝 CUDA 套件
    請執行以下指令,安裝 CUDA 工具包:
sudo apt update
sudo apt install cuda
  1. 確認安裝成功
    請執行以下指令,確認 CUDA 是否正確安裝:
nvcc --version

 

5. 設定環境變數

5.1 設定 PATH 和 LD_LIBRARY_PATH

要使用 CUDA,需要正確設定環境變數,請按照以下步驟操作:

  1. 編輯 .bashrc 檔案
nano ~/.bashrc
  1. 新增以下行
export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
  1. 套用設定
    儲存後,請執行以下指令重新載入終端機設定:
source ~/.bashrc

6. 安裝 cuDNN

6.1 什麼是 cuDNN?

cuDNN(CUDA Deep Neural Network library)是專為深度學習優化的 GPU 加速函式庫。

6.2 下載 cuDNN

請前往 NVIDIA 的 官方網站 下載對應於 CUDA 版本的 cuDNN。
下載 cuDNN 需要 NVIDIA 帳號。

6.3 安裝 cuDNN

  1. 解壓縮 cuDNN
    請執行以下指令解壓縮下載的 cuDNN 檔案:
tar -xzvf cudnn-<版本>.tgz
  1. 複製檔案
    請將必要的檔案複製到 CUDA 目錄:
sudo cp cuda/include/cudnn*.h /usr/local/cuda/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn*
  1. 確認安裝
    請執行以下指令,確認 cuDNN 版本:
cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2

 

7. 確認安裝成功

7.1 測試 CUDA

請執行以下指令,確認 CUDA 是否安裝成功:

nvcc --version

7.2 執行範例程式

請執行 CUDA 範例程式來確認其運作:

  1. 設定範例程式
cuda-install-samples-<版本>.run
cd ~/NVIDIA_CUDA-<版本>_Samples/1_Utilities/deviceQuery
make
  1. 執行測試
./deviceQuery

如果輸出結果包含「PASS」,表示安裝成功。

8. 疑難排解

8.1 常見問題與解決方案

  • 問題: 無法識別 CUDA
    解決方案: 檢查環境變數設定,並重新啟動系統。
  • 問題: GPU 無法使用
    解決方案: 重新安裝 NVIDIA 驅動程式。
  • 問題: CUDA 版本與軟體不相容
    解決方案: 請確認所使用的軟體是否支援該版本的 CUDA。

9. 總結

本文詳細說明了在 Ubuntu 環境中安裝 CUDA 和 cuDNN 的步驟。
如果正確完成這些步驟,您將能夠建立高效的 GPU 運算環境。
想要進一步應用 CUDA,可考慮安裝 TensorFlow 或 PyTorch 來進行深度學習。