Sdílet prostřednictvím


Příprava GPU pro místní Azure (Preview)

Platí pro: Azure Local 2311.2 a novější

Tento článek popisuje přípravu grafických procesorů (GPU) na místní instanci Azure pro výpočetní úlohy spuštěné na virtuálních počítačích Arc a AKS s podporou Azure Arc. Gpu se používají pro úlohy náročné na výpočty, jako je strojové učení a hluboké učení.

Důležité

Tato funkce je aktuálně ve verzi PREVIEW. Právní podmínky, které platí pro funkce Azure, které jsou ve verzi beta, verzi Preview nebo které zatím nejsou veřejně dostupné, najdete v Dodatečných podmínkách použití pro Microsoft Azure verze Preview.

Připojení grafických procesorů v Místním prostředí Azure

Gpu můžete připojit jedním ze dvou způsobů pro místní Azure:

  • Diskrétní přiřazení zařízení (DDA) – umožňuje vyhradit fyzické GPU pro vaši úlohu. V nasazení DDA běží virtualizované úlohy na nativním ovladači a obvykle mají úplný přístup k funkcím GPU. DDA nabízí nejvyšší úroveň kompatibility aplikací a potenciálního výkonu.

  • Dělení GPU (GPU-P) – umožňuje sdílet GPU s několika úlohami rozdělením GPU na vyhrazené zlomkové oddíly.

Vezměte v úvahu následující funkce a podporu rozdílů mezi těmito dvěma možnostmi použití grafických procesorů:

Popis Přiřazení diskrétního zařízení Dělení GPU
Model prostředků GPU Celé zařízení Rovnoměrně dělené zařízení
Hustota virtuálních počítačů Nízká (jeden GPU na jeden virtuální počítač) Vysoká (jeden GPU na mnoho virtuálních počítačů)
Kompatibilita aplikací Všechny možnosti GPU poskytované dodavatelem (DX 12, OpenGL, CUDA) Všechny možnosti GPU poskytované dodavatelem (DX 12, OpenGL, CUDA)
GPU VRAM Až VRAM podporované GPU Až VRAM podporované GPU na oddíl
Ovladač GPU v hostu Ovladač dodavatele GPU (NVIDIA) Ovladač dodavatele GPU (NVIDIA)

Podporované modely GPU

Úplný seznam podporovaných řešení a grafických procesorů, které jsou k dispozici, najdete v tématu Místní řešení Azure a výběrem podpory GPU v nabídce vlevo zobrazíte možnosti.

NVIDIA podporuje své úlohy samostatně pomocí svého virtuálního softwaru GPU. Další informace naleznete v tématu Microsoft Azure Local – Podporované grafické procesory NVIDIA a ověřené serverové platformy.

Úlohy AKS najdete v tématu GPU pro AKS pro Arc.

Následující modely GPU se podporují pomocí DDA i GPU-P pro úlohy virtuálních počítačů Arc:

  • NVIDIA A2
  • NVIDIA A16

Tyto další modely GPU se podporují pomocí GPU-P (pouze) pro úlohy virtuálních počítačů Arc:

  • NVIDIA A10
  • NVIDIA A40
  • NVIDIA L4
  • NVIDIA L40
  • NVIDIA L40S

Požadavky na hostitele

Místní hostitel Azure musí splňovat následující požadavky:

  • Váš systém musí podporovat místní řešení Azure s podporou GPU. Pokud chcete procházet možnosti, podívejte se na místní katalog Azure.

  • Máte přístup k místnímu Azure verze 23H2.

  • Musíte vytvořit homogenní konfiguraci pro GPU napříč všemi počítači ve vašem systému. Homogenní konfigurace se skládá z instalace stejného modelu a modelu GPU.

  • V případě GPU-P se ujistěte, že podpora virtualizace a SR-IOV jsou povoleny v systému BIOS každého počítače v systému. Pokud nemůžete identifikovat správné nastavení v systému BIOS, obraťte se na dodavatele hardwaru.

Příprava ovladačů GPU na každém hostiteli

Proces přípravy a instalace ovladačů GPU pro každý počítač se mírně liší mezi DDA a GPU-P. Postupujte podle příslušného procesu pro vaši situaci.

Vyhledání grafických procesorů na každém hostiteli

Nejprve se ujistěte, že pro každý počítač není nainstalovaný žádný ovladač. Pokud je nainstalovaný ovladač hostitele, odinstalujte ovladač hostitele a restartujte počítač.

Po odinstalaci ovladače hostitele nebo pokud jste žádný ovladač nenainstalovali, spusťte PowerShell jako správce pomocí následujícího příkazu:

