Guia de migração para cargas de trabalho de computação de GPU no Azure

À medida que GPUs mais poderosas são disponibilizadas no marketplace e em datacenters Microsoft Azure, recomendamos reavaliar o desempenho de suas cargas de trabalho e considerar a migração para GPUs mais recentes.

Pelo mesmo motivo, além de manter uma oferta de serviço confiável e de alta qualidade, o Azure desativa periodicamente o hardware que alimenta os tamanhos de VM mais antigos. O primeiro grupo de produtos de GPU a ser desativado no Azure são as VMs originais das séries NC, NC v2 e ND, alimentadas pelos aceleradores de GPU de datacenter NVIDIA Tesla K80, P100 e P40, respectivamente. Esses produtos, bem como as VMs mais antigas dessas séries lançadas em 2016, serão desativados em 31 de agosto de 2023.

Desde então, as GPUs fizeram avanços incríveis junto com todo o aprendizado profundo e o setor de HPC, normalmente excedendo uma duplicação no desempenho entre gerações. Desde o lançamento das GPUs NVIDIA K80, P40 e P100, o Azure enviou várias gerações e categorias mais recentes de produtos de VM voltados para computação acelerada por GPU e IA, com base nas GPUs T4, V100 e A100 da NVIDIA e diferenciadas por recursos opcionais, como malhas de interconexão baseadas em InfiniBand. Essas são todas as opções que incentivamos os clientes a explorar como caminhos de migração.

Na maioria dos casos, o aumento significativo no desempenho oferecido por gerações mais recentes de GPUs reduz o TCO geral diminuindo a duração do trabalho, para trabalhos com capacidade de intermitência ou reduzindo a quantidade geral de VMs habilitadas para GPU necessárias para cobrir uma demanda de tamanho fixo para recursos de computação, mesmo que os custos por hora de GPU possam variar. Além desses benefícios, os clientes podem melhorar o tempo de solução por meio de VMs de melhor desempenho e melhorar a saúde e a capacidade de suporte de sua solução adotando versões mais recentes de software, runtime CUDA e driver.

Migração vs. Otimização

O Azure reconhece que os clientes têm inúmeros requisitos que podem determinar a seleção de um produto de VM de GPU específico, incluindo considerações de arquitetura de GPU, interconexões, TCO, tempo de solução e disponibilidade regional com base em requisitos de latência ou localidade de conformidade, e algumas delas até mesmo mudam ao longo do tempo.

Ao mesmo tempo, a aceleração de GPU é uma área nova e em rápida evolução.

Portanto, não há diretrizes uniformes para essa área de produto, e uma migração é o momento perfeito para reavaliar alterações potencialmente significativas em uma carga de trabalho, como migrar de um modelo de implantação em grupo para uma única VM de 8 GPUs grande ou vice-versa, aproveitar tipos de dados de precisão reduzidos, adotar recursos como GPU de várias instâncias e muito mais.

Esses tipos de considerações, quando o contexto de um desempenho de GPU já significativo por geração aumenta, em que um recurso como a adição de TensorCores pode aumentar o desempenho por uma ordem de magnitude, são extremamente específicos da carga de trabalho.

Combinar a migração com redefinição de arquitetura do aplicativo pode gerar um grande valor e melhoria no custo e no tempo de solução.

No entanto, esses tipos de melhorias estão além do escopo deste documento, que tem como objetivo se concentrar em classes de equivalência direta para cargas de trabalho generalizadas que, atualmente, podem ser executadas pelos clientes, a fim de identificar as opções de VM mais semelhantes em preço e desempenho por GPU para famílias de VMs existentes que estão passando por reforma.

Portanto, este documento presume que o usuário pode não ter nenhum insight ou controle sobre propriedades específicas da carga de trabalho, como o número de instâncias de VMs necessárias, GPUs, interconexões e muito mais.

VMs da série NC com GPUs NVIDIA K80

As VMs da série NC (v1) são o tipo de VM de computação acelerada por GPU mais antigo do Azure, alimentadas por 1 a 4 aceleradores de GPU de datacenter NVIDIA Tesla K80 emparelhados com processadores Intel Xeon E5-2690 v3 (Haswell). Depois de ser um tipo de VM principal para aplicativos de IA, ML e HPC exigentes, eles permaneceram uma opção popular no final do ciclo de vida do produto (especialmente por meio de preços promocionais da série NC) para usuários que preferiam ter um custo absoluto muito baixo por hora de GPU do que GPUs com maior taxa de transferência por dólar.

