Simple Science

Ciencia de vanguardia explicada de forma sencilla

# Informática

Mejorando la Velocidad de Entrenamiento de IA con Parm

Un nuevo sistema optimiza el entrenamiento de grandes modelos de IA al reducir los costos de comunicación.

― 7 minilectura


Parm Acelera la VelocidadParm Acelera la Velocidadde Entrenamiento de MoEIA.el entrenamiento de grandes modelos deNuevo sistema mejora la eficiencia en
Tabla de contenidos

El entrenamiento de modelos a gran escala en IA se ha convertido en un gran enfoque para los investigadores. Un enfoque común para manejar estos grandes modelos es usar algo llamado capas de Mezcla de Expertos (MoE), que ayudan a aumentar el tamaño del modelo sin aumentar significativamente el costo computacional. Sin embargo, a medida que los modelos se hacen más grandes, la cantidad de Comunicación necesaria durante el entrenamiento también crece. Esto puede ralentizar el proceso de entrenamiento, especialmente al usar muchas GPUs o TPUs.

Para superar esto, los investigadores han ideado varias maneras de organizar cómo se procesan las Tareas y cómo se comunica la data. Sin embargo, muchos de estos métodos todavía luchan con los costos de comunicación que vienen con usar múltiples configuraciones paralelas. Este artículo explora un nuevo sistema llamado Parm, diseñado para mejorar la velocidad de entrenamiento de los modelos MoE mientras mantiene bajos los costos de comunicación.

El Desafío de los Grandes Modelos

A medida que los modelos de IA se vuelven más grandes, los recursos de computación necesarios para entrenarlos también aumentan. Por ejemplo, entrenar un modelo con miles de millones de parámetros requiere una cantidad increíble de computación. Ahí es donde entran en juego las capas MoE. Permiten que los modelos crezcan en tamaño mientras minimizan los costos de computación adicionales involucrados. Las capas MoE funcionan activando solo partes del modelo (llamadas expertos) para tareas específicas. Esta activación selectiva mantiene las necesidades de computación generales más bajas.

Sin embargo, incluso con MoE, el tiempo de comunicación al usar múltiples GPUs puede ocupar una gran parte del tiempo total de entrenamiento. La forma en que se dividen las tareas entre las GPUs puede llevar a retrasos, especialmente si la comunicación entre ellas no se gestiona bien. Por lo tanto, se necesita un mejor enfoque para programar tareas y gestionar la transferencia de datos.

Entendiendo las Capas de Mezcla de Expertos

Las capas MoE están compuestas por varios expertos, cada uno diseñado para manejar diferentes partes de la carga de trabajo. El sistema usa una función de puerta para decidir qué experto trabajará en qué parte de la data. Como resultado, cuando se procesa, solo unos pocos expertos están activos en un momento dado. Esta configuración permite escalar el modelo sin duplicar el tiempo de cómputo.

Cada experto normalmente opera de manera independiente y se puede pensar en él como una pequeña red neuronal. A pesar de su pequeño tamaño, al combinarse, estos expertos crean un modelo poderoso. Sin embargo, el mecanismo de puertas a veces puede llevar a cargas de trabajo desiguales entre los expertos. Para contrarrestar esto, se establecen límites sobre cuántas tareas un experto puede manejar a la vez, asegurando una carga de trabajo más equilibrada.

Tipos de Paralelismo

Al entrenar grandes modelos, se utilizan diferentes tipos de paralelismo:

  1. Paralelismo de Datos (DP): Esto divide los datos entre múltiples dispositivos usando el mismo modelo en cada uno. Cada dispositivo procesa una porción de los datos simultáneamente.

  2. Paralelismo de Modelo (MP): Esto divide el modelo en sí entre diferentes dispositivos. Partes del modelo se procesan en GPUs separadas.

  3. Paralelismo de Pipeline (PP): Esto divide el modelo en etapas, permitiendo que la data fluya a través de diferentes partes del modelo al mismo tiempo.

  4. Paralelismo de Expertos (EP): Esto coloca a los expertos en múltiples dispositivos. Si un dispositivo no puede contener todos los expertos, el trabajo se distribuye entre varios dispositivos.

  5. Paralelismo de Fragmentación de Expertos (ESP): Esto descompone un único experto en piezas más pequeñas que pueden ejecutarse en múltiples dispositivos.

Mientras que los modelos MoE típicamente usan EP y ESP juntos para ser más eficientes, todavía enfrentan desafíos relacionados con la sobrecarga de comunicación durante el entrenamiento.

Cuellos de Botella en el Rendimiento

La velocidad de entrenamiento de grandes modelos MoE puede verse afectada significativamente por el tiempo que lleva comunicarse entre GPUs. La investigación muestra que la comunicación puede ocupar hasta el 60% del tiempo total de entrenamiento para las capas MoE en clústeres de GPUs de alta gama. Este problema empeora cuando se utilizan múltiples configuraciones paralelas al mismo tiempo.

Al buscar cómo mejorar el rendimiento del entrenamiento, los investigadores han abordado el problema desde diferentes ángulos. Algunos se han centrado en algoritmos que equilibran las cargas de trabajo entre los dispositivos. Otros han trabajado en mejorar la eficiencia de los métodos de comunicación. Sin embargo, muchas soluciones anteriores se han dirigido principalmente a los costos de comunicación asociados con el EP y han pasado por alto otros aspectos de comunicación que vienen con el MP y el ESP.

