Folding Tensor and Sequence Parallelism for Memory-Efficient Transformer Training & Inference
Ce papier présente la parallélisation tensorielle et séquentielle (TSP), une nouvelle stratégie d'exécution qui combine le fractionnement des poids et des jetons sur un seul axe de dispositif pour réduire simultanément la surcharge mémoire des paramètres et des activations, offrant ainsi une alternative efficace sur le plan matériel pour l'entraînement et l'inférence de modèles de transformateurs à contexte long et à contraintes mémoire.
Article original sous licence CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Ceci est une explication générée par l'IA de l'article ci-dessous. Elle n'a pas été rédigée ni approuvée par les auteurs. Pour une précision technique, consultez l'article original. Lire la clause de non-responsabilité complète
Imaginez que vous essayez de résoudre un immense puzzle avec un groupe d'amis, mais que vous ne disposez que d'une très petite table (la mémoire de votre ordinateur) pour travailler. Le puzzle est si grand qu'aucune personne seule ne peut tenir toutes les pièces à la fois.
Ce document présente une nouvelle méthode permettant à une équipe d'ordinateurs (GPU) de travailler ensemble pour entraîner des modèles d'IA gigantesques, qui sont essentiellement ces immenses puzzles. Les auteurs appellent leur nouvelle stratégie TSP (Parallélisme Tensoriel et Séquentiel).
Voici le détail utilisant des analogies simples :
Le Problème : Deux Vieilles Façons de Partager le Travail
Pour résoudre le puzzle, l'équipe utilise généralement l'une des deux vieilles méthodes, mais toutes deux présentent des défauts :
La Méthode « Division des Poids » (Parallélisme Tensoriel) :
Imaginez que les pièces du puzzle sont les « règles » du jeu (les poids du modèle). Dans cette méthode, vous coupez le livre de règles en deux. La personne A tient la première moitié des règles, et la personne B tient la seconde moitié.- Le Bon : Vous économisez de la place sur la table car vous ne stockez pas le livre de règles entier deux fois.
- Le Mauvais : Si le puzzle contient une longue histoire (une longue séquence de mots), tout le monde doit encore tenir l'histoire entière dans ses mains pour jouer. Si l'histoire est énorme, vos mains (mémoire) se remplissent et vous plantez.
La Méthode « Division de l'Histoire » (Parallélisme Séquentiel) :
Imaginez que les pièces du puzzle sont l'histoire elle-même. Dans cette méthode, la personne A tient la première moitié de l'histoire, et la personne B tient la seconde moitié.- Le Bon : Vous économisez de la place sur la table car vous ne tenez pas l'histoire entière d'un coup.
- Le Mauvais : Tout le monde doit encore mémoriser le livre de règles entier. Si le livre de règles est énorme, votre cerveau (mémoire) se remplit et vous plantez.
L'Ancien Hybride : Habituellement, les équipes tentent de faire les deux en utilisant deux groupes distincts d'amis. Un groupe divise les règles, et un groupe différent divise l'histoire. Mais cela est inefficace car cela utilise tous vos amis juste pour diviser le travail, ne laissant personne pour aider avec d'autres tâches (comme le Parallélisme des Données).
La Solution : La Méthode « Pliée » (TSP)
Les auteurs disent : « Pourquoi utiliser deux groupes séparés ? Pliions le travail sur un seul axe. »
Dans le TSP, chaque personne du groupe fait les deux choses en même temps :
- Elle tient une tranche du livre de règles (poids).
- Elle tient une tranche de l'histoire (séquence).
L'Analogie :
Imaginez que vous êtes à un dîner.
- Vieille Façon : Vous avez une table où une personne fait circuler le menu (poids) pendant que tout le monde lit le livre entier. Une autre table a des gens qui font circuler le livre (histoire) pendant que tout le monde mémorise le menu entier.
- Façon TSP : Tout le monde à la table reçoit un petit morceau du menu et un petit morceau de l'histoire.
Comment Ils Font Fonctionner Cela (Les Tours de Magie)
Puisque chacun a un tout petit morceau du menu et un tout petit morceau de l'histoire, ils doivent beaucoup se parler pour finir le puzzle. Le document décrit deux façons astucieuses de le faire sans être submergés :
Pour les parties « Histoire » (Attention) :
Imaginez que le groupe a besoin de connaître l'histoire entière pour comprendre une phrase spécifique. Au lieu que tout le monde crie l'histoire entière d'un coup, ils se relaient. Une personne diffuse sa partie du menu à tout le monde. Ensuite, tout le monde calcule sa partie de l'histoire, et ils échangent rapidement leurs morceaux d'histoire (clés et valeurs) pour reconstruire le contexte complet. C'est comme une course de relais où ils passent le témoin (données) tout en courant.Pour les parties « Règles » (MLP) :
Imaginez que le groupe doit appliquer différentes règles à leurs morceaux d'histoire. Au lieu de s'arrêter pour crier les règles, ils font passer les pages du livre de règles en cercle (un anneau). La personne A fait ses calculs avec la page 1, puis passe la page 1 à la personne B pendant que la personne B passe la page 2 à la personne C. Pendant que les pages bougent, tout le monde est occupé à faire des calculs. Cela maintient le « trafic » en mouvement pendant que le « travail » est accompli.
Pourquoi Est-ce Mieux ?
Le document affirme que le TSP est une solution « consciente du matériel », ce qui signifie qu'elle est conçue spécifiquement pour la façon dont les puces informatiques modernes communiquent entre elles.
- Économies de Mémoire : Parce que chacun tient un morceau des règles et un morceau de l'histoire, la mémoire requise sur chaque ordinateur diminue considérablement. Cela permet à l'équipe de gérer des histoires beaucoup plus longues (contexte plus long) sans épuiser la mémoire.
- Vitesse : Même s'ils échangent plus de données d'avant en arrière (ce qui semble plus lent), ils le font d'une manière qui se superpose à leur réflexion. Le « passage » a lieu pendant qu'ils « réfléchissent », donc le temps total ne s'allonge pas beaucoup.
- Tenir dans la Pièce : Dans un cluster informatique, la connexion la plus rapide est généralement entre les puces sur la même machine (comme des gens assis à la même table). La connexion plus lente est entre les machines différentes (des gens dans des pièces différentes).
- Les anciennes méthodes forçaient souvent l'équipe à se diviser entre différentes pièces, les ralentissant.
- Le TSP permet à toute l'équipe « divisée» de tenir sur une seule machine (une seule table), les maintenant dans la voie rapide.
Les Résultats
Les auteurs ont testé cela sur un cluster massif de 1 024 GPU puissants (MI300X).
- Mémoire : Le TSP a utilisé la moindre quantité de mémoire à chaque test, surtout lorsque les histoires étaient très longues.
- Vitesse : Le TSP était aussi rapide, voire plus rapide, que les anciennes méthodes.
- Évolutivité : Alors qu'ils ajoutaient plus d'ordinateurs au groupe, le TSP continuait à bien performer, tandis que les anciennes méthodes commençaient à lutter avec les limites de mémoire.
En bref : Le TSP est une façon plus intelligente d'organiser une équipe d'ordinateurs. Au lieu de diviser les « règles » et l'« histoire » en groupes séparés, il les combine afin que chaque ordinateur détienne un peu des deux. Cela économise de la place, permet des histoires plus longues et maintient l'équipe travaillant efficacement sur le même réseau rapide.
Noyé(e) sous les articles dans votre domaine ?
Recevez des digests quotidiens des articles les plus récents correspondant à vos mots-clés de recherche — avec des résumés techniques, dans votre langue.