Ir al contenido principal

Supermicro NVIDIA ofrecen sistemas optimizados para IA, aprendizaje automático y mucho 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.

Putting NVIDIA GPUs to Work in Supermicro Servers

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.

In its GPU server systems, Supermicro uses NVIDIA GPUs and their supporting access methods. These include local DMA, RDMA via its API, plus high-performance networking via multiple NICs and switches that support all three connection types. In addition, Supermicro GPU servers also include one or two special-purpose ASICs called Data Processing Units (DPUs) to support the accelerated IO that GPUs can deliver. These offload additional IO overhead from the server CPUs. Likewise, such servers can support up to eight network adapters per server to enable sustained and extended access to network bandwidth for maximizing transfers between PCIe 5.0 devices and RDMA devices. This ensures there are no bottlenecks, even on the PCIe bus, and help maximize throughput and minimize latency.

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.