Folding Tensor and Sequence Parallelism for Memory-Efficient Transformer Training & Inference
Este artículo presenta la Paralelización de Tensores y Secuencias (TSP), una estrategia de ejecución novedosa que pliega la fragmentación de pesos y tokens en un solo eje de dispositivo para reducir simultáneamente la sobrecarga de memoria de parámetros y activaciones, ofreciendo una alternativa eficiente en hardware para el entrenamiento y la inferencia de modelos transformadores de contexto largo y con restricciones de memoria.
Artículo original bajo licencia CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Esta es una explicación generada por IA del artículo a continuación. No ha sido escrita ni avalada por los autores. Para mayor precisión técnica, consulte el artículo original. Leer descargo de responsabilidad completo
Imagina que estás intentando resolver un rompecabezas masivo con un grupo de amigos, pero solo tienes una mesa muy pequeña (la memoria de tu computadora) para trabajar. El rompecabezas es tan grande que ninguna persona puede sostener todas las piezas a la vez.
Este artículo presenta una nueva forma en que un equipo de computadoras (GPUs) puede trabajar junto para entrenar modelos de IA gigantes, que son esencialmente estos rompecabezas masivos. Los autores llaman a su nueva estrategia TSP (Paralelismo de Tensor y Secuencia).
Aquí está el desglose usando analogías simples:
El Problema: Dos Viejas Formas de Compartir el Trabajo
Para resolver el rompecabezas, el equipo suele usar uno de dos métodos antiguos, pero ambos tienen defectos:
El Método "División de Pesos" (Paralelismo de Tensor):
Imagina que las piezas del rompecabezas son las "reglas" del juego (los pesos del modelo). En este método, cortas el libro de reglas a la mitad. La Persona A sostiene la primera mitad de las reglas, y la Persona B sostiene la segunda mitad.- Lo Bueno: Ahoras espacio en la mesa porque no estás almacenando todo el libro de reglas dos veces.
- Lo Malo: Si el rompecabezas tiene una historia larga (una secuencia larga de palabras), todos aún tienen que sostener toda la historia en sus manos para jugar. Si la historia es enorme, tus manos (memoria) se llenan y te bloqueas.
El Método "División de Historia" (Paralelismo de Secuencia):
Imagina que las piezas del rompecabezas son la historia misma. En este método, la Persona A sostiene la primera mitad de la historia, y la Persona B sostiene la segunda mitad.- Lo Bueno: Ahoras espacio en la mesa porque no estás sosteniendo toda la historia a la vez.
- Lo Malo: Todos aún tienen que memorizar todo el libro de reglas. Si el libro de reglas es enorme, tu cerebro (memoria) se llena y te bloqueas.
El Viejo Híbrido: Por lo general, los equipos intentan hacer ambas cosas usando dos grupos separados de amigos. Un grupo divide las reglas, y un grupo diferente divide la historia. Pero esto es ineficiente porque usa a todos tus amigos solo para dividir el trabajo, dejando a nadie para ayudar con otras tareas (como el Paralelismo de Datos).
La Solución: El Método "Doblado" (TSP)
Los autores dicen: "¿Por qué usar dos grupos separados? Doblemos el trabajo sobre un solo eje".
En TSP, cada persona individual del grupo hace ambas cosas al mismo tiempo:
- Sostienen una rebanada del libro de reglas (pesos).
- Sostienen una rebanada de la historia (secuencia).
La Analogía:
Imagina que estás en una cena.
- La Vieja Forma: Tienes una mesa donde una persona pasa el menú (pesos) mientras todos leen el libro completo. Otra mesa tiene personas pasando el libro (historia) mientras todos memorizan todo el menú.
- La Forma TSP: Todos en la mesa obtienen un pequeño pedazo del menú y un pequeño pedazo de la historia.
Cómo Hacen Que Funcione (Los Trucos Mágicos)
Dado que todos tienen un pedacito del menú y un pedacito de la historia, tienen que hablar mucho entre sí para terminar el rompecabezas. El artículo describe dos formas inteligentes de hacerlo sin abrumarse:
Para las partes de "Historia" (Atención):
Imagina que el grupo necesita conocer toda la historia para entender una oración específica. En lugar de que todos griten toda la historia a la vez, se turnan. Una persona transmite su pedazo del menú a todos. Luego, todos calculan su parte de la historia, y rápidamente intercambian sus pedazos de historia (claves y valores) para reconstruir el contexto completo. Es como una carrera de relevos donde pasan el testigo (datos) mientras corren.Para las partes de "Reglas" (MLP):
Imagina que el grupo necesita aplicar diferentes reglas a sus pedazos de historia. En lugar de detenerse para gritar las reglas, pasan las páginas del libro de reglas en círculo (un anillo). La Persona A hace sus matemáticas con la Página 1, luego pasa la Página 1 a la Persona B mientras la Persona B pasa la Página 2 a la Persona C. Mientras las páginas se mueven, todos están ocupados haciendo matemáticas. Esto mantiene el "tráfico" en movimiento mientras se realiza el "trabajo".
¿Por Qué Es Esto Mejor?
El artículo afirma que TSP es una solución "consciente del hardware", lo que significa que está diseñada específicamente para cómo se comunican entre sí los chips de computadora modernos.
- Ahorro de Memoria: Dado que todos sostienen un pedazo de las reglas y un pedazo de la historia, la memoria requerida en cada computadora disminuye significativamente. Esto permite que el equipo maneje historias mucho más largas (contexto más largo) sin quedarse sin memoria.
- Velocidad: Aunque están pasando más datos de un lado a otro (lo cual suena más lento), lo hacen de una manera que se superpone con su pensamiento. El "paso" ocurre mientras están "pensando", por lo que el tiempo total no se alarga mucho.
- Caber en la Habitación: En un clúster de computadoras, la conexión más rápida suele ser entre chips en la misma máquina (como personas sentadas en la misma mesa). La conexión más lenta es entre máquinas diferentes (personas en habitaciones diferentes).
- Los métodos antiguos a menudo obligaban al equipo a dividirse entre diferentes habitaciones, ralentizándolos.
- TSP permite que todo el equipo "dividido" quepa en una sola máquina (una mesa), manteniéndolos en el carril rápido.
Los Resultados
Los autores probaron esto en un clúster masivo de 1.024 GPUs potentes (MI300X).
- Memoria: TSP usó la menor cantidad de memoria en cada prueba, especialmente cuando las historias eran muy largas.
- Velocidad: TSP fue tan rápido, o más rápido, que los métodos antiguos.
- Escalabilidad: A medida que agregaban más computadoras al grupo, TSP continuó funcionando bien, mientras que los métodos antiguos comenzaron a tener problemas con los límites de memoria.
En resumen: TSP es una forma más inteligente de organizar un equipo de computadoras. En lugar de dividir las "reglas" y la "historia" en grupos separados, las combina para que cada computadora sostenga un poco de ambas. Esto ahorra espacio, permite historias más largas y mantiene al equipo trabajando eficientemente en la misma red rápida.
¿Ahogado en artículos de tu campo?
Recibe resúmenes diarios de los artículos más novedosos que coincidan con tus palabras clave de investigación — con resúmenes técnicos, en tu idioma.