Máquina virtual (VM) da unidade de processamento gráfico (GPU) no Azure Stack Hub
Este artigo descreve quais modelos de unidade de processamento gráfico (GPU) são suportados em um sistema integrado do Azure Stack Hub. O artigo também contém instruções sobre como instalar os drivers usados com as GPUs. O suporte de GPU no Azure Stack Hub permite soluções como inteligência artificial, treinamento, inferência e visualização de dados. A AMD Radeon Instinct MI25 pode ser usada para oferecer suporte a aplicativos com uso intensivo de gráficos, como o Autodesk AutoCAD.
Você pode escolher entre três modelos de GPU. Eles estão disponíveis em GPUs NVIDIA V100, NVIDIA T4 e AMD MI25. Essas GPUs físicas se alinham com os seguintes tipos de máquina virtual (VM) do Azure N-Series da seguinte maneira:
Aviso
As VMs GPU não são suportadas nesta versão. Você deve atualizar para o Azure Stack Hub 2005 ou posterior. Além disso, o hardware do Azure Stack Hub deve ter GPUs físicas.
As VMs da série NCv3 são alimentadas por GPUs NVIDIA Tesla V100. Os clientes podem aproveitar essas GPUs atualizadas para cargas de trabalho HPC tradicionais, como modelagem de reservatório, sequenciamento de DNA, análise de proteínas, simulações de Monte Carlo e outros.
Tamanho | vCPU | Memória: GiB | Armazenamento (SSD) temporário GiB | GPU | Memória GPU: GiB | Discos de dados máximos | NICs máximos |
---|---|---|---|---|---|---|---|
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 |
As máquinas virtuais da série NVv4 são alimentadas por GPUs AMD Radeon Instinct MI25. Com a série NVv4, o Azure Stack Hub apresenta máquinas virtuais com GPUs parciais. Esse tamanho pode ser usado para aplicativos gráficos acelerados por GPU e desktops virtuais. Atualmente, as máquinas virtuais NVv4 suportam apenas o sistema operacional convidado do Windows.
Tamanho | vCPU | Memória: GiB | Armazenamento (SSD) temporário GiB | GPU | Memória GPU: GiB | Discos de dados máximos | NICs máximos |
---|---|---|---|---|---|---|---|
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 |
Tamanho | vCPU | Memória: GiB | GPU | Memória GPU: GiB | Discos de dados máximos | NICs máximos |
---|---|---|---|---|---|---|
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 |
As VMs da série NC_A100 são alimentadas por GPUs NVIDIA Ampere A100, a sucessora das GPUs Tesla V100. Você pode aproveitar essas GPUs atualizadas para cargas de trabalho HPC tradicionais, como modelagem de reservatório, sequenciamento de DNA, análise de proteínas, simulações de Monte Carlo e outros.
Tamanho | vCPU | Memória: GiB | Armazenamento temporário (GiB) | Discos de dados máximos | GPU | GiB de memória GPU | NICs máximos |
---|---|---|---|---|---|---|---|
Standard_NC24ads_A100_v4 | 24 | 220 | 1123 | 12 | 1 | 80 | 2 |
Standard_NC48ads_A100_v4 | 48 | 440 | 2246 | 24 | 2 | 160 | 4 |
Tamanho | vCPU | Memória: GiB | Armazenamento temporário (GiB) | Discos de dados máximos | GPU | GiB de memória GPU | NICs máximos |
---|---|---|---|---|---|---|---|
Standard_NC24ads_L40S_v4 | 24 | 220 | 1123 | 8 | 1 | 80 | 2 |
Standard_NC48ads_L40S_v4 | 48 | 440 | 2246 | 16 | 2 | 160 | 4 |
- GPU deve ser um destes SKUs: AMD MI-25, Nvidia V100 (e variantes), Nvidia T4.
- Número de GPUs por servidor suportado (1, 2, 3, 4). Os preferidos são: 1, 2 e 4.
- Todas as GPUs devem ter exatamente o mesmo SKU em toda a unidade de escala.
- Todas as quantidades de GPU por servidor devem ser as mesmas em toda a unidade de escala.
- O tamanho da partição da GPU (para AMD Mi25) precisa ser o mesmo em todas as VMs de GPU na unidade de escala.
O planejador de capacidade do Azure Stack Hub foi atualizado para dar suporte a configurações de GPU. Está acessível aqui.
O Azure Stack Hub agora oferece suporte à adição de GPUs a qualquer sistema existente. Para adicionar uma GPU, execute stop-azurestack
, execute o procedimento de stop-azurestack
, adicione GPUs e execute start-azurestack
até a conclusão. Se o sistema já tinha GPUs, todas as VMs de GPU criadas anteriormente devem ser stop-deallocated
reiniciadas.
As VMs de GPU passam por tempo de inatividade durante operações como patch e atualização (PnU) e substituição de hardware (FRU) do Azure Stack Hub. A tabela a seguir aborda o estado da VM conforme observado durante essas atividades e a ação manual que você pode fazer para disponibilizar essas VMs após a operação.
Operação | PnU - Atualização completa, atualização OEM | FRU |
---|---|---|
Estado da VM | Indisponível durante a atualização. Pode ser disponibilizado com operação manual. A VM está automaticamente online após a atualização. | Indisponível durante a FRU. Pode ser disponibilizado com operação manual. VM precisa ser trazida de volta após FRU |
Operação manual | Se a VM precisar ser disponibilizada durante a atualização, se houver partições GPU disponíveis, a VM poderá ser reiniciada a partir do portal clicando no botão Reiniciar . VM automaticamente volta após a atualização. | A VM não está disponível durante a FRU. Se houver GPUs disponíveis, a VM pode ser desalocada e reiniciada durante a FRU. Após a conclusão da FRU, a VM deve estar usando o botão Parar e, em seguida, reiniciada usando o botão Iniciar.stop-deallocated |
Os seguintes cmdlets do PowerShell podem ser usados para a instalação do driver:
$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
Dependendo do sistema operacional, do tipo e da conectividade da sua VM de GPU do Azure Stack Hub, você deve substituir esses valores pelas configurações abaixo.
A versão do driver convidado deve corresponder à versão do Azure Stack Hub, independentemente do estado de conectividade. Usar versões mais recentes não alinhadas com a versão do Azure Stack Hub pode causar problemas de usabilidade.
Versão do Azure Stack Hub | AMD Driver convidado |
---|---|
2206 e seguintes | 21.Q2-1, 20.Q4-1 |
2108 | 21.Q2-1, 20.Q4-1 |
2102 | 21.Q2-1, 20.Q4-1 |
Use o script do PowerShell na seção anterior com o tipo de driver apropriado para AMD. O artigo Install AMD GPU drivers on N-series VMs running Windows fornece instruções sobre como instalar o driver para o AMD Radeon Instinct MI25 dentro da VM habilitada para GPU-P NVv4, juntamente com etapas sobre como verificar a instalação do driver.
Como a extensão extrai o driver de um local na Internet, uma VM desconectada da rede externa não pode acessá-lo. Você pode baixar o driver da tabela anterior e fazer upload para uma conta de armazenamento em sua rede local acessível à VM.
Adicione o driver AMD a uma conta de armazenamento e especifique o URL dessa conta em Settings
. Essas configurações devem ser usadas no cmdlet Set-AzureRMVMExtension . Por exemplo:
$Settings = @{
"DriverURL" = <URL to driver in storage account>
}
Os drivers NVIDIA devem ser instalados dentro da máquina virtual para cargas de trabalho CUDA ou GRID usando a GPU.
Este cenário requer o uso de drivers GRID. Os drivers GRID podem ser baixados através do NVIDIA Application Hub, desde que você tenha as licenças necessárias. Os drivers GRID também exigem um servidor de licenças GRID com licenças GRID apropriadas antes de usar os drivers GRID na VM.
$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"
}
Os drivers CUDA não precisam de um servidor de licenças e não precisam de configurações modificadas.
Links para drivers NVIDIA CUDA podem ser obtidos usando o link: 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:
Você deve fazer referência a alguns URLs para suas configurações:
URL | Notas |
---|---|
PUBKEY_URL | O PUBKEY_URL é a chave pública para o repositório de drivers Nvidia, não para a VM Linux. É usado para instalar o driver para o Ubuntu. |
DRIVER_URL | DRIVER_URL é a URL para baixar as informações do repositório do driver Nvidia e é adicionada à lista de repositórios da VM Linux. |
Adicione os URLs às suas configurações.
$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"
}