Udostępnij za pośrednictwem


Obrazy maszyn wirtualnych HPC platformy Azure

Dotyczy: ✔️ Maszyny wirtualne z systemem Linux — elastyczne zestawy ✔️ ✔️ skalowania jednolite zestawy skalowania

W tym artykule przedstawiono kilka informacji na temat obrazów maszyn wirtualnych HPC, które mają być używane do uruchamiania maszyn wirtualnych serii H z włączoną obsługą technologii InfiniBand i procesorów GPU z serii N.

Zespół hpc platformy Azure oferuje zoptymalizowane i wstępnie skonfigurowane obrazy maszyn wirtualnych z systemem Linux dla obciążeń HPC i AI. Te obrazy maszyn wirtualnych to:

  • Na podstawie nadrzędnych obrazów maszyn wirtualnych z systemem Ubuntu i AlmaLinux.
  • Wstępnie skonfigurowane za pomocą sterownika NVIDIA Mellanox OFED dla infiniBand, sterowników procesora GPU FIRMY NVIDIA, popularnych bibliotek MPI, biblioteki HPC dostrojonych dostawców i zalecanych optymalizacji wydajności.
  • Uwzględnienie optymalizacji i zalecanych konfiguracji w celu zapewnienia optymalnej wydajności, spójności i niezawodności.

Dostępność na platformie Azure

Obrazy HPC można używać podczas tworzenia maszyny wirtualnej z witryny Azure Marketplace lub interfejsu wiersza polecenia platformy Azure. W przypadku innych metod wdrażania zapoznaj się z sekcją Wdrażanie obrazów maszyn wirtualnych HPC.

Azure Marketplace

Ubuntu HPC Wyszukaj według wydawcy Microsoft-DSVMlub AlmaLinux HPC wydawcy AlmaLinux.

Interfejs wiersza polecenia platformy Azure

Uruchom następujące polecenia, aby znaleźć adresy URL obrazów obrazów HPC:

Ubuntu-HPC

az vm image list --publisher microsoft-dsvm --offer ubuntu-hpc --output table --all

Wszystkie obrazy obsługują maszyny wirtualne generacji 2.

AlmaLinux-HPC

az vm image list --publisher almalinux --offer almalinux-hpc --output table --all

Wszystkie obrazy obsługują maszyny wirtualne 1. generacji i 2. generacji.

Obsługiwane rozmiary maszyn wirtualnych

Obrazy maszyn wirtualnych HPC obsługują następujące rozmiary maszyn wirtualnych:

  • Standard_HB60rs
  • Standard_HB120rs_v2
  • Standard_HB120rs_v3
  • Standard_HB120rs_v4
  • Standard_HC44rs
  • Standard_ND40rs_v2
  • Standard_ND96asr_v4
  • Standard_ND96amsr_A100_v4
  • Standard_ND96isr_H100_v5

Zapoznaj się z tematem Rozmiary maszyn wirtualnych platformy Azure, aby zapoznać się z najnowszą macierzą obsługi rozmiarów maszyn wirtualnych serii H i N.

Zainstalowane pakiety oprogramowania

  • Mellanox OFED 24.01-0.3.3.1
  • Wstępnie skonfigurowany interfejs IPoIB (IP-over-InfiniBand)
  • Popularne biblioteki MPI oparte na protokole InfiniBand
    • HPC-X v2.18 z/bez PMIx-4
    • Intel MPI 2021.12.0
    • MVAPICH2 2.3.7-1
    • OpenMPI 5.0.2 z pmIx-4
  • Środowiska uruchomieniowe komunikacji
    • Libfabric
    • OpenUCX
    • NCCL 2.21.5-1
    • Wtyczka NCCL RDMA Sharp
  • Zoptymalizowane biblioteki
    • AMD Optymalizowanie języków C/C++ i Fortran Compilers 4.0.0-1
    • Intel MKL 2024.0.0.49673
  • Sterowniki procesora GPU
    • Sterownik procesora GPU FIRMY NVIDIA 535.161.08
    • Pamięć równorzędna NVIDIA (PROCESOR GPU Direct RDMA)
    • Menedżer sieci szkieletowej NVIDIA
    • CUDA 12.4
  • GDRCopy 2.3
  • Data Center GPU Manager 3.3.3
  • Narzędzie diagnostyki HPC platformy Azure
  • Dostosowania oparte na jednostkach SKU
    • Pliki topologii
    • Konfiguracja listy NCCL
  • Moby 24.0.7-ubuntu22.04u1
  • Kontener NVIDIA Docker 24.0.7-1
  • Azure Managed Lustre 2.15.4-42-gd6d405d
  • Moneo v0.3.5
  • Testy kondycji usługi Azure HPC w wersji 0.4.2

Zainstalowany indeks wersji na obrazie maszyny wirtualnej znajduje się w tej lokalizacji: /opt/azurehpc/component_versions.txt.

Biblioteki MPI i pakiety oprogramowania są dostępne jako moduły środowiska. Aby załadować bibliotekę/pakiet MPI, uruchom polecenie:

module load mpi/<mpi-library-name>
module load <package-name>

Konfiguracja i optymalizacja

Zapoznaj się z repozytorium azhpc-images w witrynie GitHub, aby uzyskać najnowsze informacje na temat pakietów i konfiguracji zawartych w każdym obrazie maszyny wirtualnej. Dołączone konfiguracje są oparte na zaleceniach dotyczących optymalizacji od dostawców i partnerów, a także na podstawie typowych obciążeń HPC i praktyk użycia w tradycyjnych systemach HPC.

  • Agent systemu Linux platformy Azure (WAAgent)

    • Ogranicz użycie procesora CPU/pamięci przez agenta maszyny wirtualnej działającego na każdej maszynie wirtualnej z systemem Linux platformy Azure.
    • Opcjonalnie rozważ wyłączenie narzędzia waagent na początku skryptu zadania i włączenie go z powrotem na końcu w przypadku obciążeń wrażliwych na procesor w następujący sposób:
    sudo systemctl stop waagent
    <HPC job>
    sudo systemctl restart waagent
    
  • Wyższe limity pamięci

    • Ustaw limit maksymalnej liczby zablokowanych pamięci na nieograniczoną
    • Ustawianie limitu otwartych plików na 65535
  • Tryb odzyskiwania strefy

    • Ustaw zone_reclaim_mode na 1
  • Wyłączanie demona zapory w celu ułatwienia uruchamiania zadań MPI

Wdrażanie obrazów maszyn wirtualnych HPC

Jak pokazano, obrazy maszyn wirtualnych HPC są dostępne w witrynie Azure Marketplace i interfejsie wiersza polecenia platformy Azure. Można je wdrażać za pośrednictwem różnych pojazdów wdrożeniowych na platformie Azure (Azure CycleCloud, Azure Batch, szablonów usługi ARM itp.). Skrypty usługi AzureHPC umożliwiają łatwe wdrażanie klastra HPC przy użyciu tych obrazów.