Descrição geral das máquinas virtuais da série HB
Aplica-se a: ✔️ VMs ✔️ Linux VMs ✔️ do Windows Conjuntos ✔️ de escala flexíveis Conjuntos de balanças uniformes
A maximização do desempenho de aplicativos de computação de alto desempenho (HPC) no AMD EPYC requer uma abordagem cuidadosa, memória, localidade e posicionamento do processo. Abaixo, descrevemos a arquitetura AMD EPYC e nossa implementação dela no Azure para aplicativos HPC. Usamos o termo "pNUMA" para nos referirmos a um domínio físico NUMA, e "vNUMA" para nos referirmos a um domínio NUMA virtualizado.
Fisicamente, um servidor da série HB tem 2 * CPUs EPYC 7551 de 32 núcleos para um total de 64 núcleos físicos. Esses 64 núcleos são divididos em 16 domínios pNUMA (8 por soquete), cada um dos quais é de quatro núcleos e conhecido como "Complexo de CPU" (ou "CCX"). Cada CCX tem seu próprio cache L3, que é como um sistema operacional vê um limite pNUMA/vNUMA. Um par de CCXs adjacentes compartilha o acesso a dois canais de DRAM física (32 GB de DRAM em servidores da série HB).
Para fornecer espaço para o hipervisor do Azure operar sem interferir com a VM, reservamos o domínio físico pNUMA 0 (o primeiro CCX). Em seguida, atribuímos domínios pNUMA de 1 a 15 (as unidades CCX restantes) para a VM. A VM vê:
(15 vNUMA domains) * (4 cores/vNUMA) = 60
núcleos por VM
A VM, em si, não sabe que o pNUMA 0 não lhe foi dado. A VM entende pNUMA 1-15 como vNUMA 0-14, com 7 vNUMA no vSocket 0 e 8 vNUMA no vSocket 1. Embora isso seja assimétrico, seu sistema operacional deve inicializar e operar normalmente. Mais adiante neste guia, instruiremos a melhor forma de executar aplicativos MPI neste layout NUMA assimétrico.
A fixação de processo funcionará em VMs da série HB porque expomos o silício subjacente como está para a VM convidada. Recomendamos vivamente a fixação do processo para um desempenho e consistência ideais.
O diagrama a seguir mostra a segregação de núcleos reservados para o Hipervisor do Azure e a VM da série HB.
Especificações de hardware
Especificações de hardware | VM série HB |
---|---|
Núcleos | 60 (SMT desativado) |
CPU | AMD EPYC 7551 |
Freqüência da CPU (não-AVX) | ~2,55 GHz (simples + todos os núcleos) |
Memória | 4 GB/núcleo (240 GB no total) |
Disco Local | SSD de 700 GB |
Infiniband | 100 Gb EDR Mellanox ConnectX-5 |
Rede | Ethernet de 50 Gb (40 Gb utilizável) SmartNIC de segunda geração do Azure |
Especificações de software
Especificações de software | VM série HB |
---|---|
Tamanho máximo do trabalho MPI | 18000 núcleos (300 VMs em um único conjunto de escala de máquina virtual com singlePlacementGroup=true) |
Suporte MPI | HPC-X, Intel MPI, OpenMPI, MVAPICH2, MPICH, Plataforma MPI |
Estruturas adicionais | UCX, libfabric, PGAS |
Suporte de armazenamento do Azure | Discos Standard e Premium (máximo 4 discos) |
Suporte de SO para SRIOV RDMA | RHEL 7.6+, Ubuntu 18.04+, SLES 15.4, WinServer 2016+ |
Suporte ao Orchestrator | CycleCloud, Batch, AKS; Opções de configuração de cluster |
Importante
Este documento faz referência a uma versão de lançamento do Linux que está se aproximando ou em Fim da Vida Útil (EOL). Por favor, considere atualizar para uma versão mais atual.
Próximos passos
- Saiba mais sobre a arquitetura AMD EPYC e as arquiteturas multichip. Para obter informações mais detalhadas, consulte o Guia de ajuste de HPC para processadores AMD EPYC.
- Leia sobre os anúncios mais recentes, exemplos de carga de trabalho HPC e resultados de desempenho nos Blogs da Comunidade de Tecnologia de Computação do Azure.
- Para obter uma exibição de arquitetura de nível superior da execução de cargas de trabalho HPC, consulte Computação de alto desempenho (HPC) no Azure.