AMD GPU 與深度學習:實用教學指南

AMD GPU 與深度學習:實用教學指南

過去經常聽說 AMD GPU 用於執行深度學習相關軟體非常麻煩,建議有深度學習需求的使用者購買 Nvidia 顯卡。然而,最近 LLM(大型語言模型)很熱門,許多研究單位釋出了基於 LLaMA 的模型,讓我覺得有趣並想測試。我手邊有較多 VRAM 的顯示卡都是 AMD 的,因此決定嘗試使用這些顯示卡來執行。

測試環境

目前測試的環境是利用 VM 再進行顯卡 passthrough,環境如下:

  • CPU: 16 core AMD Eypc 7302P
  • RAM: 96GB DDR4 ECC 2933
  • GPU: AMD Instinct MI25 (WX9100 BIOS)
  • OS: Ubuntu 20.04
  • Host OS: PVE 7.4-3
  • ROCm 4.5.2

其中 ROCm 是 AMD 開發的用於執行深度學習相關應用的開源平台,其中包括 CUDA 轉換層的 HIP。

系統設定

ROCm 安裝步驟

首先,我們需要將使用者加入 video 群組,以獲取相關權限。

sudo usermod -a -G video $LOGNAME

然後下載並安裝安裝程式:

sudo apt-get update
wget https://repo.radeon.com/amdgpu-install/5.4.3/ubuntu/focal/amdgpu-install_5.4.50403-1_all.deb  
sudo apt-get install ./amdgpu-install_5.4.50403-1_all.deb

最後安裝 GPU 驅動程式和 ROCm,注意我這裡特別指定 4.5.2 版本,目前最新版是 5.4.3,但支援 AMD Instinct MI25/WX9100 的最後版本是 4.5.2。

sudo amdgpu-install --usecase=rocm,dkms --rocmrelease=4.5.2

這邊指定的 rocmdkms 是比較常見的 usecase,想要看有哪些 usecase 可以利用以下指令:

sudo amdgpu-install --list-usecase

安裝過程會花一些時間,基本上取決於網路速度。安裝完成後我們需要重新啟動系統來載入新的驅動程式。

sudo reboot

pytorch 安裝步驟

現在大多數專案都使用 PyTorch 作為深度學習框架,而要使用 ROCm 的話,在安裝時需要特別指定版本。

注意,大多數專案在 requirements.txt 中會寫 PyTorch,預設是安裝 CUDA 的版本,如果已經安裝了,需要先解除安裝。

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

最後要指定對應的 ROCm 版本,這裡是安裝 4.5.2 版。

測試

要測試 PyTorch 是否使用了 GPU,可以在 Python 命令列中輸入以下指令:

import torch
torch.cuda.is_available()

如果顯示 True ,則表示安裝成功!

總結

實際操作後,發現使用 AMD GPU 執行深度學習相關應用並非難事。目前已成功執行 stable-diffusion 和 Vicuna-7B。若手邊有 AMD 顯示卡的讀者也想嘗試一些深度學習專案,不妨考慮使用 AMD 顯卡,以節省購買 Nvidia 顯卡的開銷。


Copyright Notice: All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.

Leave a Reply