Ir al contenido principal

Supermicro y NVIDIA ofrecen sistemas optimizados para IA, ML y más

Aprovechar al máximo el acceso y la transferencia avanzados de datos para aumentar la productividad

Las empresas modernas están obteniendo considerables ventajas competitivas del uso de aplicaciones avanzadas y del procesamiento de datos en sus negocios y operaciones. Entre ellas se incluyen los grandes modelos lingüísticos basados en la IA, como ChatGPT, LLaMa, etc., los análisis de aprendizaje automático basados en enormes conjuntos de datos reales y de entrenamiento, los complejos modelos y simulaciones 3D y de elementos finitos, y otras aplicaciones de uso intensivo de datos y cálculos.

Todas estas cargas de trabajo tienen al menos esto en común: se benefician significativamente de un acceso acelerado al almacenamiento a través de cualquier tipo de modelo escalonado que se quiera utilizar. Esa es una de las principales razones por las que tantas empresas y proveedores de servicios han recurrido a los servidores basados en GPU para manejar grandes y complicados conjuntos de datos y las cargas de trabajo que los consumen. Son mucho más capaces de manejar esas cargas de trabajo y pueden completar esas tareas más rápidamente que los servidores convencionales con configuraciones de almacenamiento más típicas (por ejemplo, RAM local y SSD NVMe, con niveles de almacenamiento adicionales en la LAN o en la nube).

El secreto para aumentar el rendimiento es reducir la latencia y mejorar el ancho de banda del almacenamiento. Esto se traduce directamente en una mejora de la productividad y la capacidad, principalmente a través de técnicas inteligentes de E/S y redes que se basan en el acceso directo y remoto a la memoria, como se explica a continuación. Una formación más rápida de los modelos y la finalización de los trabajos significan que las aplicaciones impulsadas por la IA pueden desplegarse con mayor rapidez y hacer las cosas más rápido, acelerando el tiempo de obtención de valor.

Acceso directo a memoria y equivalentes remotos

El acceso directo a memoria (también conocido como DMA) se ha utilizado para acelerar la IO desde los primeros días de la informática. Básicamente, DMA implica transferencias de memoria a memoria a través de un bus (u otro tipo de interfaz) de un dispositivo a otro. Funciona copiando un rango de direcciones de memoria directamente desde la memoria del emisor a la del receptor (o entre dos partes para transferencias bidireccionales). Esta característica elimina a la CPU del proceso y acelera la transferencia al reducir el número de operaciones de copia implicadas (de modo que la CPU no necesita copiar los datos del remitente en su memoria y, a continuación, copiar esos datos de su memoria a la del receptor).

De hecho, el rendimiento DMA en un único sistema sólo está limitado por la velocidad del bus (u otra interfaz) que une los dispositivos emisores y receptores implicados en una transferencia de datos. Para PCIe 4.0, eso son 16 gigatransferencias/segundo (GT/s), y el doble para PCIe 5.0 (32 GT/s). Las velocidades de datos son naturalmente más lentas debido a los gastos generales de codificación y empaquetado, pero el ancho de banda nominal para estas dos versiones de PCIe es de 64 Gbps (4.0) y 128 Gbps (5.0), respectivamente. ¡Eso es rápido!

El DMA remoto (también conocido como RDMA) amplía la capacidad del DMA dentro de un único ordenador para que funcione entre un par de dispositivos a través de una conexión de red. RDMA se basa normalmente en una interfaz de programación de aplicaciones (API) única que funciona con hardware y software de red especializados para proporcionar tantas de las mismas ventajas de DMA local como permita la tecnología de red subyacente.

Las GPU NVIDIA admiten tres de estas tecnologías de red, en orden decreciente de velocidad y coste (la más rápida, la más cara primero):

  • NVIDIA NVLink utiliza las interfaces propietarias de mayor velocidad y tecnologías de conmutación para acelerar las transferencias de datos entre GPU en una red de alta velocidad. Actualmente registra el mayor rendimiento en las pruebas de rendimiento estándar MLPerf Training v3.0 para cualquier tecnología. Una sola GPU NVIDIA H100 Tensor Core admite hasta 18 conexiones NVLink para un máximo de 900 Gbps (7 veces la velocidad efectiva de PCIe 5.0).
  • InfiniBand es un estándar de red de alta velocidad supervisado por la Asociación Comercial InfiniBand (IBTA) ampliamente implantado en redes de alto rendimiento. Sus velocidades de datos medidas más altas rondan los (1,2 Tbps, ~154 GBps) a partir de 2020.
  • Ethernet es una tecnología de red estándar con muchas variantes, incluyendo la poco utilizada TbE (~125 GBps) y la más común 400 GbE (50 GBps). Tiene las ventajas de ser una tecnología más asequible, ampliamente desplegada y familiar en muchos centros de datos.

