Sdílet prostřednictvím


Osvědčené postupy pro používání virtuálních počítačů HB a HC

Přehled

Virtuální počítače řady H-series jsou nejnovější nabídky prostředí HPC v Azure. Virtuální počítače řady HB nabízejí 60jádrový procesor AMD EPYC optimalizovaný pro spouštění aplikací s vysokými požadavky na šířku pásma paměti, jako je explicitní analýza prvků, dynamika tekutin a modelování počasí. Virtuální počítače řady HC mají 44jádrový procesory Intel Xeon Skylake a jsou optimalizované pro aplikace vyžadující náročné výpočty procesoru, jako je molekulární dynamics a implicitní analýza konečných prvků. Virtuální počítače HB a HC mají 100 Gb/s EDR InfiniBand a podporují nejnovější typy a verze MPI. Průvodce škálováním aplikací HPC obsahuje další informace o tom, jak škálovat aplikace HPC na virtuálních počítačích HB a HC.

Azure CycleCloud podporuje nové virtuální počítače řady H-series, ale pro nejlepší prostředí a výkon postupujte podle pokynů a osvědčených postupů na této stránce.

Obrázek Marketplace s CentOS 7.6 HPC

Image CentOS 7.6 HPC Marketplace obsahuje všechny ovladače, které umožňují rozhraní InfiniBand a předkompilované verze všech běžných variant MPI nainstalovaných v /opt. Podrobnosti o tom, co přesně obrázek nabízí, najdete v tomto blogovém příspěvku.

Pokud chcete při vytváření clusteru použít image CentOS 7.6 HPC, zaškrtněte políčko Vlastní image v parametru Upřesnit nastavení a zadejte hodnotu OpenLogic:CentOS-HPC:7.6:latest.

Obrázek HPC pro CentOS

Aby bylo možné podporovat starší řadu virtuálních počítačů H16r a udržovat hlavní uzly clusteru uzamčené na stejnou verzi CentOS, výchozí image Cycle CentOS 7 v rozevíracím seznamu Základní operační systém nasadí CentOS 7.4. I když je to pro většinu řad virtuálních počítačů v pořádku, virtuální počítače HB/HC vyžadují CentOS 7.6 nebo novější a jiný ovladač Mellanox.

Zakázání SElinuxu v CycleCloudu < 7.7.4

Ve výchozím nastavení SElinux považuje /root a /home za platné cesty pro domovské adresáře. Všichni uživatelé s domovskými adresáři mimo tyto cesty způsobí, že SElinux zablokuje použití SSH klíčů v domovském adresáři uživatele. Vclusterch Zatímco CycleCloud verze novější než 7.7.4 automaticky nastaví cestu /shared/home jako platný kontext SElinux homedir, starší verze to nepodporují. Abyste měli jistotu, že SSH funguje správně pro uživatele v clusteru, musíte v šabloně clusteru zakázat SElinux:

[[node defaults]]
    [[[configuration]]]
    cyclecloud.selinux.policy = permissive

Spouštění úloh MPI se slurmem

Úlohy MPI spuštěné na virtuálních počítačích HB/HC musí běžet ve stejné škálovací sadě virtuálních počítačů (VMSS). Pokud chcete zajistit správné umístění virtuálních počítačů automatického škálování pro úlohy MPI spuštěné pomocí slurmu, nezapomeňte v šabloně clusteru nastavit následující atribut:

[[nodearray execute]]
Azure.SingleScaleset = true
Azure.MaxScalesetSize = 300
Azure.Overprovision = true

Získání klíčů pro použití s OpenMPI a MPICH

Některé varianty MPI vyžadují, abyste při spuštění úlohy zadali PKEY InfiniBand. K určení klíče PKEY lze použít následující funkci Bash:

get_ib_pkey()
{
    key0=$(cat /sys/class/infiniband/mlx5_0/ports/1/pkeys/0)
    key1=$(cat /sys/class/infiniband/mlx5_0/ports/1/pkeys/1)

    if [ $(($key0 - $key1)) -gt 0 ]; then
        export IB_PKEY=$key0
    else
        export IB_PKEY=$key1
    fi

    export UCX_IB_PKEY=$(printf '0x%04x' "$(( $IB_PKEY & 0x0FFF ))")
}