¿Por qué NVIDIA hace Switches? ¿Cómo se relaciona con la IA generativa?

La mayor parte de la atención en Computex se centró en los nuevos DGX GH200 y MGX de NVIDIA, los cuales son productos de inteligencia artificial a nivel de sistema de NVIDIA, independientemente de si son diseños de referencia o servidores completos. Esos chips, placas y sistemas relacionados con CPU y GPU siempre han sido temas candentes para NVIDIA, ya que AI y HPC son tan populares.

Pero en realidad, en el contexto de AI HPC, especialmente AI generativa, o lo que muchas personas ahora llaman computación de "modelo grande", y las redes también son muy importantes. En otras palabras, se necesita una gran cantidad de servidores para trabajar juntos para resolver problemas, y se necesita un clúster a gran escala para expandir el poder de cómputo en todos los sistemas y nodos. Por lo tanto, los problemas de rendimiento no se relacionan solo con la potencia informática de las CPU, las GPU y los chips de IA dentro de un nodo.

Anteriormente, Google mencionó que en la infraestructura general de IA, la importancia de la arquitectura a nivel del sistema es incluso mayor que la de la microarquitectura del chip TPU. Por supuesto, este "nivel de sistema" puede no cubrir necesariamente las redes entre nodos, pero obviamente, cuando un montón de chips trabajan juntos para hacer cálculos, el sistema y la red se convierten en cuellos de botella de rendimiento.

Es por eso que DPU es tan importante, en lugar de una forma subjetiva de vender o competir con productos existentes en el mercado. La DPU de NVIDIA y otros productos de red son más como complementos de tablero corto para sus propios productos, subjetivamente no como competir con otros o competir con productos existentes en el mercado. Desde esta perspectiva, los productos de hardware de NVIDIA constituyen horizontalmente un ecosistema completo: por ejemplo, la DPU no tiene la intención subjetiva de competir con nadie, sino que es una parte de sus productos existentes.

Computex

En Computex, NVIDIA anunció productos de red centrados en su plataforma Ethernet Spectrum-X. NVIDIA afirma que este es el primer producto Ethernet de alto rendimiento del mundo diseñado específicamente para IA, particularmente para "cargas de trabajo de IA generativas que requieren un nuevo tipo de Ethernet". No hemos hablado mucho sobre los productos de red de NVIDIA en el pasado, incluida su unidad de procesamiento de datos (DPU). Con la introducción de Spectrum-X, este artículo trata de analizar este producto Ethernet, así como la lógica detrás de los productos de red de NVIDIA.

¿Por qué NVIDIA quiere construir un "Switch"?

Los dos componentes principales dentro de la plataforma Spectrum-X son el conmutador Ethernet Spectrum-4 y la DPU BlueField-3. La parte de la DPU no está muy explicada; la otra parte relacionada con el conmutador Spectrum, el GTC real, el año pasado, NVIDIA lanzó el conmutador Spectrum-4 de 400 Gbps. El nivel del chip se basa en Spectrum ASIC: Huang Renxun mostró el chip en el discurso de apertura de Computex, que es un tipo grande que incluye 100 mil millones de transistores, 90x90 mm, 800 bolas de soldadura en la parte inferior del paquete del chip y 500 W de consumo de energía.

Huang Renxun mostró el chip

El anuncio de la "primera arquitectura Ethernet de alto rendimiento" creada específicamente para IA, el sistema de conmutador Ethernet Spectrum-4, ya está disponible para los CSP.

Como se muestra en la figura, el sistema cuenta con un total de 128 puertos con una capacidad de ancho de banda de 51.2 TB/s, que es el doble que los conmutadores Ethernet tradicionales. Según la compañía, esta nueva tecnología permitirá a los ingenieros de redes, científicos de datos de IA y proveedores de servicios en la nube producir resultados y tomar decisiones a un ritmo más rápido, al mismo tiempo que habilita nubes de IA generativas. El alto ancho de banda y la baja latencia son cruciales para aliviar los cuellos de botella en el rendimiento durante el escalado de GPU entre nodos. Todo el interruptor consume 2800 W de potencia.

