El tejido NVSwitch que es el centro del SuperPOD DGX H100
Normalmente, cuando observamos un sistema, pensamos desde los motores de cómputo en un detalle muy fino y luego avanzamos a través de las complejidades de los nodos y luego la interconexión y la pila de software que lo escala a través de los nodos en una plataforma informática distribuida. .
Pero esta vez, cuando repasamos los muchos anuncios que Nvidia está haciendo en su evento en línea GPU Technical Conference 2022, queremos comenzar en la capa intermedia donde los nodos se encuentran con la red y avanzar hacia arriba porque esto es lo que hace que Nvidia un verdadero competidor como fabricante de sistemas informáticos de alto rendimiento, es decir, máquinas diseñadas para ejecutar IA, HPC, cargas de trabajo de análisis de datos y no solo simulación y modelado de HPC tradicionales.
De hecho, creemos que las innovaciones desatadas en GTC 2022 este año convertirán a Nvidia en uno de los contratistas principales clave para este tipo de sistemas que operan a exaescala y más allá.
Para jugar ese juego, debes tener arquitectura y mucho dinero, y Nvidia claramente tiene ambos. Con IBM básicamente fuera del juego, las supercomputadoras de gran capacidad están quedando en manos de Hewlett Packard Enterprise, Nvidia, Fujitsu (este último se centra en gran medida en RIKEN Lab en Japón y algunos otros centros que compran chips de las marcas “K” y “ Fugaku”) y Atos (que está haciendo muchos negocios con sus sistemas BullSequana en Europa). Dell, Lenovo e Inspur se centran principalmente en máquinas de clase de capacidad que se necesitan en función de piezas básicas y están diseñadas principalmente para ejecutar muchos trabajos pequeños simultáneamente en lugar de escalar algunos trabajos grandes de uno en uno; Obviamente, HPE también juega aquí. Y después de una carrera de siete años y su trabajo como contratista principal en la muy retrasada supercomputadora “Aurora” en el Laboratorio Nacional Argonne, Intel ya no está interesada en ser un contratista principal en el mercado de HPC, y la compañía nos lo admitió recientemente. AMD tampoco ha mostrado tal interés.
Creemos que hay un valor inherente en ser un proveedor completo y un creador de sistemas, como lo es Nvidia, pero también permitir a los clientes construir sistemas utilizando los mejores componentes (o disponibles en la actualidad), o que los OEM u ODM lo hagan. es para ellos.
Nvidia es única porque suministra componentes como AMD e Intel, pero también suministra sistemas completos si los clientes quieren comprarlos. (Intel utilizó Cray y luego HPE como fabricante de su sistema, incluso cuando era el contratista principal de la máquina Aurora). Nvidia ha pasado de suministrar solo GPU a crear sus propias placas base HGX, completas con interconexión de memoria GPU NVSwitch y motores GPU, que Se puede acoplar a través de PCI-Express a placas base host X86. Para esto, Nvidia puede incorporar redes Quantum InfiniBand para vincular nodos y redes Spectrum Ethernet para la administración del sistema y el acceso al sistema distribuido, todo usando tarjetas de interfaz de red ConnectX en los servidores. Para aquellos que desean realizar descargas y arrendamiento múltiple, existen DPU BlueField, que vienen con procesadores Arm con una opción de acelerador de GPU.
Es posible que Nvidia haya retrocedido hacia el negocio de las supercomputadoras a partir de los juegos, como admitió el cofundador y director ejecutivo de la compañía, Jensen Huang, en la conferencia de supercomputación SC11, pero ha avanzado a todo vapor desde que Nvidia necesitaba construir sus propias supercomputadoras para hacerlo. su diseño y verificación de chips, además de ir más allá en el entrenamiento de IA para sus numerosos modelos y casos de uso de redes neuronales.
De ahí las varias generaciones de supercomputadoras “Saturn V” y “Selene”, que mostraron todas las tecnologías de Nvidia y su hábil fabricación de sistemas DXG. Con la incorporación de Mellanox Technologies hace dos años, Nvidia pudo cubrir todo el hardware excepto las CPU, la memoria principal y el flash. Con el chip de servidor Arm personalizado “Grace” de 72 núcleos, revelado en el evento GTC del año pasado y que se enviará en la primera mitad del próximo año, Nvidia podrá suministrarlo, y tiene algunos giros interesantes en la arquitectura que le darán cierta serias ventajas. Si Nvidia comprara Micron Technology (y no sugerimos que Nvidia deba hacerlo) podría encargarse de todo el hardware del sistema.
Si bien la nueva GPU “Hopper” GH100 y su acelerador de GPU H100 son el corazón del nuevo y más amplio sistema que Nvidia puede ofrecer, una parte igualmente importante para mantenerse al día con el crecimiento explosivo de los modelos de IA es poder escalar la agrupación en clústeres de memoria NVSwitch. más allá de las máscaras de un único servidor DGX. Y con el futuro superordenador “Eos” que Nvidia está construyendo como continuación de Selene y que comercializará como DGX POD y DGX SuperPOD.
No hay nada que impida a los OEM y ODM comprar componentes HGX que combinen aceleradores GPU H100 dentro de un chasis con memoria NVSwitch conectada dentro del chasis y ahora los interruptores de hoja/espina NVSwitch independientes para extender esa estructura de memoria GPU a través de 32 nodos para crear los suyos propios. Equivalentes POD y SuperPOD. La pregunta es: ¿Lo hará alguno de los OEM mencionados anteriormente, o los ODM que trabajan en nombre de hiperescaladores y creadores de nubes? ¿O Nvidia acabará con la mayoría de los acuerdos para este tipo de máquinas? Creemos que hay muchas posibilidades de que los OEM no estén entusiasmados con competir contra Nvidia en la versión comercializada de la máquina Eos, pero los hiperescaladores y creadores de nubes, que necesitan construir modelos cada vez más grandes, estarán muy interesados. en efecto. Y comprarán piezas de Nvidia y harán que sus ODM las adapten a la infraestructura de su centro de datos.
Nadie construye hierro grande sólo porque es impresionante. Así que esto no es una especie de truco, como tampoco lo fue construir grandes máquinas de memoria compartida NUMA a partir de procesadores de un solo núcleo a finales de la década de 1990 y principios de la de 2000 para grandes bases de datos relacionales o vincularlas en módulos con cuatro, ocho, dieciséis o más archivos compartidos. Las máquinas de memoria realmente compartían la memoria con interconexiones federadas para crear supercomputadoras fue un proyecto científico. Si Nvidia no tuviera que crear una red de memoria distribuida entre nodos, no se molestaría. Al igual que la mayoría de los fabricantes de CPU y de sistemas no se molestan en crear servidores basados en CPU que tengan más de dos y, a veces, cuatro u ocho CPU en un sistema de memoria compartida. Solo escala NUMA cuando es necesario.
Y Nvidia tiene que hacerlo. Mire este gráfico que Paresh Kharya, director senior de informática acelerada de Nvidia, mostró durante las reuniones informativas previas al GTC 2022:
En el gráfico de la izquierda se muestra la cantidad de cálculo, en petaflops, para entrenar los modelos de redes neuronales recurrentes que prevalecieron en los primeros siete años de la revolución moderna de la IA. Si bien este gráfico no lo representa, la cantidad de parámetros que los modelos manejan ha ido aumentando, de ahí la necesidad de realizar más cálculos.
Alrededor de 2017, el equipo de Google Brain descubrió que no necesitaban procesar fragmentos de datos de entrada en orden, sino que podían modificar el modelo para procesar fragmentos de esos datos de entrada en cualquier orden, una especie de ejecución fuera de orden que tenemos. visto en procesadores durante años y, de hecho, para el envío de paquetes a través de redes Ethernet. Al dividir y paralelizar los datos de entrada, el modelo de transformador se puede entrenar mucho más rápido que un RNN, y luego los investigadores comenzaron a incluir aún más parámetros en los modelos y también agregaron la magia del entrenamiento autorregulado a la mezcla. Y así, la capacidad de memoria de los modelos y las necesidades computacionales de esos modelos se están disparando. Además, el 70 por ciento de los artículos de investigación publicados en los últimos dos años están relacionados con modelos de transformadores. Así que este es el nuevo futuro de la IA, hasta que aparezca algo mejor.
En el gráfico de arriba a la derecha, Nvidia muestra el crecimiento en el escalado de GPU en comparación con lo que los modelos de transformadores realmente necesitaban para poder entrenar en un período de tiempo razonable.
Lo que está claro para nosotros es que la historia se repite porque las máquinas DGX basadas en aceleradores GPU V100 y A100 y que usaban NVSwitch de primera generación hicieron converger la memoria en los zócalos GPU dentro del nodo en un espacio de direcciones compartido y distribuido y ahora, con la Con la generación H100 y una nueva topología de hoja/espina, NVSwitch está creando un espacio de memoria de GPU federado que se escala en 32 nodos. Duplicar el rendimiento bruto de la GPU al pasar del “Ampere” A100 al “Hopper” H100 fue importante, pero igualmente importante es el nuevo Tensor Core que está destinado a acelerar los modelos de transformadores y que también tiene precisión FP8 de 8 bits para aumentar el rendimiento. el rendimiento del H100 en un factor de 6 veces en dichos modelos. Pero ni siquiera ese aumento puede hacer que un sistema de memoria compartida de un solo nodo pueda mantenerse al día y, como sospechábamos que Nvidia tendría que hacer hace cuatro años, NVSwitch tiene que transformarse de un bus de memoria rápido y dedicado en el nodo a un bus de memoria completo. tejido de racimo de memoria quemado.
Cuando NVSwitch se anunció por primera vez hace cuatro años, se retiró de Nvidia Research y se produjo rápidamente (y mucho antes de lo planeado) porque Nvidia necesitaba escalar los modelos de entrenamiento de IA más rápido de lo que escalaba cualquier GPU. Y en ese momento, cuando sugerimos que NVSwitch podría usarse para interconectar múltiples nodos, Nvidia dijo que la mejor manera de interconectar nodos DGX era agrupar las máquinas usando muchas interfaces InfiniBand acopladas para crear una tubería gruesa y rápida. Pero un conmutador es un conmutador y uno que habla de la memoria atómica de la GPU es único y útil, y dijimos en ese momento que pensábamos que algún OEM u ODM estaría experimentando cómo interconectar nodos usando una estructura NVSwitch. Bueno, eso no sucedió, y probablemente porque NVSwitch solo se vendió incluido dentro de las placas del sistema HGX como una unidad completa.
El primer NVSwitch, que estaba disponible en la plataforma DGX-2 basada en los aceleradores GPU V100, tenía 18 puertos NVLink 2.0, cada uno con ocho carriles en cada dirección funcionando a velocidades de 25,8 Gb/s, lo que produjo un total de 25 GB/s. de ancho de banda por puerto. Había dos bloques de ocho puertos NVLink, conectados por una barra transversal sin bloqueo, más dos puertos de repuesto que nunca fueron explicados. (Pensamos que serían enlaces ascendentes a conmutadores de clúster). Ese sistema tenía una docena de ASIC NVSwitch, seis por placa base HGX, y la mitad de los enlaces se usaron para conectar los ASIC del conmutador a las ocho GPU en la placa y la otra mitad se utilizaron para conectarse al otro conjunto de seis ASIC en la segunda placa HGX. Había 2,4 TB/s de ancho de banda de dos secciones entre las dos placas HGX, y cualquiera de las GPU en cualquier placa podía comunicarse con cualquier otra GPU en esa placa a 300 GB/s de ancho de banda con un salto a través del NVSwitch. Fueron necesarios tres saltos para llegar a las GPU de la otra placa HGX.
Con el sistema DGX A100 y sus placas base HGX A100, Nvidia necesitaba duplicar el ancho de banda en las GPU GA100, por lo que redujo la escala de la estructura NVSwitch a la mitad, a solo ocho GPU, y aumentó esos enlaces de GPU a GPU. a 600 GB/seg. El rendimiento total del conmutador fue de 7,2 Tb/s, si quiere pensar en esto como lo hacen los fabricantes de ASIC de conmutadores, y esta fue la capacidad de conmutación agregada del NVSwitch original. Nvidia llama al NVSwitch utilizado en los sistemas DGX A100 y las placas HGX A100 su segunda generación, y el gran cambio fue pasar a la señalización de 50 Gb/s en SerDes, lo que significa que podría colocar doce NVLink en cada A100 y manejar 600 GB. /seg de ancho de banda usando la misma cantidad de carriles NVLink que el V100, que tenía seis puertos NVLink y alcanzaba los 300 GB/seg mencionados anteriormente.
Con NVSwitch 3 (así lo llamamos porque Nvidia lo llama NVSwitch de tercera generación, que es demasiado largo), el ancho de banda agregado del dispositivo aumenta en un 66,7 por ciento a 12,8 Tb/s, y las velocidades del puerto NVLink 4.0 ofrecen 900 GB/s de ancho de banda dentro y fuera del acelerador H100 usando un total de 18 NVLinks, en comparación con los 12 enlaces, y esto se puede hacer usando solo dos pares diferenciales en cada dirección en lugar de los cuatro pares usados con el A100 anterior. . La señalización subyacente funciona a 106,25 Gb/s para NVLink 4.0. El ASIC NVSwitch 3 interno tiene 64 puertos NVLink 4.0 y el conmutador NVLink externo tiene 128 puertos NVLink y creemos que tiene dos de estos ASIC NVSwitch 3 en el chasis; el ancho de banda de 25,6 TB/seg (el doble de lo que son las especificaciones del NVSwitch 3) respalda esto:
El conmutador NVLink coloca dos de estos paquetes en un solo chasis:
Ese chasis sólo muestra 32 puertos físicos pero se supone que tiene 128 puertos NVLink. ¿Quizás esto se deba a la agregación de enlaces y luego a la división del cable? No está claro.
Una última cosa sobre NVSwitch 3: Nvidia ha portado los circuitos y algoritmos informáticos en red SHARP de sus conmutadores InfiniBand al ASIC NVSwitch 3, dándole la capacidad de realizar ciertas operaciones colectivas y de reducción en la red. Esto es un gran problema, como se puede ver en la capacidad de computación actual en la red:
Así es como se combinan las redes para construir el sistema DGX H100, el DGX SuperPOD y la supercomputadora Eos AI (y creemos que HPC).
El sistema DGX H100 solo necesita cuatro de los ASIC NVSwitch 3 para acoplar entre sí los ocho aceleradores de GPU H100 en la caja y aún dejar suficientes NVLink juntos para llegar a un segundo nivel de cajas NVSwitch para pegar hasta 32 de los Los sistemas DGX H100 se unen en un grupo de sistemas compartido. (En comparación, el DGX-2 necesitaba doce de los ASIC NVSwitch 1 para interconectar dieciséis aceleradores de GPU V100 dentro de la caja y el DGX A100 necesitaba seis ASIC NVSwitch 2 para interconectar ocho aceleradores de GPU A100).
Pero mira esto. En todo ese sistema DGX H100 SuperPOD de 32 nodos, y comparten memoria HBM3 en todas esas GPU, por lo que realmente es un sistema, hay 256 aceleradores de GPU H100, pero si suma todos los ASIC de conmutación, hay 164 de a ellos. La red representa el 40 por ciento del chippery pesado. Con tantos más puertos y mucho más ancho de banda, ahora los chips NVSwitch 3 internos en el sistema DGX H100 pueden actuar como conmutadores de hoja en una red izquierda/espina, y cuando 18 de estos conmutadores NVLink externos, que caben en un solo bastidor en el centro de la máquina, simplemente superan el rendimiento de la red de hoja/columna vertebral InfiniBand HDR de 100 Gb/seg que se utilizó en el SuperPOD DGX A100. Echar un vistazo:
Pero ese DGX SuperPOD no es lo suficientemente grande ni rápido para Nvidia. Y es por eso que está construyendo la supercomputadora Eos, que se muestra a continuación y que se construirá "en los próximos meses", según Jensen Huang, cofundador y director ejecutivo de Nvidia.
Con Eos, Nvidia combinará 18 de los SuperPOD DGX H100 para crear una máquina monstruosa, una que ocuparía el primer o segundo lugar en el mundo, dependiendo de su nivel de precisión. Por el momento, superaría a la supercomputadora “Summit” existente en el Laboratorio Nacional Oak Ridge en los Estados Unidos en matemáticas FP64 (según lo medido por el punto de referencia Linpack) y superaría a la supercomputadora “Fugaku” en el Laboratorio RIKEN en Japón en precisión reducida. matemáticas.
Esta bestia tiene 576 sistemas DGX H100 con un total de 4.608 aceleradores GPU H100. Según nuestro recuento, el sistema tiene 2304 ASIC NVSwitch 3 internamente en esas máquinas y otros 360 gabinetes de conmutador NVLink con 720 ASIC NVSwitch 3. Hay 500 conmutadores Quantum-2 NDR InfiniBand, así que agregue otros 500 ASIC allí. Si sumamos todo, hay 3524 conmutadores ASIC en el sistema Eos, o el 43,3 por ciento del total de 8132 dispositivos. (Difícilmente podemos contar las CPU en las cajas DGX porque, desde el punto de vista computacional, se dedican principalmente a tareas domésticas).
Este tampoco es el tipo de proporción entre computación y redes que vemos en los clústeres de HPC o en los sistemas de hiperescala o de nube. Nvidia está aportando redes muy serias, tanto de Nvidia como de la antigua Mellanox Technology, para resolver los problemas de escalamiento más difíciles de nuestro tiempo.
Nos preguntamos cuántas tiendas de HPC, particularmente aquellas que tienen una carga de trabajo de IA cada vez mayor, mirarán lo que Nvidia ha construido y comenzarán a sentir un poco de envidia de la multitud de IA. Y estamos seguros de que más de unos pocos centros HPC, empezando por CSCS en Suiza, observarán el complejo de CPU Arm “Grace” y la GPU Hopper, y toda esta interconexión de memoria NVSwitch, y comenzarán a preguntarse qué podrían hacer con un Clúster de memoria compartida muy grande. Como los que muchos siempre habían soñado tener hace tantos años. Todo lo que Nvidia tiene que hacer para escalar esto es agregar otra capa de red NVSwitch... o construir un conmutador ASIC de mayor capacidad.
Incluso si Nvidia no quiere ser un contratista principal, sus grandes bolsillos y su destreza técnica pueden significar que se vea obligada a hacerlo. Los centros HPC simplemente no obtendrán el tipo de ofertas a las que están acostumbrados. Pueden pagar más o perder la ventaja frente a los hiperescaladores y los creadores de la nube, quienes absolutamente pueden permitirse tantas máquinas potentes como quieran.
Presentamos aspectos destacados, análisis e historias de la semana directamente desde nosotros a su bandeja de entrada sin nada intermedio. Suscríbase ahora