Uso de instancias RDMA o GPU en grupos de Batch
Para ejecutar determinados trabajos de Batch, puede aprovechar los tamaños de máquina virtual de Azure diseñados para el cálculo a gran escala. Por ejemplo:
Para ejecutar Cargas de trabajo de MPI de varias instancias, elija serie HB, HC, NC o ND u otros tamaños que tengan una interfaz de red para el acceso directo a memoria remota (RDMA). Estos tamaños se conectan a una red de InfiniBand para la comunicación entre nodos, lo que puede acelerar las aplicaciones MPI.
Para aplicaciones CUDA, puede elegir tamaños de la serie N que incluyen tarjetas de unidad de procesamiento gráfico (GPU) de NVIDIA Tesla.
En este artículo se proporcionan instrucciones y ejemplos para usar algunos de los tamaños especializados de Azure en grupos de Batch. Para especificaciones e información preliminar, consulte:
Nota
Algunos tamaños de máquina virtual podrían no estar disponibles en las regiones en las que cree las cuentas de Batch. Para comprobar que un tamaño está disponible, consulte Productos disponibles por región y Elección de un tamaño de máquina virtual para un grupo de Batch.
Dependencias
Las funcionalidades RDMA y GPU de los tamaños de proceso intensivos solo se admiten en determinados sistemas operativos. Los sistemas operativos admitidos para estos tamaños de máquina virtual incluyen solo un subconjunto de los disponibles para la creación de máquinas virtuales. En función de cómo cree el grupo de Batch, es posible que tenga que instalar o configurar un controlador adicional u otro software en los nodos. En las tablas siguientes se resumen estas dependencias. Consulte los artículos vinculados para más información. Para conocer las opciones para configurar grupos de Batch, consulte la información restante de este artículo.
Grupos de Linux: configuración de la máquina virtual
Size | Capacidad | Sistemas operativos | Requisitos de software | Configuración del grupo |
---|---|---|---|---|
H16r, H16mr, A8 y A9 NC24r, NC24rs_v2, NC24rs_v3, ND24rs* |
RDMA | Ubuntu 22.04 LTS (Azure Marketplace) |
Intel MPI 5 Controladores RDMA en Linux |
Habilitar la comunicación entre nodos y deshabilitar la ejecución de tareas simultáneas |
Serie NCv3, NDv2, NDv4, NDv5 | NVIDIA Tesla GPU (varía por serie) | Ubuntu 22.04 LTS (Azure Marketplace) |
Controladores de NVIDIA CUDA o de CUDA Toolkit | N/D |
Serie NVv3, NVv4, NVv5 | GPU de visualización acelerada | Ubuntu 22.04 LTS (Azure Marketplace) |
Controladores NVIDIA GRID (si es necesario) | N/D |
*Los tamaños de la serie N compatibles con RDMA también incluyen las GPU de NVIDIA Tesla
Importante
En este documento se hace referencia a una versión de lanzamiento de Linux cercana o al final del ciclo de vida (EOL). Considere la posibilidad de actualizar a una versión más actual.
Grupos de Windows: configuración de la máquina virtual
Size | Capacidad | Sistemas operativos | Requisitos de software | Configuración del grupo |
---|---|---|---|---|
H16r, H16mr, A8 y A9 NC24r, NC24rs_v2, NC24rs_v3, ND24rs* |
RDMA | Windows Server 2016, 2012 R2 o 2012 (Azure Marketplace) |
Microsoft MPI 2012 R2 o posterior, o Intel MPI 5 Controladores RDMA en Windows |
Habilitar la comunicación entre nodos y deshabilitar la ejecución de tareas simultáneas |
Series NC, NCv2, NCv3, ND, NDv2 | NVIDIA Tesla GPU (varía por serie) | Windows Server 2016 o 2012 R2 (Azure Marketplace) |
Controladores de NVIDIA CUDA o de CUDA Toolkit | N/D |
Series NV, NVv2, NVv4 | GPU NVIDIA Tesla M60 | Windows Server 2016 o 2012 R2 (Azure Marketplace) |
Controladores de NVIDIA GRID | N/D |
*Los tamaños de la serie N compatibles con RDMA también incluyen las GPU de NVIDIA Tesla
Grupos de Windows: configuración de Cloud Services
Advertencia
Los grupos de configuración de Cloud Services están en desuso. En su lugar, utilice los grupos de configuración de máquina virtual.
Size | Capacidad | Sistemas operativos | Requisitos de software | Configuración del grupo |
---|---|---|---|---|
H16r, H16mr, A8 y A9 | RDMA | Windows Server 2016, 2012 R2, 2012 o 2008 R2 (familia de sistemas operativos invitados) |
Microsoft MPI 2012 R2 o posterior, o Intel MPI 5 Controladores RDMA en Windows |
Habilitar la comunicación entre nodos y deshabilitar la ejecución de tareas simultáneas |
Nota
Los tamaños de la serie N no se admiten en grupos de configuración de Cloud Services.
Opciones de configuración de grupos
Dispone de varias opciones para instalar el software o los controladores necesarios para configurar un tamaño de máquina virtual especializado para el grupo de Batch:
Para grupos de la configuración de máquina virtual, elija una imagen de máquina virtual de Azure Marketplace preconfigurada que tenga los controladores y el software preinstalados. Ejemplos:
Data Science Virtual Machine para Linux o Windows: incluye los controladores de NVIDIA CUDA
Imágenes de Linux para cargas de trabajo de contenedor de Batch que también incluyen los controladores de GPU y RDMA:
Ubuntu Server (con controladores de GPU y RDMA) para grupos de contenedores de Azure Batch
Cree una imagen de máquina virtual Windows o Linux personalizada con controladores instalados, software u otra configuración necesaria para el tamaño de la máquina virtual.
Cree un paquete de aplicación de Batch desde un controlador comprimido o un instalador de aplicación. A continuación, configure Batch para implementar este paquete en nodos de grupo e instalarlo una vez cuando se crea cada nodo. Por ejemplo, si el paquete de aplicación es un instalador, cree una línea de comandos de la tarea de inicio para instalar de forma silenciosa la aplicación en todos los nodos del grupo. Considere el uso de un paquete de aplicación y una tarea de inicio de grupo si la carga de trabajo depende de una versión determinada del controlador.
Nota
La tarea de inicio se debe ejecutar con permisos elevados (administrador) y debe esperar a que se realice correctamente. Las tareas de larga ejecución aumentan el tiempo necesario para aprovisionar un grupo de Batch.
Ejemplo: controladores de GPU de NVIDIA en un grupo de VM de NC Windows.
Para ejecutar aplicaciones CUDA en un grupo de nodos NC Windows, debe instalar los controladores de GPU de NVIDIA. Los siguientes pasos de ejemplo usan un paquete de aplicación para instalar los controladores de GPU de NVIDIA. Puede elegir esta opción si la carga de trabajo depende de una versión específica del controlador de GPU.
- Descargue un paquete de instalación para los controladores de GPU en Windows Server 2016 desde el sitio web de NVIDIA: por ejemplo, la versión 411.82. Guarde el archivo localmente con un nombre corto como GPUDriverSetup.exe.
- Cree un archivo ZIP del paquete.
- Cargue el paquete en su cuenta de Batch. Para conocer los pasos, consulte las instrucciones de los paquetes de aplicación. Especifique un id. de aplicación, como GPUDriver y una versión, como 411.82.
- Mediante las API de Batch o Azure Portal, cree un grupo en la configuración de máquina virtual con el número de nodos y la escala deseados. En la tabla siguiente se muestra la configuración de ejemplo para instalar los controladores de GPU de NVIDIA en modo silencioso mediante una tarea de inicio:
Configuración | Value |
---|---|
Tipo de imagen | Marketplace (Linux/Windows) |
Publicador | Microsoft Windows Server |
Oferta | Windows Server |
Sku | 2016-Datacenter |
Tamaño del nodo | Estándar NC6 |
Referencias de paquetes de aplicación | GPUDriver, versión 411.82 |
Tarea de inicio habilitada | True Línea de comandos - cmd /c "%AZ_BATCH_APP_PACKAGE_GPUDriver#411.82%\\GPUDriverSetup.exe /s" Identidad del usuario: Usuario automático de grupo, administrador Esperar operación correcta: True |
Ejemplo: controladores de GPU de NVIDIA en un grupo de VM de NC Linux.
Para ejecutar aplicaciones CUDA en un grupo de nodos NC Linux, debe instalar los controladores de GPU de NVIDIA Tesla desde el Kit de herramientas de CUDA. Los siguientes pasos de ejemplo crean e implementan una imagen personalizada de Ubuntu 22.04 LTS con los controladores de GPU:
- Implemente una máquina virtual de la serie NC de Azure en la que se ejecute Ubuntu 22.04 LTS. Por ejemplo, puede crear la VM en la región Centro y Sur de EE. UU.
- Agregue la extensión de controladores de GPU de NVIDIA a la máquina virtual mediante Azure Portal, un equipo cliente que se conecte a la suscripción de Azure o Azure Cloud Shell. Como alternativa, siga los pasos para conectarse a la máquina virtual e instale los controladores de CUDA de forma manual.
- Siga los pasos para crear una imagen de Azure Compute Gallery para Batch.
- Cree una cuenta de Batch en una región que admite las máquinas virtuales de NC.
- Mediante las API de Batch o Azure Portal , cree un grupo mediante la imagen personalizada y con el número de nodos y la escala deseados. En la siguiente tabla se muestra la configuración de grupo de ejemplo de la imagen:
Configuración | Value |
---|---|
Tipo de imagen | Imagen personalizada |
Imagen personalizada | Nombre de la imagen |
SKU del agente de nodo | batch.node.ubuntu 22.04 |
Tamaño del nodo | Estándar NC6 |
Ejemplo: Microsoft MPI en un grupo de VM de H16r Windows.
Para ejecutar aplicaciones MPI de Windows en un grupo de nodos de máquinas virtuales H16r de Azure, debe configurar la extensión HpcVmDrivers e instalar Microsoft MPI. Estos son los pasos de ejemplo para implementar una imagen personalizada de Windows Server 2016 con los controladores y el software necesarios:
- Implemente una máquina virtual H16r de Azure que ejecute Windows Server 2016. Por ejemplo, puede crear la máquina virtual en la región Oeste de EE. UU.
- Agregue la extensión HpcVmDrivers a la máquina virtual mediante la ejecución de un comando de Azure PowerShell desde un equipo cliente que se conecte a la suscripción de Azure o mediante Azure Cloud Shell.
- Abra una conexión de Escritorio remoto a la máquina virtual.
- Descargue el paquete de instalación (MSMpiSetup.exe) correspondiente a la versión más reciente de Microsoft MPI e instale Microsoft MPI.
- Siga los pasos para crear una imagen de Azure Compute Gallery para Batch.
- Con las API de Batch o Azure Portal, cree un grupo mediante Azure Compute Gallery con el número de nodos y la escala deseados. En la siguiente tabla se muestra la configuración de grupo de ejemplo de la imagen:
Configuración | Value |
---|---|
Tipo de imagen | Imagen personalizada |
Imagen personalizada | Nombre de la imagen |
SKU del agente de nodo | batch.node.windows amd64 |
Tamaño del nodo | H16r Estándar |
Comunicación entre nodos habilitada | True |
Número máximo de tareas por nodo | 1 |