Aperçu
Un moyen de diviser les calculs au sein d'une seule couche de réseau neuronal sur plusieurs GPU afin qu'un modèle trop volumineux pour un seul appareil puisse toujours s'exécuter. C’est important car les modèles frontières comportent des centaines de milliards de paramètres qu’aucun GPU ne peut contenir ou calculer assez rapidement à lui seul.
Le parallélisme tensoriel pour les grands modèles est un élément technique qui affecte la qualité du modèle, le coût de l'infrastructure, la latence et la fiabilité à grande échelle.
Plongée profonde
Le parallélisme tensoriel (également appelé parallélisme de modèle intra-couche) divise les matrices de poids individuelles sur les GPU plutôt que de placer des couches entières sur des appareils distincts. Dans un transformateur, les grandes multiplications matricielles (projections d'attention et MLP feed-forward) sont divisées : par exemple, la première matrice de poids du MLP est partitionnée par colonnes et la seconde par lignes, de sorte que chaque GPU calcule une tranche et une seule réduction totale combine les résultats. L’attention est répartie entre les têtes, chaque GPU gérant un sous-ensemble. Étant donné que chaque GPU effectue simultanément une partie de chaque couche, le parallélisme tensoriel réduit la mémoire par GPU et accélère le calcul, mais il nécessite une communication fréquente et à large bande passante entre les GPU de chaque couche. C'est pourquoi il est généralement confiné dans un nœud connecté par NVLink et combiné avec un pipeline et un parallélisme de données pour de très grandes tâches de formation et de service.
Aperçu technique
L'astuce, popularisée par Megatron-LM, consiste à choisir les dimensions des cloisons afin que la communication soit minimale. La division de la première matrice MLP par colonne permet à chaque GPU d'appliquer la non-linéarité localement sans synchronisation ; diviser la deuxième ligne par ligne signifie que les sorties n'ont besoin que d'une seule réduction totale pour additionner les résultats partiels. Chaque couche subit ainsi environ deux réductions complètes (en avant) et deux (en arrière). Étant donné que ces collectifs se produisent à chaque couche, la latence domine : le parallélisme tensoriel réside donc derrière des liaisons intra-nœuds rapides comme NVLink plutôt que des réseaux inter-nœuds plus lents.
Maîtriser le parallélisme tensoriel pour les grands modèles
Un moyen de diviser les calculs au sein d'une seule couche de réseau neuronal sur plusieurs GPU afin qu'un modèle trop volumineux pour un seul appareil puisse toujours s'exécuter. C’est important car les modèles frontières comportent des centaines de milliards de paramètres qu’aucun GPU ne peut contenir ou calculer assez rapidement à lui seul. Le parallélisme tensoriel pour les grands modèles est un élément technique qui affecte la qualité du modèle, le coût de l'infrastructure, la latence et la fiabilité à grande échelle. Pour acquérir une compréhension approfondie, traitez le parallélisme tensoriel pour les grands modèles comme un modèle opérationnel et non comme une fonctionnalité unique : définissez les résultats souhaités, clarifiez les hypothèses et séparez ce que le système peut faire de manière fiable de ce qui nécessite encore un jugement d'expert.
Dans la pratique, des équipes solides utilisant le parallélisme tensoriel pour les grands modèles optimisent les choix d'architecture, de données et d'infrastructure en fonction de la fiabilité et des coûts. Ils documentent des critères de réussite explicites, testent par rapport à des données et des flux de travail réalistes et itèrent en fonction des modèles d'échec observés plutôt que des victoires de référence ponctuelles. C’est là que la compréhension théorique se transforme en capacité durable au niveau des produits, des politiques et des opérations.
Les décisions en matière d'architecture déterminent les performances et les coûts d'exploitation pendant des années. Dans le même temps, l’optimisation d’un benchmark peut masquer des faiblesses plus larges du système. L'approche la plus résiliente consiste à combiner vitesse d'expérimentation et discipline de gouvernance : exécuter des projets pilotes, capturer des preuves, publier des journaux de décision et mettre à jour en permanence les protections à mesure que le comportement du modèle, les attentes des utilisateurs et les exigences réglementaires évoluent.
Impact stratégique
Les décisions en matière d'architecture déterminent les performances et les coûts d'exploitation pendant des années.
Les décisions en matière d'architecture déterminent les performances et les coûts d'exploitation pendant des années. Dans les déploiements de haute qualité, cela se traduit par des règles de fonctionnement mesurables, des limites de propriété et des rituels d'examen récurrents afin que les équipes puissent accroître la confiance au lieu de l'ambiguïté.
La formation technique aide les équipes à choisir la bonne pile, pas seulement la plus récente.
La formation technique aide les équipes à choisir la bonne pile, pas seulement la plus récente. Dans les déploiements de haute qualité, cela se traduit par des règles de fonctionnement mesurables, des limites de propriété et des rituels d'examen récurrents afin que les équipes puissent accroître la confiance au lieu de l'ambiguïté.
De meilleurs choix d’ingénierie réduisent les incidents de fiabilité en production.
De meilleurs choix d’ingénierie réduisent les incidents de fiabilité en production. Dans les déploiements de haute qualité, cela se traduit par des règles de fonctionnement mesurables, des limites de propriété et des rituels d'examen récurrents afin que les équipes puissent accroître la confiance au lieu de l'ambiguïté.
Mise en œuvre dans le monde réel
Entraînement d'un modèle de 175 B en partageant les matrices de poids de chaque couche sur 8 GPU dans un nœud connecté à NVLink à l'aide de Megatron-LM.
Servir un modèle de discussion de 70 B dans vLLM avec tensor_parallel_size=4 afin que les pondérations s'adaptent à quatre GPU et répondent en temps réel.
Diviser l'attention du transformateur entre les GPU afin que chaque appareil calcule un sous-ensemble, puis concaténer les sorties pour la couche suivante.
Combiner le parallélisme tensoriel au sein des nœuds et le parallélisme pipeline entre les nœuds pour former des modèles comportant des milliards de paramètres sur de grands clusters GPU.
Modèles de mise en œuvre
Parallélisme tensoriel pour les grands modèles en pratique
Entraînement d'un modèle de 175 B en partageant les matrices de poids de chaque couche sur 8 GPU dans un nœud connecté à NVLink à l'aide de Megatron-LM.
Entraîner un modèle de 175 B de paramètres en répartissant les matrices de poids de chaque couche sur 8 GPU dans un nœud connecté à NVLink à l'aide de Megatron-LM. Les équipes obtiennent généralement de meilleurs résultats lorsqu'elles définissent des seuils de qualité à l'avance, maintiennent un chemin d'escalade humaine pour les cas extrêmes et suivent à la fois les gains de productivité et les coûts d'erreur au fil du temps.
Parallélisme tensoriel pour les grands modèles en pratique
Servir un modèle de discussion de 70 B dans vLLM avec tensor_parallel_size=4 afin que les pondérations s'adaptent à quatre GPU et répondent en temps réel.
Servir un modèle de discussion de 70 B dans vLLM avec tensor_parallel_size=4 afin que les pondérations s'adaptent à quatre GPU et répondent en temps réel. Les équipes obtiennent généralement de meilleurs résultats lorsqu'elles définissent des seuils de qualité à l'avance, gardent un chemin d'escalade humain pour les cas extrêmes et suivent à la fois les gains de productivité et les coûts d'erreur au fil du temps.
Parallélisme tensoriel pour les grands modèles en pratique
Diviser l'attention du transformateur entre les GPU afin que chaque appareil calcule un sous-ensemble, puis concaténer les sorties pour la couche suivante.
Répartir l'attention des transformateurs sur les GPU afin que chaque appareil calcule un sous-ensemble, puis concaténer les sorties pour la couche suivante. Les équipes obtiennent généralement de meilleurs résultats lorsqu'elles définissent des seuils de qualité à l'avance, gardent un chemin d'escalade humaine pour les cas extrêmes et suivent à la fois les gains de productivité et les coûts d'erreur au fil du temps.
Parallélisme tensoriel pour les grands modèles en pratique
Combiner le parallélisme tensoriel au sein des nœuds et le parallélisme pipeline entre les nœuds pour former des modèles comportant des milliards de paramètres sur de grands clusters GPU.
Combiner le parallélisme tensoriel au sein des nœuds et le parallélisme pipeline entre les nœuds pour former des modèles comportant des milliers de milliards de paramètres sur de grands clusters GPU. Les équipes obtiennent généralement de meilleurs résultats lorsqu'elles définissent des seuils de qualité à l'avance, gardent un chemin d'escalade humain pour les cas extrêmes et suivent à la fois les gains de productivité et les coûts d'erreur au fil du temps.
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.
Définissez les objectifs de latence, de qualité et de coût avant la mise en œuvre. Traitez chaque étape comme une porte de preuves : si les critères ne sont pas remplis, suspendez le déploiement, comblez l'écart, puis étendez l'utilisation.
Benchmark dans des conditions de charge et de données réalistes.
Benchmark dans des conditions de charge et de données réalistes. Traitez chaque étape comme une porte de preuves : si les critères ne sont pas remplis, suspendez le déploiement, comblez l'écart, puis étendez l'utilisation.
Surveillance des instruments pour détecter les erreurs, la dérive et l'impact sur l'utilisateur.
Surveillance des instruments pour détecter les erreurs, la dérive et l'impact sur l'utilisateur. Traitez chaque étape comme une porte de preuves : si les critères ne sont pas remplis, suspendez le déploiement, comblez l'écart, puis étendez l'utilisation.
Préparez les chemins de restauration et de réponse aux incidents avant la mise à l’échelle.
Préparez les chemins de restauration et de réponse aux incidents avant la mise à l’échelle. Traitez chaque étape comme une porte de preuves : si les critères ne sont pas remplis, suspendez le déploiement, comblez l'écart, puis étendez l'utilisation.