在 Batch 集區中使用 RDMA 或 GPU 執行個體
為了執行特定 Batch 作業,您可以利用專門設計來進行大規模計算的 Azure VM 大小。 例如:
若要執行多重實例 MPI 工作負載,請選擇 HB、HC、NC 或 ND 系列,或具有遠端直接記憶體存取網路介面的其他大小(RDMA)。 這些大小會連線到 InfiniBand 網路來進行節點間通訊,以加速 MPI 應用程式的運作。
若是 CUDA 應用程式,請選擇 N 系列大小,因為這些大小包含 NVIDIA Tesla 圖形處理器 (GPU) 顯示卡。
本文會就如何在 Batch 集區中使用某些 Azure 特製大小提供指導方針與範例。 若要了解規格及背景,請參閱:
注意
在您用來建立 Batch 帳戶的區域中,可能不會提供特定 VM 大小。 若要確認是否有提供某個大小,請參閱依區域提供的產品和為 Batch 集區選擇 VM 大小。
相依性
只有特定作業系統會支援 Batch 中需要大量計算之大小的 RDMA 或 GPU 功能 這些 VM 大小的支援的作業系統只包含虛擬機建立可用的部分。 視您建立 Batch 集區的方式而定,您可能需要在節點上安裝或設定額外的驅動程式或其他軟體。 下表摘要說明這些相依性。 如需詳細資訊,請參閱連結的文章。 若要了解用來設定 Batch 集區的選項,請參閱本文稍後的內容。
Linux 集區 - 虛擬機器組態
大小 | 功能 | 作業系統 | 必要軟體 | 集區設定 |
---|---|---|---|---|
H16r、H16mr NC24r、NC24rs_v2、NC24rs_v3、ND24rs* |
RDMA | Ubuntu 22.04 LTS (Azure Marketplace) |
Intel MPI 5 Linux RDMA 驅動程式 |
啟用節點間通訊、停用並行工作執行 |
NCv3、NDv2、NDv4、NDv5 系列 | NVIDIA Tesla GPU (依系列而有所不同) | Ubuntu 22.04 LTS (Azure Marketplace) |
NVIDIA CUDA 或 CUDA Toolkit 驅動程式 | N/A |
NVv3、NVv4、NVv5 系列 | 加速視覺效果 GPU | Ubuntu 22.04 LTS (Azure Marketplace) |
NVIDIA GRID 驅動程式(如有需要) | N/A |
*具備 RDMA 功能的 N 系列大小也包含 NVIDIA Tesla GPU
重要
本文件參考即將或已處於生命週期結束 (EOL) 狀態的 Linux 版本。 請考慮更新為較新的版本。
Windows 集區 - 虛擬機器組態
大小 | 功能 | 作業系統 | 必要軟體 | 集區設定 |
---|---|---|---|---|
H16r、H16mr NC24r、NC24rs_v2、NC24rs_v3、ND24rs* |
RDMA | Windows Server 2016、2012 R2 或 2012 (Azure Marketplace) |
Microsoft MPI 2012 R2 或更新版本,或 Intel MPI 5 Windows RDMA 驅動程式 |
啟用節點間通訊、停用並行工作執行 |
NC、NCv2、NCv3、ND、NDv2 系列 | NVIDIA Tesla GPU (依系列而有所不同) | Windows Server 2016 或 2012 R2 (Azure Marketplace) |
NVIDIA CUDA 或 CUDA Toolkit 驅動程式 | N/A |
NV、NVv2、NVv4 系列 | NVIDIA Tesla M60 GPU | Windows Server 2016 或 2012 R2 (Azure Marketplace) |
NVIDIA GRID 驅動程式 | N/A |
*具備 RDMA 功能的 N 系列大小也包含 NVIDIA Tesla GPU
Windows 集區 - 雲端服務組態
警告
雲端服務設定集區已經淘汰。 請改用虛擬機器設定集區。
大小 | 功能 | 作業系統 | 必要軟體 | 集區設定 |
---|---|---|---|---|
H16r、H16mr | RDMA | Windows Server 2016、2012 R2、2012 或 2008 R2 (客體作業系統系列) |
Microsoft MPI 2012 R2 或更新版本,或 Intel MPI 5 Windows RDMA 驅動程式 |
啟用節點間通訊、 停用並行工作執行 |
注意
雲端服務設定集區工具不支援 N 系列大小。
集區組態選項
為了對 Batch 集區設定特製 VM 大小,有數個選項可供您安裝必要的軟體或驅動程式:
針對虛擬機器設定中的集區,選擇預先設定的 Azure Marketplace VM 映像,其中已預先安裝驅動程式和軟體。 範例:
適用於 Linux 或 Windows 的資料科學虛擬機器 - 包含 NVIDIA CUDA 驅動程式
適用於 Batch 容器工作負載的 Linux 映像 (也包含 GPU 和 RDMA 驅動程式):
使用已安裝的驅動程式、軟體或其他 VM 大小所需的設定,建立 自定義 Windows 或 Linux VM 映射 。
從壓縮的驅動程式或應用程式安裝程式建立 Batch 應用程式套件 。 然後,設定 Batch 將此套件部署至集區節點,並在建立每個節點時安裝一次。 例如,如果該應用程式套件是安裝程式,請建立啟動工作命令列,以在所有集區節點上以無訊息方式安裝應用程式。 如果您的工作負載相依於特定驅動程式版本,請考慮使用應用程式套件和集區啟動工作。
注意
啟動工作必須以提升的 (系統管理員) 權限來執行,而且必須等候到成功。 長時間執行的工作會增加佈建 Batch 集區的時間。
範例:Windows NC VM 集區上的 NVIDIA GPU 驅動程式
若要在 Windows NC 節點所構成的集區上執行 CUDA 應用程式,您必須在安裝 NVDIA GPU 驅動程式。 下列範例步驟使用應用程式套件來安裝 NVIDIA GPU 驅動程式。 如果您的工作負載相依於特定 GPU 驅動程式版本,您可以選擇此選項。
- 從 NVIDIA 網站下載 Windows Server 2016 版 GPU 驅動程式的安裝套件 - 例如 411.82 版。 使用 GPUDriverSetup.exe 之類的簡短名稱將檔案儲存在本機。
- 建立該套件的 zip 檔案。
- 將套件上傳至您的 Batch 帳戶。 如需相關步驟,請參閱應用程式套件指引。 指定應用程式識別碼 (例如 GPUDriver) 和版本 (例如 411.82)。
- 使用 Batch API 或 Azure 入口網站,在虛擬機器設定中建立具有所需節點數目和規模大小的集區。 下表顯示使用啟動工作以無訊息方式安裝 NVIDIA GPU 驅動程式的範例設定:
設定 | 值 |
---|---|
映像類型 | Marketplace (Linux/Windows) |
發行者 | MicrosoftWindowsServer |
供應項目 | WindowsServer |
Sku | 2016-Datacenter |
節點大小 | NC6 標準 |
應用程式套件參考 | GPUDriver,版本 411.82 |
已啟用啟動工作 | True 命令列 - cmd /c "%AZ_BATCH_APP_PACKAGE_GPUDriver#411.82%\\GPUDriverSetup.exe /s" 使用者身分識別 - 集區的自動使用者、系統管理員 等待成功 - True |
範例:Linux NC VM 集區上的 NVIDIA GPU 驅動程式
若要在 Linux NC 節點所構成的集區上執行 CUDA 應用程式,您必須從 CUDA Toolkit 安裝必要的 NVIDIA Tesla GPU 驅動程式。 下列範例步驟會建立和部署具有 GPU 驅動程式的自訂 Ubuntu 22.04 LTS 映像:
- 部署執行 Ubuntu 22.04 LTS 的 Azure NC 系列 VM。 例如,在美國中南部區域建立 VM。
- 使用 Azure 入口網站、連線到 Azure 訂用帳戶的用戶端電腦或 Azure Cloud Shell,將 NVIDIA GPU 驅動程式延伸模組新增至 VM。 或者,遵循步驟來手動連線到 VM 並安裝 CUDA 驅動程式。
- 依循步驟建立 Batch 的 Azure Compute Gallery 映像。
- 在支援 NC VM 的區域建立 Batch 帳戶。
- 使用 Batch API 或 Azure 入口網站,使用自訂映像建立具有所需節點數目和規模大小的集區。 下表顯示該映像的集區設定範例:
設定 | 值 |
---|---|
映像類型 | 自訂映像 |
自訂映像 | 映像的名稱 |
節點代理程式 SKU | batch.node.ubuntu 22.04 |
節點大小 | NC6 標準 |
範例:Windows H16r VM 集區上的 Microsoft MPI
若要在 Azure H16r VM 節點所構成的集區上執行 Windows MPI 應用程式,您必須設定 HpcVmDrivers 延伸模組並安裝 Microsoft MPI。 以下的範例步驟可供您部署具有必要驅動程式和軟體的自訂 Windows Server 2016 映像:
- 部署執行 Windows Server 2016 的 Azure H16r VM。 例如,在美國西部區域建立 VM。
- 從連線到 Azure 訂用帳戶的用戶端電腦執行 Azure PowerShell 命令,或使用 Azure Cloud Shell,將 HpcVmDrivers 延伸模組新增至 VM。
- 建立對 VM 的遠端桌面連線。
- 下載適用於最新版 Microsoft MPI 的安裝套件 (MSMpiSetup.exe),然後安裝 Microsoft MPI。
- 依循步驟建立 Batch 的 Azure Compute Gallery 映像。
- 使用 Batch API 或 Azure 入口網站,建立使用 Azure Compute Gallery、且具有所需節點數目及規模的集區。 下表顯示該映像的集區設定範例:
設定 | 值 |
---|---|
映像類型 | 自訂映像 |
自訂映像 | 映像的名稱 |
節點代理程式 SKU | batch.node.windows amd64 |
節點大小 | H16r 標準 |
已啟用節點間通訊 | True |
每個節點的工作數上限 | 1 |