Get-PnpDevice -Status Error | fl FriendlyName, ClusterId

Zařízení s GPU by se měla zobrazit v chybovém stavu, jak 3D Video Controller je znázorněno v ukázkovém výstupu se seznamem popisného názvu a ID instance GPU:

[ASRR1N26R02U46A]: PS C:\Users\HCIDeploymentUser\Documents> Get-PnpDevice - Status Error

Status		Class			FriendlyName
------		-----			------------
Error					SD Host Controller
Error					3D Video Controller
Error					3D Video Controller
Error		USB			Unknown USB Device (Device Descriptor Request Failed)

[ASRR1N26R02U46A]: PS C:\Users\HCIDeploymentUser\Documents> Get-PnpDevice - Status Error | f1 InstanceId

InstanceId : PCI\VEN_8086&DEV_18DB&SUBSYS_7208086REV_11\3&11583659&0&E0

InstanceId : PCI\VEN_10DE&DEV_25B6&SUBSYS_157E10DE&REV_A1\4&23AD3A43&0&0010

InstanceId : PCI\VEN_10DE&DEV_25B6&SUBSYS_157E10DE&REV_A1\4&17F8422A&0&0010

InstanceId : USB\VID_0000&PID_0002\S&E492A46&0&2

Použití DDA

Pokud používáte DDA, postupujte podle tohoto postupu:

1. Zakažte a odpojte gpu od hostitele.

Když pro DDA odinstalujete ovladač hostitele nebo máte nové místní nastavení Azure, fyzický GPU přejde do chybového stavu. Abyste mohli pokračovat, musíte odpojit všechna zařízení s GPU. Pomocí Správce zařízení nebo PowerShellu můžete gpu zakázat a odpojit pomocí ClusterID získaného v předchozím kroku.

$id1 = "GPU_instance_ID"
Disable-PnpDevice -ClusterId $id1 -Confirm:$false
Dismount-VMHostAssignableDevice -ClusterPath $id1 -Force

Ověřte, že se grafické procesory správně odpojí z hostitelského počítače. Grafické procesory teď budou ve Unknown stavu:

Get-PnpDevice -Status Unknown | fl FriendlyName, ClusterId

Tento postup opakujte pro každý počítač v systému a připravte gpu.

2. Stáhněte a nainstalujte ovladač pro zmírnění rizik.

Software může zahrnovat komponenty vyvinuté a vlastněné společností NVIDIA Corporation nebo jejími licencemi. Použití těchto komponent se řídí licenční smlouvou s koncovým uživatelem NVIDIA.

Informace o stažení příslušného ovladače pro zmírnění rizik NVIDIA najdete v dokumentaci NVIDIA. Po stažení ovladače rozbalte archiv a nainstalujte ovladač pro zmírnění rizik na každý hostitelský počítač. Pomocí následujícího skriptu PowerShellu stáhněte ovladač pro zmírnění rizik a extrahujte ho:

Invoke-WebRequest -Uri "https://docs.nvidia.com/datacenter/tesla/gpu-passthrough/nvidia_azure_stack_inf_v2022.10.13_public.zip" -OutFile "nvidia_azure_stack_inf_v2022.10.13_public.zip"
mkdir nvidia-mitigation-driver
Expand-Archive .\nvidia_azure_stack_inf_v2022.10.13_public.zip .\nvidia-mitigation-driver

Po extrahování souborů ovladače pro zmírnění rizik vyhledejte verzi správného modelu GPU a nainstalujte ho. Pokud jste například nainstalovali ovladač pro zmírnění rizik NVIDIA A2, spusťte následující příkaz:

pnputil /add-driver nvidia_azure_stack_A2_base.inf /install /force

Pokud chcete potvrdit instalaci těchto ovladačů, spusťte:

pnputil /enum-devices OR pnputil /scan-devices

Měli byste být schopni zobrazit správně identifikované grafické procesory v Get-PnpDevice:

Get-PnpDevice -Class Display | fl FriendlyName, ClusterId

Opakujte výše uvedené kroky pro každého hostitele v místním prostředí Azure.

Použití GPU-P

Pokud používáte GPU-P, postupujte podle tohoto postupu:

Stažení a instalace ovladače hostitele

GPU-P vyžaduje ovladače na úrovni hostitele, které se liší od DDA. U grafických procesorů NVIDIA budete potřebovat softwarový grafický ovladač NVIDIA vGPU na každém hostiteli a na každém virtuálním počítači, který bude používat GPU-P. Další informace naleznete v nejnovější verzi dokumentace NVIDIA vGPU a podrobnosti o licencování v Uživatelské příručce k licencování klienta.

