Grafikprozessor (GPU)-VM in Azure Stack Hub
In diesem Artikel ist beschrieben, welche GPU-Modelle (Graphics Processing Unit, Grafikprozessor) in einem integrierten Azure Stack Hub-System unterstützt werden. Der Artikel enthält auch Anweisungen zum Installieren der treiber, die mit den GPUs verwendet werden. Die GPU-Unterstützung in Azure Stack Hub ermöglicht Lösungen wie künstliche Intelligenz, Training, Rückschluss und Datenvisualisierung. Der AMD Radeon Instinct MI25 kann zur Unterstützung von grafikintensiven Anwendungen wie Autodesk AutoCAD verwendet werden.
Sie können aus drei GPU-Modellen wählen. NVIDIA V100, NVIDIA T4 und AMD MI25. Diese physischen GPUs entsprechen den folgenden Azure-VM-Typen der N-Serie:
Warnung
GPU-VMs werden in diesem Release nicht unterstützt. Sie müssen ein Upgrade auf Azure Stack Hub 2005 oder höher durchführen. Außerdem muss Ihre Azure Stack Hub-Hardware über physische GPUs verfügen.
NCv3
NCv3-Serien-VMs werden mit NVIDIA Tesla V100-GPUs betrieben. Kunden können diese neuen GPUs für herkömmliche HPC-Workloads wie Modellierung von Lagerstätten, DNA-Sequenzierung, Proteinanalysen, Monte Carlo-Simulationen und Ähnliches nutzen.
Größe | vCPU | Memory: GiB | Temporärer Speicher (SSD): GiB | GPU | GPU-Arbeitsspeicher: GiB | Max. Anzahl Datenträger | Maximale Anzahl NICs |
---|---|---|---|---|---|---|---|
Standard_NC6s_v3 | 6 | 112 | 736 | 1 | 16 | 12 | 4 |
Standard_NC12s_v3 | 12 | 224 | 1474 | 2 | 32 | 24 | 8 |
Standard_NC24s_v3 | 24 | 448 | 2948 | 4 | 64 | 32 | 8 |
NVv4
Die VMs der NVv4-Serie verfügen über AMD Radeon Instinct MI25-GPUs. Mit der NVv4-Serie führt Azure Stack Hub virtuelle Computer mit partiellen GPUs ein. Diese Größe kann für GPU-beschleunigte Grafikanwendungen und virtuelle Desktops verwendet werden. Virtuelle NVv4-Computer unterstützen derzeit nur das Windows-Gastbetriebssystem.
Größe | vCPU | Memory: GiB | Temporärer Speicher (SSD): GiB | GPU | GPU-Arbeitsspeicher: GiB | Max. Anzahl Datenträger | Maximale Anzahl NICs |
---|---|---|---|---|---|---|---|
Standard_NV4as_v4 | 4 | 14 | 88 | 1/8 | 2 | 4 | 2 |
Standard_NV8as_v4 | 8 | 28 | 176 | 1/4 | 4 | 8 | 4 |
Standard_NV16as_v4 | 16 | 56 | 352 | 1/2 | 8 | 16 | 8 |
Standard_NV32as_v4 | 32 | 112 | 704 | 1 | 16 | 32 | 8 |
NCasT4_v3
Größe | vCPU | Memory: GiB | GPU | GPU-Arbeitsspeicher: GiB | Max. Anzahl Datenträger | Maximale Anzahl NICs |
---|---|---|---|---|---|---|
Standard_NC4as_T4_v3 | 4 | 28 | 1 | 16 | 8 | 4 |
Standard_NC8as_T4_v3 | 8 | 56 | 1 | 16 | 16 | 8 |
Standard_NC16as_T4_v3 | 16 | 110 | 1 | 16 | 32 | 8 |
Standard_NC64as_T4_v3 | 64 | 440 | 4 | 64 | 32 | 8 |
NC_A100 v4
Die VMs der NC_A100 Serie werden von NVIDIA Ampere A100 GPUs betrieben, dem Nachfolger der Tesla V100 GPUs. Sie können diese aktualisierten GPUs für herkömmliche HPC-Workloads wie Reservoirmodellierung, DNA-Sequenzierung, Proteinanalyse, Monte Carlo-Simulationen und andere nutzen.
Größe | vCPU | Memory: GiB | Temporärer Speicher (GiB) | Max. Anzahl Datenträger | GPU | GPU-Speicher GiB | Maximale Anzahl NICs |
---|---|---|---|---|---|---|---|
Standard_NC24ads_A100_v4 | 24 | 220 | 1123 | 12 | 1 | 80 | 2 |
Standard_NC48ads_A100_v4 | 48 | 440 | 2246 | 24 | 2 | 160 | 4 |
NC_L40S v4
Größe | vCPU | Memory: GiB | Temporärer Speicher (GiB) | Max. Anzahl Datenträger | GPU | GPU-Speicher GiB | Maximale Anzahl NICs |
---|---|---|---|---|---|---|---|
Standard_NC24ads_L40S_v4 | 24 | 220 | 1123 | 8 | 1 | 80 | 2 |
Standard_NC48ads_L40S_v4 | 48 | 440 | 2246 | 16 | 2 | 160 | 4 |
Überlegungen zum Standortsystem
- Die GPU muss eine dieser SKUs nutzen: AMD MI-25, Nvidia V100 (und Varianten), Nvidia T4.
- Anzahl unterstützter GPUs pro Server (1, 2, 3, 4). Bevorzugt: 1, 2 und 4
- Alle GPUs müssen innerhalb der Skalierungseinheit exakt dieselbe SKU aufweisen.
- Die GPU-Anzahl pro Server muss innerhalb der Skalierungseinheit identisch sein.
- Die GPU-Partitionsgröße (für AMD Mi25) muss auf allen GPU-VMs in der Skalierungseinheit gleich sein.
Kapazitätsplanung
Der Azure Stack Hub-Kapazitätsplaner wurde aktualisiert, um GPU-Konfigurationen zu unterstützen. Es ist hier verfügbar.
Hinzufügen von GPUs zu einem vorhandenen Azure Stack Hub
Azure Stack Hub unterstützt jetzt das Hinzufügen von GPUs zu einem vorhandenen System. Führen Sie zum stop-azurestack
Hinzufügen einer GPU die Prozedur aus stop-azurestack
, fügen Sie GPUs hinzu, und führen Sie sie dann bis zum Abschluss aus start-azurestack
. Wenn das System bereits GPUs hatte, müssen alle zuvor erstellten GPU-VMs erstellt und dann neu gestartet werden stop-deallocated
.
Patch- und Update- sowie FRU-Verhalten von VMs
GPU-VMs werden bei Vorgängen wie Patch und Update (PnU) und Hardwareersatz (FRU) von Azure Stack Hub ausfallzeiten. In der folgenden Tabelle werden der Zustand des virtuellen Computers, der während dieser Aktivitäten beobachtet wird, und die manuellen Maßnahmen behandelt, die Sie ergreifen können, um diese virtuellen Computer nach dem Vorgang wieder zur Verfügung zu stellen.
Vorgang | PnU: Vollständiges Update, OEM-Update | FRU |
---|---|---|
VM-Zustand | Während des Updates nicht verfügbar. Kann mit manuellem Betrieb verfügbar gemacht werden. Der virtuelle Computer ist nach dem Update automatisch online. | Während der FRU nicht verfügbar. Kann mit manuellem Betrieb verfügbar gemacht werden. Virtueller Computer muss nach FRU erneut gestartet werden. |
Manuelle Benutzeraktion | Wenn die VM während des Updates verfügbar gemacht werden muss und GPU-Partitionen verfügbar sind, können Sie die VM über das Portal neu starten, indem Sie auf die Schaltfläche Neu starten klicken. VM wird automatisch nach dem Update gesichert. | Der virtuelle Computer ist während der FRU-Zeit nicht verfügbar. Wenn GPUs verfügbar sind, kann die Zuordnung des virtuellen Computers beendet („stop-deallocated“) und während der FRU neu gestartet werden. Nach der FRU-Fertigstellung muss stop-deallocated der virtuelle Computer die Schaltfläche "Beenden " verwenden und dann mit der Schaltfläche "Start " neu gestartet werden. |
Installation des Gasttreibers
Die folgenden PowerShell-Cmdlets können für die Treiberinstallation verwendet werden:
$VmName = <VM Name In Portal>
$ResourceGroupName = <Resource Group of VM>
$Location = "redmond"
$driverName = <Give a name to the driver>
$driverPublisher = "Microsoft.HpcCompute"
$driverType = <Specify Driver Type> #GPU Driver Types: "NvidiaGpuDriverWindows"; "NvidiaGpuDriverLinux"; "AmdGpuDriverWindows"
$driverVersion = <Specify Driver Version> #Nvidia Driver Version:"1.3"; AMD Driver Version:"1.0"
Set-AzureRmVMExtension -Location $Location `
-Publisher $driverPublisher `
-ExtensionType $driverType `
-TypeHandlerVersion $driverVersion `
-VMName $VmName `
-ResourceGroupName $ResourceGroupName `
-Name $driverName `
-Settings $Settings ` # If no settings are set, omit this parameter
-Verbose
Je nach Betriebssystem, Typ und Konnektivität Ihrer AZURE Stack Hub GPU-VM müssen Sie diese Werte durch die folgenden Einstellungen ersetzen.
AMD MI25
Die Gasttreiberversion muss mit der Azure Stack Hub-Version übereinstimmen, unabhängig vom Verbindungsstatus. Die Verwendung neuerer Versionen, die nicht an der Azure Stack Hub-Version ausgerichtet sind, kann Zu Problemen mit der Benutzerfreundlichkeit führen.
Azure Stack Hub-Version | AMD-Gasttreiber |
---|---|
2206 und höher | 21.Q2-1, 20.Q4-1 |
2108 | 21.Q2-1, 20.Q4-1 |
2102 | 21.Q2-1, 20.Q4-1 |
Verbunden
Verwenden Sie das PowerShell-Skript im vorherigen Abschnitt mit dem entsprechenden Treibertyp für AMD. Der Artikel Installieren von AMD GPU-Treibern auf VMs der N-Serie unter Windows enthält Anweisungen zum Installieren des Treibers für die AMD Radeon Instinct MI25 innerhalb der NVv4 GPU-P-fähigen VM sowie Schritte zum Überprüfen der Treiberinstallation.
Getrennt
Da die Erweiterung den Treiber von einem Speicherort im Internet abruft, kann eine VM, die vom externen Netzwerk getrennt ist, nicht darauf zugreifen. Sie können den Treiber aus der vorherigen Tabelle herunterladen und in ein Speicherkonto in Ihrem lokalen Netzwerk hochladen, auf das auf die VM zugegriffen werden kann.
Fügen Sie den AMD-Treiber zu einem Speicherkonto hinzu, und geben Sie die URL zu diesem Konto an Settings
. Diese Einstellungen müssen im Cmdlet Set-AzureRMVMExtension verwendet werden. Zum Beispiel:
$Settings = @{
"DriverURL" = <URL to driver in storage account>
}
NVIDIA
NVIDIA-Treiber müssen auf dem virtuellen Computer installiert sein, damit für CUDA- oder GRID-Workloads die GPU verwendet werden kann.
Anwendungsfall: Grafik-/Visualisierungs-GRID
Dieses Szenario erfordert die Verwendung von GRID-Treibern. GRID-Treiber können über den NVIDIA Application Hub heruntergeladen werden, sofern Sie über die erforderlichen Lizenzen verfügen. Die GRID-Treiber erfordern außerdem einen GRID-Lizenzserver mit entsprechenden GRID-Lizenzen, bevor die GRID-Treiber auf der VM verwendet werden können.
$Settings = @{
"DriverURL" = "https://download.microsoft.com/download/e/8/2/e8257939-a439-4da8-a927-b64b63743db1/431.79_grid_win10_server2016_server2019_64bit_international.exe"; "DriverCertificateUrl" = "https://go.microsoft.com/fwlink/?linkid=871664";
"DriverType"="GRID"
}
Anwendungsfall: Compute/CUDA: Verbunden
CUDA-Treiber benötigen keinen Lizenzserver und benötigen keine geänderten Einstellungen.
Anwendungsfall: Compute/CUDA: Getrennt
Links zu NVIDIA CUDA-Treibern können über folgenden Link abgerufen werden: https://raw.githubusercontent.com/Azure/azhpc-extensions/master/NvidiaGPU/resources.json
Windows:
$Settings = @{
"DriverURL" = "";
"DriverCertificateUrl" = "https://go.microsoft.com/fwlink/?linkid=871664";
"DriverType"="CUDA"
}
Linux:
Sie müssen auf einige URLs für Ihre Einstellungen verweisen:
URL | Hinweise |
---|---|
PUBKEY_URL | PUBKEY_URL ist der öffentliche Schlüssel für das Nvidia-Treiber-Repository, nicht für den virtuellen Linux-Computer. Es wird verwendet, um Treiber für Ubuntu zu installieren. |
DRIVER_URL | DRIVER_URL ist die URL zum Herunterladen der Repositoryinformationen des Nvidia-Treibers und wird zur Liste der Repositorys der Linux-VM hinzugefügt. |
Fügen Sie die URLs Ihren Einstellungen hinzu.
$Settings=@{
"isCustomInstall"=$true;
"DRIVER_URL"="https://go.microsoft.com/fwlink/?linkid=874273";
"CUDA_ver"="10.0.130";
"PUBKEY_URL"="http://download.microsoft.com/download/F/F/A/FFAC979D-AD9C-4684-A6CE-C92BB9372A3B/7fa2af80.pub";
"DKMS_URL"="https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm";
"LIS_URL"="https://aka.ms/lis";
"LIS_RHEL_ver"="3.10.0-1062.9.1.el7"
}