el sistema cuenta con un total de 128 puertos

En el GTC del año pasado, NVIDIA explicó que el conmutador no tenía la intención de competir con los conmutadores de red convencionales en el manejo del tráfico de "flujo de mouse" de rutina, sino que se enfoca en procesar el tráfico de "flujo de elefante", aprovechando los productos de hardware para IA a gran escala, digital gemelos y aplicaciones de simulación.

“Los conmutadores tradicionales son demasiado lentos para manejar las cargas de trabajo de IA generativas actuales. Además, todavía estamos al comienzo de la revolución de la IA. Los conmutadores tradicionales pueden ser suficientes para las nubes de productos básicos, pero no pueden proporcionar el rendimiento requerido para las cargas de nube de IA que involucran IA generativa”, dijo Gilad Shainer, vicepresidente sénior de redes de NVIDIA durante su discurso de apertura.

Durante la sesión informativa previa, un periodista preguntó específicamente si NVIDIA Spectrum compite directamente con los conmutadores de Arista y otras empresas. La respuesta de Shainer fue que no hay competencia: “Otros conmutadores Ethernet en el mercado se usan para construir nubes básicas comunes o tráfico norte-sur que incluye acceso de usuarios y control de la nube. Sin embargo, actualmente no existe una solución en el mercado que pueda satisfacer las demandas de IA generativa para Ethernet. Como la primera red Ethernet del mundo para el tráfico este-oeste en IA generativa, Spectrum-4 ha creado una nueva solución Ethernet que apunta específicamente a este objetivo”. Shainer también mencionó durante la sesión informativa que los productos de conmutación existentes de Broadcom no compiten con Spectrum-4. NVIDIA enfatiza que Spectrum-X crea una red Ethernet sin pérdidas, lo que puede ser particularmente importante para explicar la plataforma Spectrum-X.

InfiniBand frente a Ethernet

Ethernet ha evolucionado con el tiempo. Lossless es específico porque Ethernet se diseñó originalmente para entornos de red con pérdidas. En otras palabras, se permite la pérdida de paquetes en esta red. Para garantizar la confiabilidad, la capa superior de la red IP requiere el protocolo TCP. Es decir, si se produce una pérdida de paquetes durante la transmisión de paquetes, el protocolo TCP permite al remitente retransmitir los paquetes perdidos. Sin embargo, debido a estos mecanismos de corrección de errores, aumenta la latencia, lo que puede causar problemas para cierto tipo de aplicaciones. Además, para hacer frente a picos repentinos de tráfico en la red, los conmutadores deben asignar recursos de caché adicionales para almacenar información temporalmente, razón por la cual los chips de conmutador Ethernet son más grandes y más caros que los chips InfiniBand de especificaciones similares.

Sin embargo, "las redes con pérdidas son inaceptables para los centros de datos de computación de alto rendimiento (HPC)". Huang Renxun afirmó: "El costo total de ejecutar una carga de trabajo de HPC es muy alto y cualquier pérdida en la red es difícil de soportar". Además, debido a requisitos como el aislamiento del rendimiento, las redes con pérdidas son realmente difíciles de soportar. NVIDIA ha estado utilizando un estándar de comunicación de redes llamado InfiniBand. InfiniBand se usa comúnmente en aplicaciones HPC que requieren alto rendimiento y baja latencia. A diferencia de Ethernet, que es más universal, InfiniBand es más adecuado para aplicaciones de uso intensivo de datos.

InfiniBand no es exclusivo de NVIDIA. Originalmente fue desarrollado por varias empresas, incluidas Intel, IBM y Microsoft, entre otras, e incluso hubo una alianza especializada llamada IBTA. Mellanox comenzó a promocionar los productos InfiniBand alrededor del año 2000. Según la introducción de Wikipedia, el objetivo inicial de InfiniBand era reemplazar PCI en E/S y Ethernet en la interconexión de salas de máquinas y clústeres.

