在 vSphere 環境中使用 GPU 除了有 NVIDIA vGPU 方式外,另一種方式為 DirectPath I/O。在 AI 相關的應用上,常常會需要一張或多張 GPU 資源,這樣的需求可以透過 DirectPath I/O 方式將 GPU 資源 Passthrough 給虛擬機使用。本文將說明如何在 vSphere 環境設定 GPU-Passthrough。
設定 GPU Passthrough
本例環境為 vSphere 8.0 U1,伺服器裝有一張 NVIDIA A40 GPU,要將此 GPU 卡給一台 ubuntu 24.04 虛擬機使用。
首先,將該 GPU 設定為 Passthrough
- ESXi 主機→Configure→Hardware→PCI Devices,點選 ALL PCI DEVICES,在 Vendor Name 的欄位搜尋 "NVIDIA",全選所有 PCI Devices 並設定成 "Passthrough"
設定完成後,ESXi 需要重新啟動
虛擬機設定及調整
ESXi 重開機後,編輯虛擬機並新增 PCI Device,這時候就可以選到 NVIDIA A40 GPU
接著確認以下幾個虛擬機設定
- Boot 選項要為 "EFI"
- 記憶體要勾選保留 (Reserve all guest memory)
- 在 Advanced 選項新增兩筆參數
- pciPassthru.use64bitMMIO = TRUE
- pciPassthru.use64bitMMIOSizeGB = 128
Advanced 參數如果沒有加,可能會遇到「Module DevicePowerOn power on failed」的錯誤
安裝 NVIDIA Driver
從 NVIDIA 官方網站 下載 NVIDIA Driver 並執行以下指令安裝,安裝完成後重開虛擬機
## Install local repository on file system sudo dpkg -i nvidia-driver-local-repo-ubuntu2404-570.133.20_1.0-1_amd64.deb sudo apt update ## Enroll ephemeral public GPG key sudo cp /var/nvidia-driver-local-repo-ubuntu2404-570.133.20/nvidia-driver-local-BB6607B3-keyring.gpg /usr/share/keyrings/ ## Driver and cuda installation sudo apt install nvidia-open sudo apt install cuda-drivers
執行 nvidia-smi 確認系統有沒有認到 NVIDIA A40 GPU 卡
沒有留言:
張貼留言