Condividi tramite


Panoramica delle macchine virtuali serie HB

Si applica a: ✔️ macchine virtuali Linux ✔️ macchine virtuali Windows ✔️ set di scalabilità flessibili ✔️ set di scalabilità uniformi

Ottimizzare le prestazioni dell'applicazione HPC (High Performance Compute) in AMD EPYC richiede un approccio ponderato alla localizzazione della memoria e al posizionamento dei processi. Di seguito viene illustrata l'architettura AMD EPYC e la relativa implementazione in Azure per le applicazioni HPC. Il termine "pNUMA" viene usato per fare riferimento a un dominio NUMA fisico e "vNUMA" per fare riferimento a un dominio NUMA virtualizzato.

Fisicamente, un server serie HB è 2 * 32 core EPYC 7551 CPU per un totale di 64 core fisici. Questi 64 core sono suddivisi in 16 domini pNUMA (8 per socket), ognuno dei quali è quattro core e noto come "Complesso CPU" (o "CCX"). Ogni CCX ha una propria cache L3, ovvero il modo in cui un sistema operativo vede un limite pNUMA/vNUMA. Una coppia di condivisioni CCXs adiacenti accede a due canali di DRAM fisiche (32 GB di DRAM nei server serie HB).

Per consentire all'hypervisor di Azure di funzionare senza interferire con la macchina virtuale, si riserva il dominio pNUMA fisico 0 (il primo CCX). Verranno quindi assegnati domini pNUMA 1-15 (unità CCX rimanenti) per la macchina virtuale. La macchina virtuale vede:

(15 vNUMA domains) * (4 cores/vNUMA) = 60 core per macchina virtuale

La macchina virtuale stessa non sa che pNUMA 0 non è stato assegnato. La macchina virtuale riconosce pNUMA 1-15 come vNUMA 0-14, con 7 vNUMA in vSocket 0 e 8 vNUMA in vSocket 1. Anche nel caso di asimmetria, il sistema operativo dovrebbe avviarsi e funzionare normalmente. Più avanti in questa guida viene illustrato come eseguire le applicazioni MPI in questo layout NUMA asimmetrico.

L'aggiunta del processo funzionerà nelle macchine virtuali serie HB perché si espone il processore sottostante così come è alla macchina virtuale guest. È consigliabile aggiungere processi per ottenere prestazioni e uniformità ottimali.

Il diagramma seguente illustra la separazione dei core riservati per Hypervisor di Azure e la macchina virtuale serie HB.

Separazione dei core riservati per Hypervisor di Azure e macchina virtuale serie HB

Specifiche hardware

Specifiche hardware Macchina virtuale serie HB
Core 60 (SMT disabilitato)
CPU AMD EPYC 7551
Frequenza CPU (non AVX) ~2,55 GHz (singolo + tutti i core)
Memoria 4 GB/core (totale 240 GB)
Disco locale SSD 700 GB
InfiniBand 100 Gb EDR Mellanox ConnectX-5
Rete Ethernet 50 Gb (utilizzabile 40 GB) SmartNIC di seconda generazione di Azure

Specifiche software

Specifiche software Macchina virtuale serie HB
Dimensioni massime processo MPI 18000 core (300 macchine virtuali in un singolo set di scalabilità di macchine virtuali con singlePlacementGroup=true)
Supporto MPI HPC-X, Intel MPI, OpenMPI, MVAPICH2, MPICH, Platform MPI
Framework aggiuntivi UCX, libfabric, PGAS
Supporto di Archiviazione di Azure Dischi Standard e Premium (massimo 4 dischi)
Supporto del sistema operativo per SRIOV RDMA RHEL 7.6+, Ubuntu 18.04+, SLES 15.4, WinServer 2016+
Supporto di Orchestrator CycleCloud, Batch, servizio Azure Kubernetes; Opzioni di configurazione del cluster

Importante

Questo documento fa riferimento a una versione di Linux prossima o alla fine del servizio (EOL). Prendere in considerazione l'aggiornamento a una versione più recente.

Passaggi successivi