Desafortunadamente, InfiniBand se desarrolló durante el período del estallido de la burbuja de las puntocom y su desarrollo fue reprimido. Participantes como Intel y Microsoft tenían nuevas opciones. Sin embargo, según la lista TOP500 de superordenadores de 2009, ya había 181 conexiones internas basadas en InfiniBand (el resto eran Ethernet), y para 2014, más de la mitad de ellos usaban InfiniBand, aunque Ethernet de 10 Gb se puso al día rápidamente en los dos años siguientes. Cuando NVIDIA adquirió Mellanox en 2019, Mellanox ya se había convertido en el principal proveedor de productos de comunicación InfiniBand del mercado.

Desde la perspectiva del diseño, Ethernet, que nació en la década de 1980, solo se preocupaba por lograr la interoperabilidad de la información entre múltiples sistemas. Por el contrario, InfiniBand nació para eliminar el cuello de botella en la transmisión de datos de clúster en escenarios de HPC, como en términos de latencia, y su diseño de procesamiento de conmutación de capa 2 es bastante directo, lo que puede reducir en gran medida la latencia de reenvío. Por lo tanto, es naturalmente adecuado para HPC, centros de datos y clústeres de supercomputadoras: alto rendimiento, baja latencia y alta confiabilidad.

alto rendimiento, baja latencia y alta confiabilidad

Desde el punto de vista de la confiabilidad, InfiniBand tiene una definición de protocolo completa para las capas de red 1-4: previene la pérdida de paquetes a través de mecanismos de control de flujo de extremo a extremo, lo que en sí mismo logra la propiedad sin pérdidas. Otra diferencia importante entre los dos es que InfiniBand se basa en un diseño de red de estructura conmutada, mientras que Ethernet se basa en un canal compartido de medio compartido. Teóricamente, el primero es más capaz de evitar problemas de conflicto de red.

Dado que InfiniBand es tan bueno, ¿por qué Nvidia quiere desarrollar Ethernet? Pensando desde la intuición, la base de mercado de Ethernet, la versatilidad y la flexibilidad deberían ser factores importantes. En su discurso de apertura, Huang habló sobre cómo "queremos llevar IA generativa a todos los centros de datos", lo que requiere compatibilidad con versiones posteriores; “muchas empresas están implementando Ethernet” y “obtener la capacidad de InfiniBand es difícil para ellos, por lo que estamos trayendo esa capacidad al mercado de Ethernet. Esta es la lógica comercial detrás del lanzamiento de Spectrum-4. Pero creemos que definitivamente esa no es toda la historia.

NVIDIA está trabajando en productos Ethernet e InfiniBand, siendo el primero la plataforma Spectrum Ethernet y el segundo se llama Quantum InfiniBand. Si miras el offEn la página oficial, encontrará que las soluciones InfiniBand “ofrecen un rendimiento inigualable a un menor costo y complejidad además de las infraestructuras de nube de HPC, IA y supercluster”; mientras que Spectrum es una conmutación Ethernet acelerada para IA y la nube. Claramente, los dos están compitiendo hasta cierto punto.

¿Por qué Ethernet?

En su discurso de apertura, Huang explicó científicamente los diferentes tipos de centros de datos; de hecho, en el GTC del año pasado, NVIDIA había dividido claramente los centros de datos en seis categorías. Y en el escenario de IA que estamos discutiendo hoy, los centros de datos se pueden dividir en dos categorías principales. Una categoría es la que debe ser responsable de un montón de cargas de aplicaciones diferentes, donde puede haber muchos inquilinos y dependencias débiles entre cargas.

Pero hay otra categoría típicamente, como la supercomputación o la ahora popular supercomputación de IA, que tiene muy pocos inquilinos (tan solo 1 bare metal) y cargas estrechamente acopladas, lo que exige un alto rendimiento para grandes problemas computacionales. La diferencia en la infraestructura requerida por estos dos tipos de centros de datos es significativa. A juzgar por la intuición, el entorno con pérdidas más primitivo de Ethernet no sería adecuado para este último requisito. Las razones de esto ya se han abordado en el artículo anterior.

