Konfigurera och optimera infiniBand-aktiverade virtuella datorer i H-serien och N-serien

Gäller för: ✔️ Virtuella Linux-datorer ✔️ Virtuella Windows-datorer ✔️ Flexibla skalningsuppsättningar ✔️ Enhetliga skalningsuppsättningar

Den här artikeln innehåller lite vägledning om hur du konfigurerar och optimerar infiniBand-aktiverade virtuella HB-serier och virtuella datorer i N-serien för HPC.

VM-avbildningar

På infiniBand-aktiverade virtuella datorer (IB) krävs lämpliga IB-drivrutiner för att aktivera RDMA.

Dessa VM-avbildningar baseras på basavbildningarna för virtuella datorer med Ubuntu och AlmaLinux Marketplace. Skript som används för att skapa dessa VM-avbildningar från deras basmarknadsplatsavbildningar är tillgängliga på lagringsplatsen azhpc-images.

På GPU-aktiverade virtuella datorer i N-serien krävs även lämpliga GPU-drivrutiner. Detta kan vara tillgängligt med följande metoder:

Beroende på arbetsbelastningarnas Linux-distribution och versionsbehov är Ubuntu-HPC VM-avbildningar och AlmaLinux-HPC VM-avbildningar på Marketplace det enklaste sättet att komma igång med HPC- och AI-arbetsbelastningar i Azure. Vi rekommenderar också att du skapar anpassade VM-avbildningar med arbetsbelastningsspecifik anpassning och konfiguration för återanvändning.

VM-storlekar som stöds av HPC VM-avbildningar

InfiniBand OFED-stöd

De senaste Azure HPC Marketplace-avbildningarna levereras med Mellanox OFED 5.1 och senare, som inte stöder ConnectX3-Pro InfiniBand-kort. ConnectX-3 Pro InfiniBand-kort kräver MOFED 4.9 LTS-version. Dessa VM-avbildningar stöder endast ConnextX-5- och nyare InfiniBand-kort. Följande stödmatris för VM-storlek för InfiniBand OFED i dessa HPC VM-avbildningar:

Stöd för GPU-drivrutin

För närvarande är det bara Ubuntu-HPC VM-avbildningar och AlmaLinux-HPC VM-avbildningar som är förkonfigurerade med NVIDIA GPU-drivrutiner och GPU-beräkningsprogramstack (CUDA, NCCL).

Stödmatrisen för VM-storlek för GPU-drivrutinerna i stödda HPC VM-avbildningar är följande:

  • N-serien: NDv2, NDv4 VM-storlekar stöds med NVIDIA GPU-drivrutiner och GPU Compute Software Stack (CUDA, NCCL).
  • De andra vm-storlekarna "NC" och "ND" i N-serien stöds med NVIDIA GPU-drivrutinerna.

Alla vm-storlekar i N-serien stöder virtuella Datorer i Gen 2, men vissa äldre har också stöd för virtuella Gen 1-datorer. Gen 2-stöd anges också med "01" i slutet av avbildningens URN eller version.

SR-IOV aktiverade virtuella datorer

Ubuntu-HPC VM-avbildningar

För SR-IOV aktiverade RDMA-kompatibla virtuella datorer är Ubuntu-HPC VM-avbildningsversionerna 18.04, 20.04 och 22.04 lämpliga. Dessa VM-avbildningar är förkonfigurerade med Mellanox OFED-drivrutiner för RDMA, NVIDIA GPU-drivrutiner, GPU-beräkningsprogramvara (CUDA, NCCL) och vanliga MPI-bibliotek och paket för vetenskaplig databehandling. Se stödmatrisen för VM-storlek.

AlmaLinux-HPC VM-avbildningar

För SR-IOV aktiverade RDMA-kompatibla virtuella datorer är AlmaLinux-HPC VM-avbildningar versionerna 8.5, 8.6 och 8.7 lämpliga. Dessa VM-avbildningar är förkonfigurerade med Mellanox OFED-drivrutiner för RDMA, NVIDIA GPU-drivrutiner, GPU-beräkningsprogramvara (CUDA, NCCL) och vanliga MPI-bibliotek och paket för vetenskaplig databehandling. Se stödmatrisen för VM-storlek.

