Un nuevo punto de referencia de rendimiento de ajuste para BridgeTower, un modelo de IA Vision-Language (VL), ha demostrado que hay vida en el campo de la aceleración de IA además del verde de Nvidia. Si bien Nvidia domina el mercado de aceleración de la IA (a través de una previsión excepcional, una pila de software bien pensada y documentada y un rendimiento de procesamiento puro), otros jugadores están deseosos de hacerse con una parte del mercado de la IA. Y al menos para BridgeTower, Hugging Face ha demostrado que el propio silicio Gaudi 2 de Intel (diseñado y fabricado a través de la adquisición de Habana por 2 mil millones de dólares de Intel en 2019) supera al A100 de 80 GB de Nvidia en una asombrosa cifra de 2,5 veces, e incluso supera al prodigio de Nvidia. niño H100 en 1,4x.
Visión-Lenguaje
Vision-Language (VL) se refiere a modelos de IA que pueden procesar y asociar información a través de las modalidades de lenguaje y representación visual. Los modelos VL en específico se asocian comúnmente con modelos de generación de imágenes como CLIP de Open AI y Stable Diffusion XL, un mercado de rápido crecimiento liderado principalmente por Midjourney, Stable Diffusion y ahora Ideogram.
Según Habana, las importantes aceleraciones son el resultado de un sistema de carga de datos acelerado por hardware, uno de los cuellos de botella para el ajuste fino de los modelos de IA, y especialmente para los modelos VL. Cargar una carga de trabajo en la memoria es a menudo un cuello de botella en el rendimiento dondequiera que se encuentre la informática, por lo que Habana no buscaría optimizar este paso particular en el proceso de capacitación.
El principal cuello de botella se relaciona con cómo las CPU se ven abrumadas con muchas operaciones costosas, como la decodificación y el aumento de imágenes (un problema similar al debate sobre la GPU), lo que lleva a la HPU (o GPU Nvidia) a detenerse mientras espera que se envíen más datos. ser procesado (por la CPU) y luego enviado al acelerador de IA de su elección. Así es como transcurre el proceso sin ninguna aceleración de hardware:
- Obtener datos (por ejemplo, dónde se almacenan sus imágenes JPEG en el disco)
- La CPU lee imágenes codificadas.
- La CPU decodifica imágenes.
- La CPU aplica transformaciones de imágenes para aumentarlas.
- Las imágenes se envían a los dispositivos (aunque normalmente esto no lo hace el propio cargador de datos)
Y este es el proceso a través de la aceleración de hardware integrada de Gaudi 2, que acelera la transformación de la imagen:
- Obtener datos
- La CPU lee imágenes codificadas.
- Las imágenes codificadas se envían a los dispositivos.
- Dispositivos decodifican imágenes
- Los dispositivos aplican transformaciones de imágenes para aumentarlas
A través del método de aceleración de hardware, queda claro que la CPU está mucho menos aprovechada (liberando ciclos de CPU para otras tareas dentro del proceso principal de ajuste), lo que debería resultar en un mejor rendimiento.
La evaluación comparativa del Gaudi 2 de Habana mediante el ajuste de un punto de control BridgeTower previamente entrenado con parámetros 866M nos permite ver las ganancias de rendimiento que la carga de imágenes acelerada por hardware aporta. Las cargas de trabajo se ejecutaron en computación distribuida en 8 dispositivos cada uno (de Nvidia A100 80 GB, H100 y Gaudi 2). Los resultados se midieron y promediaron en tres ejecuciones de procesamiento diferentes, y cada ejecución generó procesos de CPU crecientes completamente dedicados a cargar datos en la memoria (la primera ejecución carga memoria dentro del proceso principal de la CPU, mientras que las ejecuciones dos y tres aumentan la cantidad de cargas de memoria). procesos por uno y dos, respectivamente).
Dispositivo | cargador de datos_num_trabajadores=0 | cargador de datos_num_trabajadores=1 | cargador de datos_num_trabajadores=2 | cargador de datos_num_workers=2 + mediapipe_dataloader |
Gaudí 2 HPU | 601.5 | 747,4 | 768,7 | 847,7 |
GPU H100 | 336,5 | 580.1 | 602.1 | N / A |
GPU A100 de 80 GB | 227,5 | 339,7 | 345,4 | N / A |
Los resultados son claros: el mejor escenario de rendimiento para Gaudi 2 es el primero, donde los datos se cargan junto con el proceso de entrenamiento principal, con Gaudi 2 superando incluso a la Nvidia H100 en 1,79x y a la A100 en 2,23x. Pero se trata de un escenario no optimizado, como lo admitió la propia Habana; Entonces, quizás los resultados más reveladores provengan del tercer punto de datos, donde se generaron dos procesos adicionales para manejar la carga de datos. afuera del principal proceso de ajuste. Allí, los productos de Nvidia ciertamente tienen que entrecerrar los ojos para captar la nube de polvo de Gaudi 2 mientras se aleja: Gaudi 2 ofrece un rendimiento mejorado de 1,3 veces frente a la crema de la cosecha H100 de Nvidia, y una mejora de rendimiento de 2,23 veces frente a la A100. 80 GB.
Sería posible generar procesos adicionales para manejar la carga de datos; pero como se puede ver en la progresión del desempeño, esa estrategia generaría rendimientos cada vez más decrecientes. En la Nvidia H100, por ejemplo, el rendimiento mejora 1,72 veces al generar un único proceso de carga de datos dedicado, pero pasar de un proceso a dos solo aporta una mejora adicional del 3%. Sin embargo, debido a la capacidad de Habana para incorporar la mayoría de los pasos de carga de datos a Gaudi 2, la compañía puede desbloquear una mejora de rendimiento adicional del 10 % en comparación con su mejor puntuación (donde la carga de datos y las transformaciones son manejadas por dos procesos de CPU).
Todavía queda un largo camino por recorrer antes de que cualquier empresa pueda reclamar hegemonía en el espacio de aceleración de la IA. Nvidia tiene una increíble pila de productos y software que le ha permitido obtener la ventaja de ser el primero en actuar; pero hemos visto suficientes carreras en las que los menos favorecidos alcanzan (y a veces incluso superan) a los favoritos para saber que Intel, AMD y otros están buscando robarle el protagonismo a Nvidia.