Imágenes de VM de HPC de Azure
Se aplica a: ✔️ Máquinas virtuales Linux ✔️ Conjuntos de escalado flexibles ✔️ Conjuntos de escalado uniformes
En este artículo se comparte información sobre las imágenes de máquina virtual de HPC que se usarán para iniciar máquinas virtuales de la serie H habilitadas para InfiniBand y las máquinas virtuales de la serie N habilitadas para GPU.
El equipo de Azure HPC ofrece imágenes de máquina virtual Linux optimizadas y preconfiguradas para cargas de trabajo de HPC e IA. Estas imágenes de máquina virtual son:
- Basadas en las imágenes de máquina virtual de Ubuntu y AlmaLinux marketplace ascendentes.
- Preconfiguradas con el controlador NVIDIA Mellanox OFED para InfiniBand, controladores de GPU de NVIDIA, bibliotecas de MPI populares, bibliotecas de HPC optimizadas por el proveedor y optimizaciones de rendimiento recomendadas.
- Incluyen optimizaciones y configuraciones recomendadas para ofrecer un rendimiento, coherencia y confiabilidad óptimos.
Disponibilidad en Azure
Puede usar las imágenes de HPC al crear una máquina virtual desde Azure Marketplace o la CLI de Azure. Para ver otros métodos de implementación, consulte la sección implementación de imágenes de máquina virtual de HPC.
Azure Marketplace
Busque Ubuntu HPC
por el editor Microsoft-DSVM
, o AlmaLinux HPC
por el editor AlmaLinux
.
CLI de Azure
Ejecute los siguientes comandos para buscar los URN de imagen de las imágenes de HPC:
Ubuntu-HPC
az vm image list --publisher microsoft-dsvm --offer ubuntu-hpc --output table --all
Todas las imágenes admiten máquinas virtuales gen 2.
AlmaLinux-HPC
az vm image list --publisher almalinux --offer almalinux-hpc --output table --all
Todas las imágenes admiten máquinas virtuales Gen 1 y Gen 2.
Tamaños de máquinas virtuales que se admiten
Las imágenes de máquina virtual de HPC admiten los siguientes tamaños de máquina virtual:
- 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
Consulte Tamaños de máquina virtual de Azure para obtener la matriz de compatibilidad más reciente de tamaño de máquina virtual de la serie H y N.
Paquetes de software instalados
- Mellanox OFED 24.01-0.3.3.1
- IPoIB preconfigurado (IP sobre InfiniBand)
- Bibliotecas MPI populares basadas en InfiniBand
- HPC-X v2.18 con/sin PMIx-4
- Intel MPI 2021.12.0
- MVAPICH2 2.3.7-1
- OpenMPI 5.0.2 con PMIx-4
- Entornos de ejecución de comunicación
- Libfabric
- OpenUCX
- NCCL 2.21.5-1
- NCCL RDMA Sharp Plugin
- Bibliotecas optimizadas
- AMD Optimizing C/C++ y Fortran Compilers 4.0.0-1
- Intel MKL 2024.0.0.49673
- Controladores de GPU
- Controlador de GPU NVIDIA 535.161.08
- Memoria del mismo nivel de NVIDIA (RDMA directo de GPU)
- NVIDIA Fabric Manager
- CUDA 12.4
- GDRCopy 2.3
- Data Center GPU Manager 3.3.3
- Herramienta de diagnóstico de AZURE HPC
- Personalizaciones basadas en SKU
- Archivos de topología
- Configuración de NCCL
- Moby 24.0.7-ubuntu22.04u1
- NVIDIA Docker container 24.0.7-1
- Azure Managed Lustre 2.15.4-42-gd6d405d
- Moneo v0.3.5
- Comprobaciones de estado de Azure HPC v0.4.2
Un índice de versión instalado dentro de la imagen de máquina virtual se encuentra en esta ubicación: /opt/azurehpc/component_versions.txt
.
Las bibliotecas de MPI y los paquetes de software están disponibles como módulos de entorno. Para cargar una biblioteca o un paquete de MPI, ejecute:
module load mpi/<mpi-library-name>
module load <package-name>
Configuración y optimización
Consulte el repositorio azhpc-images en GitHub para obtener los detalles más recientes sobre qué paquetes y configuración se incluyen en cada imagen de máquina virtual. Las configuraciones incluidas se basan en recomendaciones de optimización de proveedores y asociados, así como aprendizajes de cargas de trabajo de HPC comunes y prácticas de uso en sistemas HPC tradicionales.
Agente de Linux de Azure (WAAgent)
- Limite el uso de waagent (agente de máquina virtual que se ejecuta en cada máquina virtual Linux de Azure) de los recursos de CPU y memoria.
- Opcionalmente, considere la posibilidad de deshabilitar waagent al principio del script de trabajo y habilitarlo de nuevo al final, para cargas de trabajo sensibles a la CPU como se indica a continuación:
sudo systemctl stop waagent <HPC job> sudo systemctl restart waagent
Límites de memoria superiores
- Establecer el límite máximo de memoria bloqueada en ilimitado
- Establecer el límite de archivos abiertos en 65535
Modo de reclamación de zona
- Establezca zone_reclaim_mode en 1
Deshabilitación del demonio de firewall para ayudar a los iniciadores de trabajos de MPI
Implementación de imágenes de máquina virtual de HPC
Como se muestra, las imágenes de máquina virtual de HPC están disponibles en Azure Marketplace y la CLI de Azure. Se pueden implementar a través de una variedad de vehículos de implementación en Azure (Azure CycleCloud, Azure Batch, plantillas de ARM, etc.). Los scripts de AzureHPC proporcionan una manera sencilla de implementar rápidamente un clúster de HPC mediante estas imágenes.