Parallélisme des modèles et des pipelines
Lorsqu'un modèle est trop volumineux pour tenir sur un seul GPU, le parallélisme du modèle et du pipeline divise le modèle lui-même entre les appareils.
Aperçu
This is what makes training giant language models with hundreds of billions of parameters physically possible.
Plongée profonde
Le parallélisme des modèles divise un modèle unique sur plusieurs GPU afin qu'aucun appareil n'ait besoin de supporter tous les poids. Il existe deux saveurs principales. Le parallélisme tensoriel (intra-couche) divise les calculs à l'intérieur d'une couche, par exemple en découpant une grande multiplication matricielle sur des GPU qui calculent chacun une partie de la sortie. Le parallélisme des pipelines (inter-couches) attribue différentes couches consécutives à différents GPU, de sorte que le bloc de couche 1 réside sur le GPU 0, le bloc 2 sur le GPU 1, et ainsi de suite, les activations étant transmises comme une chaîne d'assemblage. Le défi du pipeline naïf est la « bulle » : pendant que le GPU 0 fonctionne sur le premier lot, les GPU en aval restent inactifs. Le pipeline divise chaque lot en micro-lots afin que toutes les étapes restent occupées, améliorant ainsi considérablement l'utilisation.
Aperçu technique
Le parallélisme tensoriel (comme dans NVIDIA Megatron-LM) divise les matrices de poids par colonnes ou par lignes et utilise la réduction totale pour recombiner les résultats partiels, gardant ainsi la communication à l'intérieur d'un nœud NVLink rapide. Le parallélisme des pipelines (GPipe, PipeDream) divise le lot en micro-lots qui traversent les étapes selon un calendrier échelonné, réduisant ainsi le temps d'inactivité des « bulles ». Les deux sont souvent superposés, avec un parallélisme tensoriel au sein d’un nœud et un parallélisme pipeline entre les nœuds.
Impact stratégique
Coût et budget
Les décisions en matière d'architecture déterminent les performances et les coûts d'exploitation pendant des années.
Décisions plus claires
La formation technique aide les équipes à choisir la bonne pile, pas seulement la plus récente.
Contrôle qualité
De meilleurs choix d’ingénierie réduisent les incidents de fiabilité en production.
L’avenir du parallélisme des modèles et des pipelines
Les frameworks automatisent de plus en plus le problème difficile de décider comment partitionner un modèle sur plusieurs appareils, en utilisant le profilage et la recherche pour équilibrer le calcul et la communication. Attendez-vous à une intégration plus étroite du tenseur, du pipeline et du parallélisme des données (parallélisme 3D), à une planification de micro-lots plus intelligente pour éliminer presque les bulles de pipeline et à un matériel avec des interconnexions plus rapides, de sorte que la division d'une seule couche entre les puces devient moins chère et plus courante pour des modèles toujours plus grands.
Mise en œuvre dans le monde réel
Entraînement de modèles de style GPT avec NVIDIA Megatron-LM, qui répartit l'attention de chaque couche de transformateur et les matrices de rétroaction entre les GPU via le parallélisme tensoriel.
Utiliser GPipe pour placer différentes couches d'une vision géante ou d'un modèle de langage sur des accélérateurs distincts tandis que le micro-batching les occupe.
Le moteur de pipeline de DeepSpeed divise un modèle de plusieurs centaines de milliards de paramètres en étapes sur de nombreux nœuds.
Combiner le parallélisme tensoriel au sein d'un seul serveur à 8 GPU avec le parallélisme de pipeline couvrant plusieurs serveurs pour former un modèle beaucoup trop volumineux pour une seule machine.
Risques et garde-fous
L’optimisation d’un benchmark peut masquer des faiblesses plus larges du système.
Les coûts d’infrastructure et de maintenance sont souvent sous-estimés.
Les lacunes en matière de sécurité et d’observabilité peuvent se creuser à mesure que les systèmes deviennent plus complexes.
Feuille de route de mise en œuvre
Définissez les objectifs de latence, de qualité et de coût avant la mise en œuvre.
Benchmark dans des conditions de charge et de données réalistes.
Surveillance des instruments pour détecter les erreurs, la dérive et l'impact sur l'utilisateur.
Préparez les chemins de restauration et de réponse aux incidents avant la mise à l’échelle.
Continuez à explorer
Free newsletter
Get the daily AI briefing
Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.
One email each weekday. Unsubscribe in one click. We never sell or share your address.
Test yourself
Take the Model and Pipeline Parallelism quiz
Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.
Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation
Guide suivant
Parallélisme tensoriel pour les grands modèles
Questions fréquemment posées
What is Model and Pipeline Parallelism?
Lorsqu'un modèle est trop volumineux pour tenir sur un seul GPU, le parallélisme du modèle et du pipeline divise le modèle lui-même entre les appareils. C’est ce qui rend physiquement possible la formation de modèles de langage géants avec des centaines de milliards de paramètres.
Quel problème fondamental le parallélisme des modèles et des pipelines résout-il ?
Le parallélisme des modèles et des pipelines divise le modèle lui-même entre les appareils, permettant ainsi la formation de réseaux bien plus grands que ce qu'un seul GPU pourrait contenir.
Comment fonctionne la division du parallélisme tenseur (intra-couche) ?
Le parallélisme tensoriel divise le calcul au sein d'une seule couche, par exemple en divisant une grande matrice de poids afin que chaque GPU calcule une partie de la sortie.
Qu'est-ce que la « bulle » dans le parallélisme naïf des pipelines ?
Au début d'une étape de pipeline, les étapes en aval n'ont pas encore d'entrée et restent inactives, ce qui fait perdre du temps au GPU ; cet espace vide est appelé la bulle.
Comment le parallélisme des pipelines réduit-il la bulle ?
La division d'un lot en micro-lots permet à plusieurs micro-lots d'occuper différentes étapes simultanément, gardant tous les GPU occupés et réduisant le temps d'inactivité.
Pourquoi le parallélisme tensoriel est-il généralement conservé au sein d'un seul nœud ?
Le parallélisme tensoriel communique fréquemment pour recombiner les résultats de matrice partielle, il est donc placé là où la bande passante d'interconnexion est la plus élevée, à l'intérieur d'un nœud sur NVLink.