Hoje, considerando o desempenho de computação relativamente baixo da plataforma de GPU NVIDIA K80, em comparação com a série VM que apresenta GPUs mais novas, um caso de uso popular para a série NC é cargas de trabalho de inferência e análise em tempo real, em que uma VM acelerada deve estar disponível em um estado estável para atender à solicitação de aplicativos conforme eles chegam. Nesses casos, o tamanho do lote ou volume de solicitações pode ser insuficiente para se beneficiar de GPUs com melhor desempenho. As VMs NC também são populares para desenvolvedores e alunos que aprendem, desenvolvem ou experimentam aceleração de GPU, que precisam de um destino de implantação CUDA baseado em nuvem barato no qual iterar que não precisa executar para níveis de produção.

Em geral, os clientes da série NC devem considerar a migração direta dos tamanhos NC para os tamanhos NC T4 v3, a nova plataforma acelerada por GPU do Azure para cargas de trabalho leves alimentada pelas GPUs NVIDIA Tesla T4.

Tamanho atual da VM Tamanho da VM de destino Diferença na especificação
Standard_NC6
Standard_NC6_Promo
Standard_NC4as_T4_v3
ou
Standard_NC8as_T4
CPU: Intel Haswell vs. AMD Rome
Contagem de GPU: 1 (igual)
Contagem de GPU: 2 geração (igual)< br>GPU: NVIDIA Keppler vs. Turing (+2 gerações, ~2x FP32 FLOPs)
Memória de GPU (GiB por GPU): 16 (+4)
vCPU: 4 (-2) ou 8 (+2)
Memória GiB: 16 (-40) ou 56 (igual)
GIB de armazenamento temporário (SSD): 180 (-160) ou 360 (+20)
Discos de dados máximos: 8 (-4) ou 16 (+4)
Rede Acelerada: Sim (+)
Armazenamento Premium: Sim (+)
Standard_NC12
Standard_NC12_Promo
Standard_NC16as_T4_v3 CPU: Intel Haswell vs. AMD Rome
Contagem de GPU: 1 (-1)
Contagem de GPU: 2 geração (igual)< br>GPU: NVIDIA Keppler vs. Turing (+2 gerações, ~2x FP32 FLOPs)
Memória de GPU (GiB por GPU): 16 (+4)
vCPU: 16 (+4)
Memória GiB: 110 (-2)
GiB de armazenamento temporário (SSD): 360 (-320)
Discos de dados máximos: 48 (+16)
Rede Acelerada: Sim (+)
Armazenamento Premium: Sim (+)
Standard_NC24
Standard_NC24_Promo
Standard_NC64as_T4_v3* CPU: Intel Haswell vs. AMD Rome
Contagem de GPU: 4 (igual)
Contagem de GPU: 2 geração (igual)< br>GPU: NVIDIA Keppler vs. Turing (+2 gerações, ~2x FP32 FLOPs)
Memória de GPU (GiB por GPU): 16 (+4)
vCPU: 64 (+40)
GiB de memória: 440 (+216)
GiB de armazenamento temporário (SSD): 2880 (+1440)
Discos de dados máximos: 32 (-32)
Rede Acelerada: Sim (+)
Armazenamento Premium: Sim (+)
Standard_NC24r
Standard_NC24r_Promo
Standard_NC64as_T4_v3* CPU: Intel Haswell vs. AMD Rome
Contagem de GPU: 4 (igual)
Contagem de GPU: 2 geração (igual)< br>GPU: NVIDIA Keppler vs. Turing (+2 gerações, ~2x FP32 FLOPs)
Memória de GPU (GiB por GPU): 16 (+4)
vCPU: 64 (+40)
GiB de memória: 440 (+216)
GiB de armazenamento temporário (SSD): 2880 (+1440)
Discos de dados máximos: 32 (-32)
Rede Acelerada: Sim (+)
Armazenamento Premium: Sim (+)
Interconexão de InfiniBand: Não

VMs da série NC v2 com GPUs NVIDIA Tesla P100

As máquinas virtuais da série NC v2 são uma plataforma principal originalmente projetada para cargas de trabalho AI e de aprendizado profundo. Elas ofereciam excelente desempenho para treinamento de aprendizado profundo, com desempenho por GPU aproximadamente 2x o da série NC original e são alimentadas por CPUs NVIDIA Tesla P100 e Intel Xeon E5-2690 v4 (Broadwell). Assim como a série NC e a série ND, a série NC v2 oferece uma configuração com uma baixa latência secundária, uma rede com alta taxa de transferência por meio de RDMA e a conectividade InfiniBand, permitindo executar trabalhos de grande escala que abrangem várias GPUs.