Po identifikaci gpu jako 3D Video Controller na hostitelském počítači stáhněte ovladač vGPU hostitele. Prostřednictvím vaší licence NVIDIA GRID byste měli být schopni získat správný ovladač hostitele .zip soubor.

Budete muset získat a přesunout následující složku do hostitelského počítače: \vGPU_<Your_vGPU_version>_GA_Azure_Stack_HCI_Host_Drivers

Přejděte na \vGPU_<Your_vGPU_version>_GA_Azure_Stack_HCI_Host_Drivers\Display.Driver a nainstalujte ovladač.

pnputil /add-driver .\nvgridswhci.inf /install /force

Pokud chcete potvrdit instalaci těchto ovladačů, spusťte:

pnputil /enum-devices

Měli byste být schopni zobrazit správně identifikované grafické procesory v Get-PnpDevice:

Get-PnpDevice -Class Display | fl FriendlyName, ClusterId

Můžete také spustit rozhraní NVIDIA System Management Interface nvidia-smi a zobrazit tak seznam GPU na hostitelském počítači následujícím způsobem:

nvidia-smi

Pokud je ovladač správně nainstalovaný, zobrazí se výstup podobný následujícímu příkladu:

Wed Nov 30 15:22:36 2022
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 527.27       Driver Version: 527.27       CUDA Version: N/A      |
|-------------------------------+----------------------+----------------------+
| GPU  Name            TCC/WDDM | Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  NVIDIA A2          WDDM  | 00000000:65:00.0 Off |                    0 |
|  0%   24C    P8     5W /  60W |  15192MiB / 15356MiB |      0%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
|   1  NVIDIA A2          WDDM  | 00000000:66:00.0 Off |                    0 |
|  0%   24C    P8     5W /  60W |  15192MiB / 15356MiB |      0%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
 
+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|  No running processes found                                                 |
+-----------------------------------------------------------------------------+

Konfigurace počtu oddílů GPU

Pokud chcete nakonfigurovat počet oddílů GPU v PowerShellu, postupujte takto:

Poznámka:

Při použití PowerShellu musíte ručně zajistit, aby konfigurace GPU byla homogenní ve všech počítačích v místním prostředí Azure.

  1. Připojte se k počítači, jehož počet oddílů GPU chcete nakonfigurovat.

  2. Get-VMHostPartitionableGpu Spusťte příkaz a odkazujte na hodnoty Name a ValidPartitionCounts.

  3. Spuštěním následujícího příkazu nakonfigurujte počet oddílů. Nahraďte GPU-name hodnotou Name a jedním z podporovaných počtů z partition-count:

    Set-VMHostPartitionableGpu -Name "<GPU-name>" -PartitionCount <partition-count>
    

    Například následující příkaz nakonfiguruje počet oddílů na 4:

    PS C:\Users> Set-VMHostPartitionableGpu -Name "\\?\PCI#VEN_10DE&DEV_25B6&SUBSYS_157E10DE&REV_A1#4&18416dc3&0&0000#{064092b3-625e-43bf-9eb5-dc845897dd59}" -PartitionCount 4
    

    Spuštěním příkazu Get-VMHostPartitionableGpu | FL Name,ValidPartitionCounts,PartitionCount můžete znovu ověřit, zda je počet oddílů nastavený na 4hodnotu .

    Tady je ukázkový výstup:

    PS C:\Users> Get-VMHostPartitionableGpu | FL Name,ValidPartitionCounts,PartitionCount
    
    Name                    : \\?\PCI#VEN_10DE&DEV_25B6&SUBSYS_157E10DE&REV_A1#4&18416dc3&0&0000#{064092b3-625e-43bf-9eb5-dc845897dd59}
    ValidPartitionCounts    : {16, 8, 4, 2...}
    PartitionCount          : 4
    
    Name                    : \\?\PCI#VEN_10DE&DEV_25B6&SUBSYS_157E10DE&REV_A1#4&5906f5e&0&0010#{064092b3-625e-43bf-9eb5-dc845897dd59}
    ValidPartitionCounts    : {16, 8, 4, 2...}
    PartitionCount          : 4
    
  4. Pokud chcete zachovat homogenní konfiguraci, opakujte kroky konfigurace počtu oddílů na každém počítači ve vašem systému.

Požadavky hosta

Správa GPU se podporuje pro následující úlohy virtuálních počítačů Arc:

Další kroky