SemiAnalysis escribió recientemente un artículo que hablaba específicamente sobre los muchos problemas con InfiniBand, principalmente técnicos, que pueden usarse como referencia para que NVIDIA desarrolle Ethernet al mismo tiempo. Algunos de ellos se extraen aquí como referencia. De hecho, tanto InfiniBand como Ethernet están en constante evolución.

El control de flujo de InfiniBand utiliza un mecanismo de control de flujo basado en créditos. Cada enlace está preasignado con algunos créditos específicos, que reflejan atributos como el ancho de banda del enlace. Cuando se recibe y procesa un paquete, el extremo receptor devuelve un crédito al extremo emisor. Idealmente, dicho sistema garantizaría que la red no se sobrecargue, ya que el remitente tendría que esperar a que regresen los créditos antes de enviar más paquetes.

¿Por qué Ethernet?

Pero hay problemas con tal mecanismo. Por ejemplo, si un nodo emisor envía datos a un nodo receptor a una velocidad superior a la que el nodo receptor puede procesar los datos, el búfer del nodo receptor puede llenarse. El nodo receptor no puede devolver créditos al nodo emisor y, como resultado, el nodo emisor no puede enviar más paquetes de datos porque los créditos están agotados. Si el nodo receptor no puede devolver créditos y el nodo emisor también es un nodo receptor para otros nodos, la incapacidad de devolver créditos en el caso de una sobrecarga de ancho de banda puede provocar que la contrapresión se extienda a un área más grande. Otros problemas incluyen interbloqueos y tasas de error causados ​​por diferentes componentes.

Algunos problemas inherentes a InfiniBand se vuelven más graves a medida que aumentan la escala y la complejidad del sistema. Actualmente, la solución InfiniBand implementada comercialmente más grande es probablemente de Meta, donde un grupo de investigación implementó un total de 16,000 16,000 NIC y 100 XNUMX GPU AXNUMX.

Sin duda, esta escala es masiva, pero SemiAnalysis afirma que entrenar GPT-4 requerirá una escala aún mayor, y los futuros desarrollos de "modelos grandes" probablemente requerirán la expansión del clúster. En teoría, InfiniBand puede continuar expandiendo su capacidad general, pero sufrirá cada vez más los efectos de los problemas inherentes. Desde una perspectiva de inferencia, la latencia y el rendimiento aún pueden beneficiarse de InfiniBand, pero para las cargas de inferencia, se transmitirán diferentes solicitudes a varias velocidades de forma continua. Además, las arquitecturas futuras requerirán que se incluyan múltiples modelos grandes en varios tamaños de lote dentro del mismo clúster a gran escala, lo que exige cambios continuos en el control de flujo basados ​​en créditos.

El mecanismo de control de flujo de crédito es difícil de responder rápidamente a los cambios en el entorno de la red. Si hay una gran cantidad de tráfico diverso dentro de la red, el estado del búfer del nodo receptor puede cambiar rápidamente. Si la red se congestiona, el nodo de envío todavía está procesando información crediticia anterior, lo que hace que el problema sea aún más complejo. Además, si el nodo emisor espera constantemente los créditos y cambia entre los dos estados de transmisión de datos, puede causar fácilmente fluctuaciones en el rendimiento.

En términos de practicidad, el Quantum-2 actual de NVIDIA logra anchos de banda de 25.6 TB/s, que al menos numéricamente hablando, es inferior a los 4 TB/s de Spectrum-51.2. La infraestructura y los chips Quantum más rápidos no estarán disponibles hasta el próximo año, lo que crea un ritmo diferente. Además, desde una perspectiva de costos, lograr la misma escala (más de 8000 GPU) de implementación convencional de GPU requiere una capa adicional de conmutación y muchos más cables (cables ópticos de alto costo). Por lo tanto, el costo de implementación de la red InfiniBand a escala típica es significativamente mayor que el de Ethernet. (UPP y NIC los costos no se consideran aquí.)