Em geral, os clientes da série NCv2 devem considerar a migração direta para os tamanhos NC A100 v4, a nova plataforma acelerada por GPU do Azure, alimentada pelas GPUs NVIDIA Ampere A100 PCIe.

Tamanho atual da VM Tamanho da VM de destino Diferença na especificação
Standard_NC6s_v2 Standard_NC24ads_A100_v4 CPU: Intel Broadwell vs. AMD Milan
Contagem de GPU: 1 (igual)
Geração da GPU: NVIDIA Pascal vs. Ampere (+2 gerações)
Memória de GPU (GiB por GPU): 80 (+64)
vCPU: 24 (+18)
Memória em GiB: 220 (+108)
Armazenamento temporário (SSD) em GiB: 1.123 (+387)
Discos de dados máximos: 12 (igual)
Rede Acelerada: Sim (+)
Armazenamento Premium: Sim (+)
Standard_NC12s_v2 Standard_NC48ads_A100_v4 CPU: Intel Broadwell vs. AMD Milan
Contagem de GPU: 2 (igual)
Geração da GPU: NVIDIA Pascal vs. Ampere (+2 gerações)
Memória de GPU (GiB por GPU): 80 (+64)
vCPU: 48 (+36)
GiB de memória: 440 (+216)
Armazenamento temporário (SSD) em GiB: 2.246 (+772)
Discos de dados máximos: 24 (igual)
Rede Acelerada: Sim (+)
Armazenamento Premium: Sim (+)
Standard_NC24s_v2 Standard_NC96ads_A100_v4 CPU: Intel Broadwell vs. AMD Milan
Contagem de GPU: 4 (igual)
Geração da GPU: NVIDIA Pascal vs. Ampere (+2 gerações)
Memória de GPU (GiB por GPU): 80 (+64)
vCPU: 96 (+72)
Memória em GiB: 880 (+432)
Armazenamento temporário (SSD) em GiB: 4.492 (+1544)
Discos de dados máximos: 32 (igual)
Rede Acelerada: Sim (+)
Armazenamento Premium: Sim (+)
Standard_NC24rs_v2 Standard_NC96ads_A100_v4 CPU: Intel Broadwell vs. AMD Milan
Contagem de GPU: 4 (Igual)
Geração da GPU: NVIDIA Pascal vs. Ampere (+2 gerações)
Memória de GPU (GiB por GPU): 80 (+64)
vCPU: 96 (+72)
Memória em GiB: 880 (+432)
Armazenamento temporário (SSD) em GiB: 4.492 (+1544)
Discos de dados máximos: 32 (igual)
Rede Acelerada: Sim (+)
Armazenamento Premium: Sim (+)
Interconexão de InfiniBand: Não (-)

VMs da série ND com GPUs NVIDIA Tesla P40

As máquinas virtuais da série ND são uma plataforma de alcance médio originalmente projetada para cargas de trabalho AI e de aprendizado profundo. Eles ofereceram um excelente desempenho para inferência em lote por meio de operações de ponto flutuante de precisão simples aprimoradas em relação aos seus antecessores e são alimentados por GPUs NVIDIA Tesla P40 e CPUs Intel Xeon E5-2690 v4 (Broadwell). Assim como a série NC e a série NC v2, a série ND oferece uma configuração com uma baixa latência secundária, uma rede com alta taxa de transferência por meio de RDMA e a conectividade InfiniBand, permitindo executar trabalhos de grande escala que abrangem várias GPUs.

