Compartir vía


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.

  1. 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.
  2. Cree un archivo ZIP del paquete.
  3. 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.
  4. 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:

  1. 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.
  2. 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.
  3. Siga los pasos para crear una imagen de Azure Compute Gallery para Batch.
  4. Cree una cuenta de Batch en una región que admite las máquinas virtuales de NC.
  5. 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:

  1. 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.
  2. 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.
  3. Abra una conexión de Escritorio remoto a la máquina virtual.
  4. Descargue el paquete de instalación (MSMpiSetup.exe) correspondiente a la versión más reciente de Microsoft MPI e instale Microsoft MPI.
  5. Siga los pasos para crear una imagen de Azure Compute Gallery para Batch.
  6. 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

Pasos siguientes

  • Para ejecutar trabajos MPI en un grupo de Azure Batch, consulte los ejemplos Windows o Linux.