Desde la perspectiva del cliente, el mercado de Ethernet es mucho más grande que el de InfiniBand, lo que también ayuda a reducir los costos de implementación. Existen otros factores comparables específicos, como los sistemas front-end de servicios tradicionales basados ​​en Ethernet y el problema de vinculación del proveedor con InfiniBand para los clientes. Obviamente, Ethernet ofrece más opciones, y su elasticidad y escalabilidad de implementación también pueden ser mejores. A nivel técnico, parece haber un valor potencial en futuras implementaciones de infraestructura de transmisión óptica para Ethernet.

Estas pueden ser la base teórica del enfoque de NVIDIA en Ethernet o parte de la razón por la que NVIDIA eligió Ethernet para las nubes de IA generativa. Sin embargo, una razón que solo debe tomarse como referencia es que InfiniBand ha evolucionado mucho gracias a NVIDIA, y muchos problemas inherentes tienen solución.

Cuántico-2

Finalmente, hablemos de la pregunta mencionada al principio, que es que Ethernet era originalmente una red con pérdidas. Pero en realidad, con el desarrollo de tecnologías como RoCE (RDMA sobre Ethernet Convergente), algunas de las ventajas de InfiniBand también se han trasladado a Ethernet. De hecho, la expansión de la tecnología es, en cierta medida, la integración de las ventajas de diferentes tecnologías, incluido el alto rendimiento y sin pérdidas de InfiniBand, la universalidad, la rentabilidad y la flexibilidad de Ethernet, etc.

El RoCE mencionado en las características de la plataforma Spectrum-X logra la ausencia de pérdidas en las redes Ethernet al confiar en el control de flujo basado en prioridad (PFC) en la NIC del extremo, en lugar de cambiar los dispositivos. Además, RoCE++ tiene algunas nuevas extensiones optimizadas, como ASCK, que maneja problemas de orden de llegada y pérdida de paquetes, lo que permite que el extremo receptor notifique al extremo emisor que solo retransmita los paquetes perdidos o dañados, logrando una mayor utilización del ancho de banda; también hay ECN, mecanismo de control de flujo y optimización de errores, todo lo cual contribuye a mejorar la eficiencia y la confiabilidad. Además, para aliviar los problemas de escalabilidad de las NIC de punto final en Ethernet estándar con redes RoCE, se puede usar el modo NIC de Bluefield y el costo total de la DPU todavía se puede diluir con Ethernet y algunas tecnologías nuevas.

En su discurso de apertura, Huang Renxun mencionó específicamente Spectrum-X, que aporta principalmente dos características importantes a Ethernet: enrutamiento adaptativo y control de congestión. Además, NVIDIA cooperó previamente con IDC para publicar un informe técnico sobre el valor comercial de las soluciones de conmutación de Ethernet.

En aplicaciones de IA a gran escala, quizás Ethernet sea una opción inevitable en el futuro. Por lo tanto, en la promoción de Spectrum-X, la posición de NVIDIA está especialmente preparada para las nubes de IA generativa, la "primera" solución para el tráfico este-oeste de IA generativa. Sin embargo, puede haber más razones que la fuerte universalidad de Ethernet. Bajo cargas AI HPC, existe una cierta probabilidad de la posibilidad de un cambio completo a Ethernet.

El desarrollo de diferentes estándares es en sí mismo un proceso de revisión y complemento constante de las deficiencias de los demás, y de absorción de la esencia. Al igual que InfiniBand, existen varias soluciones de mitigación para resolver defectos inherentes, y algunos atributos extendidos de InfiniBand también son muy útiles para su aplicación en IA. Este es un problema de comparación entre la elección y el desarrollo tecnológico. Podemos esperar y ver si NVIDIA se inclinará hacia el desarrollo de InfiniBand o Ethernet en el futuro, incluso si estos dos tienen sus respectivos escenarios de aplicación.

Deja un comentario

Ir al Inicio