Paralelismo en LLM: ¿en qué se diferencian TP, PP, DP y EP?
Traducción automática
Este artículo se tradujo automáticamente a partir de la versión original en inglés.
El paralelismo de tensores divide las operaciones sobre los pesos. El paralelismo de pipeline divide las capas. El paralelismo de datos en serving ejecuta réplicas independientes del modelo. El paralelismo de expertos distribuye los expertos de un modelo de mezcla de expertos. Elige según la capacidad de memoria necesaria para el modelo, el tráfico y los enlaces entre GPUs.
Estos son cuatro enfoques habituales. Los despliegues grandes pueden combinarlos, y el entrenamiento con contextos largos también puede usar paralelismo de secuencia o de contexto.
¿Qué almacena cada GPU?
| Enfoque | Distribución del modelo | Comunicación que hay que tener en cuenta |
|---|---|---|
| Paralelismo de tensores, TP | Partes de las matrices de pesos | Operaciones colectivas frecuentes durante la ejecución del modelo |
| Paralelismo de pipeline, PP | Grupos de capas consecutivas | Activaciones que se transfieren entre etapas |
| Paralelismo de datos, DP | Réplicas completas de serving | Sin cálculo del modelo entre réplicas para solicitudes independientes |
| Paralelismo de expertos, EP | Distintos expertos de MoE | Tokens dirigidos a los expertos, a menudo mediante un intercambio de todos a todos |
El DP de entrenamiento difiere de las réplicas de serving: el entrenamiento combina gradientes, y ZeRO o FSDP pueden repartir el estado de entrenamiento. Los sistemas MoE también pueden coordinar componentes compartidos aunque parte del trabajo se ejecute en paralelo por datos.
El informe de Llama 3 describe el paralelismo combinado para entrenar modelos grandes y la inferencia con paralelismo de pipeline. Su despliegue muestra por qué hay que considerar juntas la distribución del modelo y la topología; no establece una configuración universal.
Elige el grupo más pequeño que pueda atender la carga
Si un modelo de serving cabe en una GPU con suficiente capacidad para el KV cache, empieza probando réplicas independientes. Pueden aumentar el tasa total de procesamiento sin añadir operaciones colectivas a cada solicitud.
Si el modelo necesita varias GPUs, prueba TP dentro de un nodo con enlaces rápidos entre GPU. Dividirlo en más partes puede reducir la memoria por GPU, pero añade comunicación. Si el modelo abarca varios nodos, compara PP y las combinaciones de TP y PP; los tiempos desiguales de las etapas y los periodos de inactividad del pipeline pueden reducir la utilización.
Para un modelo MoE, mide la distribución de expertos, el equilibrio de tokens y el tráfico de interconexión antes de añadir EP. La memoria disponible para los expertos es solo una parte de la decisión.
Mantén constantes los prompts, las longitudes de salida, la precisión y los umbrales de latencia en la comparación. Indica la tasa de procesamiento del grupo completo de serving; dividirlo por el número de GPU no permite predecir cómo escalará otra topología.
La sección sobre paralelismo de la LLM Engineering Guide ilustra las cuatro distribuciones.