Puesta en funcionamiento de las GPU NVIDIA en los servidores Supermicro

Las tecnologías RDMA de NVIDIA pueden soportar el acceso a los datos basado en la GPU a través de las tres tecnologías de red anteriores. Cada una de ellas ofrece una relación precio-rendimiento diferente, en la que más coste se traduce en mayor velocidad y menor latencia. Las organizaciones pueden elegir el tipo de conexión subyacente que mejor se adapte a sus presupuestos y necesidades, entendiendo que cada opción representa una combinación específica de precio y rendimiento en la que pueden confiar. A medida que varias aplicaciones basadas en IA o ML (y otras de uso intensivo de datos y cálculo) se ejecutan en un servidor de este tipo, pueden explotar la arquitectura por niveles del almacenamiento en GPU, donde están disponibles los siguientes niveles (en orden descendente de rendimiento, ascendente por tamaño y capacidad):

  • 1er nivel: La memoria de la GPU es la más rápida, la más cara y el almacén de datos más pequeño (por ejemplo, la GPU Tensor H100 tiene 188 GB de RAM HBM3)
  • 2º nivel: las unidades SSD locales en el bus PCIe son las siguientes más rápidas, siguen siendo caras y tienen de 10 a 100 veces la capacidad de una GPU de gama alta.
  • 3er nivel: los servidores de almacenamiento remotos en la LAN pueden soportar más de 1.000 veces la capacidad de las GPU que acceden a ellos.

Dado que las aplicaciones de IA y ML necesitan tanto baja latencia como gran ancho de banda, RDMA ayuda a extender las ventajas locales de DMA a los recursos de red (sujeto a las conexiones subyacentes implicadas). Esta función permite un acceso rápido a datos externos mediante transferencias de memoria a memoria a través de dispositivos (GPU en un extremo, dispositivo de almacenamiento en el otro). Funcionando con NVLink, InfiniBand o alguna variante de Ethernet de alta velocidad, el adaptador remoto transfiere datos de la memoria de un sistema remoto a la memoria de alguna GPU local. NVIDIA Magnum IO proporciona una plataforma de aceleración de IO para centros de datos que soporta IO de centros de datos paralelos e inteligentes para maximizar el almacenamiento, la red y las comunicaciones multinodo y multi-GPU para las exigentes aplicaciones que las necesitan.

En sus sistemas de servidores GPU, Supermicro utiliza las GPU NVIDIA y sus métodos de acceso compatibles. Estos incluyen DMA local, RDMA a través de su API, además de redes de alto rendimiento a través de múltiples NIC y conmutadores que admiten los tres tipos de conexión. Además, los servidores GPU Supermicro también incluyen uno o dos ASIC de propósito especial denominados unidades de procesamiento de datos (DPU) para soportar el IO acelerado que pueden ofrecer las GPU. Éstas descargan la sobrecarga adicional de E/S de las CPU del servidor. Asimismo, estos servidores pueden admitir hasta ocho adaptadores de red por servidor para permitir un acceso sostenido y ampliado al ancho de banda de la red con el fin de maximizar las transferencias entre dispositivos PCIe 5.0 y dispositivos RDMA. Esto garantiza que no haya cuellos de botella, ni siquiera en el bus PCIe, y ayuda a maximizar el rendimiento y minimizar la latencia.

Las implicaciones para el rendimiento son muy positivas. El aumento del rendimiento al utilizar el IO acelerado de NVIDIA oscila entre un 20% y un 30% y hasta 2 veces para cargas de trabajo intensivas. También es esencial diseñar las aplicaciones de forma que aprovechen el almacenamiento para evitar ineficiencias. Así, dichas aplicaciones deben configurarse para realizar puntos de control regulares. De lo contrario, deberán reiniciarse desde su inicio en caso de que un nodo se caiga de la red o se bloquee durante algún tiempo. Utilizar puntos de comprobación significa que el progreso sólo vuelve a la instantánea más reciente en caso de fallo de un nodo u otro evento de bloqueo (tales capacidades pueden estar disponibles en las herramientas de protección de datos locales y de red y, de hecho, puede que no sea necesario incorporarlas específicamente en la aplicación).

En general, la ventaja real de utilizar servidores basados en DPU y GPU para IA, ML y otras cargas de trabajo de alta demanda (por ejemplo, modelos 3D o de elementos finitos, simulaciones, etc.) es que permiten separar los componentes de la infraestructura de las actividades de las aplicaciones. Esto ahorra entre un 20% y un 30% de los ciclos de CPU que actualmente se dedican al acceso y la gestión de la infraestructura. Esto libera recursos y acelera el acceso al desplazar las funciones IO al hardware.