El Sistema Parm

En respuesta a estos desafíos, se creó Parm. Propone dos nuevos horarios de comunicación adaptados para mejorar la gestión de tareas al usar MP, EP y ESP juntos. La idea central de estos horarios es reducir las computaciones y la comunicación innecesarias al colocar estratégicamente las tareas de comunicación.

Características Clave de Parm

  1. Volumen de Comunicación Reducido: Parm se enfoca en gestionar con qué frecuencia se envía data de ida y vuelta entre dispositivos, lo que lleva a menos comunicación total.

  2. Eliminación de Tareas Duplicadas: El sistema organiza las tareas de tal manera que se evite que la misma computación se realice múltiples veces en diferentes dispositivos.

  3. Superposición de Tareas: Parm permite que diferentes tipos de comunicaciones se superpongan entre sí. Esto es esencial para aprovechar al máximo el ancho de banda disponible.

Al introducir horarios dedicados, Parm puede ejecutar tareas de manera más eficiente, lo que lleva a tiempos de entrenamiento más cortos.

Cómo Funciona Parm

Parm opera desactivando MP temporalmente durante ciertas tareas para optimizar el rendimiento. Se implementan dos horarios: uno antes de la operación de puerta de la capa MoE y otro antes de la operación de combinación. Esto previene la duplicación de tareas y permite un flujo de información más fluido.

Resumen de Horarios

  • Primer Horario: Desactiva MP antes de la función de puerta y lo activa nuevamente después de la operación de combinación. Esto permite una división eficiente de tareas.

  • Segundo Horario: Desactiva MP después de la función de puerta y lo reactiva antes del proceso de combinación. Esto ofrece flexibilidad según las condiciones específicas.

Cada horario tiene ventajas distintas según varias configuraciones, y elegir el correcto ayuda a minimizar el tiempo de entrenamiento.

Resultados Experimentales

Para validar la efectividad de Parm, se realizaron pruebas exhaustivas usando un servidor de 8 GPUs y un clúster de 32 GPUs. Los resultados muestran que Parm supera significativamente a sistemas existentes como DeepSpeed-MoE, logrando aceleraciones que van de 1.13 a 5.77 veces en una amplia variedad de configuraciones MoE.

Métricas de Rendimiento

En diferentes configuraciones, Parm pudo reducir el tiempo total de entrenamiento mientras también entrenaba modelos del mundo real, incluyendo versiones basadas en GPT-2 y BERT. Los experimentos confirmaron que las estrategias de programación de Parm pueden generar un rendimiento de entrenamiento más rápido de manera consistente en múltiples escenarios.

Conclusión

La creación de Parm marca un paso importante hacia adelante en el entrenamiento de grandes modelos de IA. Al mejorar cómo se programan las tareas y las comunicaciones, ha mostrado ganancias sustanciales en eficiencia y velocidad. A medida que la demanda de modelos de IA más grandes y complejos sigue creciendo, sistemas como Parm serán cruciales para superar los obstáculos asociados con el entrenamiento efectivo de estos modelos.

Fuente original

Título: Parm: Efficient Training of Large Sparsely-Activated Models with Dedicated Schedules

Resumen: Sparsely-activated Mixture-of-Expert (MoE) layers have found practical applications in enlarging the model size of large-scale foundation models, with only a sub-linear increase in computation demands. Despite the wide adoption of hybrid parallel paradigms like model parallelism, expert parallelism, and expert-sharding parallelism (i.e., MP+EP+ESP) to support MoE model training on GPU clusters, the training efficiency is hindered by communication costs introduced by these parallel paradigms. To address this limitation, we propose Parm, a system that accelerates MP+EP+ESP training by designing two dedicated schedules for placing communication tasks. The proposed schedules eliminate redundant computations and communications and enable overlaps between intra-node and inter-node communications, ultimately reducing the overall training time. As the two schedules are not mutually exclusive, we provide comprehensive theoretical analyses and derive an automatic and accurate solution to determine which schedule should be applied in different scenarios. Experimental results on an 8-GPU server and a 32-GPU cluster demonstrate that Parm outperforms the state-of-the-art MoE training system, DeepSpeed-MoE, achieving 1.13$\times$ to 5.77$\times$ speedup on 1296 manually configured MoE layers and approximately 3$\times$ improvement on two real-world MoE models based on BERT and GPT-2.

Autores: Xinglin Pan Wenxiang Lin, Shaohuai Shi, Xiaowen Chu, Weinong Sun, Bo Li

Última actualización: 2024-06-30 00:00:00

Idioma: English

Fuente URL: https://arxiv.org/abs/2407.00599

Fuente PDF: https://arxiv.org/pdf/2407.00599

Licencia: https://creativecommons.org/licenses/by/4.0/

Cambios: Este resumen se ha elaborado con la ayuda de AI y puede contener imprecisiones. Para obtener información precisa, consulte los documentos originales enlazados aquí.

Gracias a arxiv por el uso de su interoperabilidad de acceso abierto.

Más de autores

Artículos similares