Tamanho atual da VM Tamanho da VM de destino Diferença na especificação
Standard_ND6 Standard_NC4as_T4_v3
ou
Standard_NC8as_T4_v3
CPU: Intel Broadwell vs. AMD Rome
Contagem de GPU: 1 (igual)
Geração de GPU: NVIDIA Pascal vs. Turing (+1 geração)
Memória de GPU (GiB por GPU): 16 (+8)
vCPU: 4 (-2) ou 8 (+2)
Memória GiB: 16 (-40) ou 56 (-56)
GIB de armazenamento temporário (SSD): 180 (-552) ou 360 (+372)
Discos de dados máximos: 8 (-4) ou 16 (+4)
Rede Acelerada: Sim (+)
Armazenamento Premium: Sim (+)
Standard_ND12 Standard_NC16as_T4_v3 CPU: Intel Broadwell vs. AMD Rome
Contagem de GPU: 1 (-1)
Geração de GPU: NVIDIA Pascal vs. Turing (+1 gerações)
Memória de GPU (GiB por GPU): 16 (+8)
vCPU: 16 (+4)
GiB de memória: 110 (-114)
GiB de armazenamento temporário (SSD): 360 (-1.114)
Discos de dados máximos: 48 (+16)
Rede Acelerada: Sim (+)
Armazenamento Premium: Sim (+)
Standard_ND24 Standard_NC64as_T4_v3* CPU: Intel Broadwell vs. AMD Rome
Contagem de GPU: 4 (igual)
Geração de GPU: NVIDIA Pascal vs. Turing (+1 gerações)
Memória de GPU (GiB por GPU): 16 (+8)
vCPU: 64 (+40)
Memória GiB: 440 (igual)
GIB de armazenamento temporário (SSD): 2880 (igual)
Discos de dados máximos: 32 (igual)
Rede Acelerada: Sim (+)
Armazenamento Premium: Sim (+)
Standard_ND24r Standard_ND96amsr_A100_v4 CPU: Intel Broadwell vs. AMD Rome
Contagem de GPUs: 8 (+4)
Geração da GPU: NVIDIA Pascal vs. Ampere (+2 gerações)
Memória de GPU (GiB por GPU): 80 (+56)
vCPU: 96 (+72)
Memória em GiB: 1900 (+1452)
Armazenamento temporário (SSD) em GiB: 6.400 (+3.452)
Discos de dados máximos: 32 (igual)
Rede Acelerada: Sim (+)
Armazenamento Premium: Sim (+)
Interconexão de InfiniBand: Sim (igual)

Etapas da migração

Alterações gerais

  1. Escolha uma série e um tamanho para migração. Aproveite a calculadora de preço para futuros insights.

  2. Obter cota para a série de VMs de destino

  3. Redimensione o tamano da VM da série N* para o tamanho de destino. Esse também pode ser um bom momento para atualizar o sistema operacional usado por sua imagem de máquina virtual ou adotar uma das imagens do HPC com drivers pré-instalados como ponto de partida.

    Importante

    Sua imagem de VM pode ter sido produzida com uma versão mais antiga do runtime do CUDA, driver NVIDIA e (se aplicável, somente para tamanhos habilitados para RDMA) drivers OFED Mellanox do que a nova série de VM de GPU requer, que pode ser atualizada seguindo as instruções na documentação do Azure.

Alterações de quebra

Selecionar o tamanho de destino para a migração

Depois de avaliar o uso atual, decida de que tipo de VM de GPU você precisa. Dependendo dos requisitos de carga de trabalho, você tem algumas opções diferentes.

Observação

Uma melhor prática é selecionar um tamanho de VM com base no custo e no desempenho. As recomendações neste guia se baseiam em uma comparação de uso geral, um para um das métricas de desempenho e a mais próxima de uma combinação em outra série de VMs. Antes de decidir sobre o tamanho correto, obtenha uma comparação de custo usando a calculadora de preço do Azure.

Importante

Todos os tamanhos herdados das séries NC, NC v2 e ND estão disponíveis em tamanhos de várias GPUs, incluindo tamanhos de 4 GPUs com e sem interconexão infiniBand para cargas de trabalho de expansão, firmemente acopladas que exigem mais potência de computação do que uma única VM de 4 GPUs ou uma única GPU K80, P40 ou P100 pode fornecer, respectivamente. Embora as recomendações acima ofereçam um caminho simples direto, os usuários desses tamanhos devem considerar atingir suas metas de desempenho com uma série de VMs baseadas em GPU NVIDIA V100 mais avançada, como a série NC v3 e a série ND v2, que normalmente permitem o mesmo nível de desempenho de carga de trabalho a custos mais baixos e com melhor capacidade de gerenciamento, fornecendo um desempenho consideravelmente maior por GPU e por VM antes que as configurações de várias GPUs e vários nós sejam necessárias, respectivamente.

Obter cota para a família de VMs de destino

Siga o guia para solicitar um aumento na cota de vCPU por família de VM. Selecione o tamanho da VM de destino que você selecionou para migração.

Redimensionar a máquina virtual atual

Você pode redimensionar a máquina virtual.

Próximas etapas

Para ver uma lista completa dos tamanhos de máquinas virtuais habilitadas para GPU, confira GPU – visão geral de computação acelerada