Dessutom finns mer information om vad som ingår i Ubuntu-HPC VM-avbildningar och AlmaLinux-HPC VM-avbildningar och hur du distribuerar dem i Azure HPC VM-avbildningar.

RHEL VM-avbildningar

De grundläggande RHEL-baserade icke-HPC VM-avbildningarna på Marketplace kan konfigureras för användning på SR-IOV aktiverade virtuella RDMA-kompatibla datorer. Läs mer om att aktivera InfiniBand och konfigurera MPI på de virtuella datorerna.

Ubuntu VM-avbildningar

Basavbildningarna för Ubuntu Server 20.04 LTS och 22.04 LTS VM på Marketplace stöds för både SR-IOV och icke-SR-IOV VIRTUELLA RDMA-kompatibla datorer. Läs mer om att aktivera InfiniBand och konfigurera MPI på de virtuella datorerna.

  • Instruktioner för att aktivera InfiniBand på Ubuntu VM-avbildningarna finns i en TechCommunity-artikel.

Anmärkning

Mellanox OFED 5.1 och senare stöder inte ConnectX3-Pro InfiniBand-kort på SR-IOV aktiverade vm-storlekar i N-serien med FDR InfiniBand (t.ex. NCv3). Använd LTS Mellanox OFED version 4.9-0.1.7.0 eller äldre på virtuella datorer i N-serien med ConnectX3-Pro-kort. Mer information finns i Linux InfiniBand-drivrutiner.

Avbildningar av virtuella SUSE Linux Enterprise Server-datorer

SLES 12 SP3 för HPC, SLES 12 SP3 för HPC (Premium), SLES 12 SP1 för HPC, SLES 12 SP1 för HPC (Premium), SLES 12 SP4- och SLES 15 VM-avbildningar på Marketplace stöds. De här VM-avbildningarna är förinstallerade med Network Direct-drivrutinerna för RDMA (på icke-SR-IOV VM-storlekar) och Intel MPI version 5.1. Läs mer om hur du konfigurerar MPI på de virtuella datorerna.

Optimera virtuella datorer

Följande är några valfria optimeringsinställningar för bättre prestanda på den virtuella datorn.

Uppdatera LIS

Om det behövs för funktioner eller prestanda kan LIS-drivrutiner (Linux Integration Services) installeras eller uppdateras på operativsystemdistributioner som stöds, särskilt när du distribuerar med en anpassad avbildning eller en äldre os-version, till exempel RHEL 6.x eller tidigare version av 7.x.

wget https://aka.ms/lis
tar xzf lis
pushd LISISO
sudo ./upgrade.sh

Återta minne

Förbättra prestandan genom att automatiskt frigöra minne för att undvika fjärråtkomst till minnet.

sudo echo 1 >/proc/sys/vm/zone_reclaim_mode

Behåll beständigt minnesläge efter omstart av virtuell dator:

sudo echo "vm.zone_reclaim_mode = 1" >> /etc/sysctl.conf sysctl -p

Inaktivera brandvägg och SELinux

sudo systemctl stop iptables.service
sudo systemctl disable iptables.service
sudo systemctl mask firewalld
sudo systemctl stop firewalld.service
sudo systemctl disable firewalld.service
sudo iptables -nL
sudo sed -i -e's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

Inaktivera cpupower

sudo service cpupower status

Om det är aktiverat inaktiverar du det:

sudo service cpupower stop
sudo systemctl disable cpupower

Konfigurera WALinuxAgent

sudo sed -i -e 's/# OS.EnableRDMA=y/OS.EnableRDMA=y/g' /etc/waagent.conf

Alternativt kan WALinuxAgent inaktiveras innan du kör ett jobb och aktiveras efter jobbet för maximal tillgänglighet för virtuella datorer till HPC-arbetsbelastningen.

Nästa steg