過去經常聽說 AMD GPU 用於執行深度學習相關軟體非常麻煩,建議有深度學習需求的使用者購買 Nvidia 顯卡。然而,最近 LLM(大型語言模型)很熱門,許多研究單位釋出了基於 LLaMA 的模型,讓我覺得有趣並想測試。我手邊有較多 VRAM 的顯示卡都是 AMD 的,因此決定嘗試使用這些顯示卡來執行。
Table of Contents
測試環境
目前測試的環境是利用 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
這邊指定的 rocm
跟 dkms
是比較常見的 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-diffusio
n 和 Vicuna-7B
。若手邊有 AMD 顯示卡的讀者也想嘗試一些深度學習專案,不妨考慮使用 AMD 顯卡,以節省購買 Nvidia 顯卡的開銷。
Copyright Notice: All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.