ChatPaper.aiChatPaper

Diffusion en continu de DiLoCo avec communication superposée : Vers un Déjeuner Gratuit Distribué

Streaming DiLoCo with overlapping communication: Towards a Distributed Free Lunch

January 30, 2025
Auteurs: Arthur Douillard, Yanislav Donchev, Keith Rush, Satyen Kale, Zachary Charles, Zachary Garrett, Gabriel Teston, Dave Lacey, Ross McIlroy, Jiajun Shen, Alexandre Ramé, Arthur Szlam, Marc'Aurelio Ranzato, Paul Barham
cs.AI

Résumé

L'entraînement des grands modèles de langage (LLMs) est généralement distribué sur un grand nombre d'accélérateurs pour réduire le temps d'entraînement. Étant donné que les états internes et les gradients de paramètres doivent être échangés à chaque étape de gradient, tous les appareils doivent être situés au même endroit en utilisant des liens de communication à faible latence et à haut débit pour prendre en charge le volume élevé de bits échangés requis. Récemment, des algorithmes distribués tels que DiLoCo ont assoupli cette contrainte de co-localisation : les accélérateurs peuvent être regroupés en "travailleurs", où les synchronisations entre les travailleurs ne se produisent que rarement. Cela signifie à son tour que les travailleurs peuvent se permettre d'être connectés par des liens de communication à plus faible bande passante sans affecter la qualité de l'apprentissage. Cependant, dans ces méthodes, la communication entre les travailleurs nécessite toujours la même bande passante maximale qu'auparavant, car les synchronisations exigent que tous les paramètres soient échangés entre tous les travailleurs. Dans cet article, nous améliorons DiLoCo de trois manières. Premièrement, nous synchronisons uniquement des sous-ensembles de paramètres séquentiellement, plutôt que tous en une seule fois, ce qui réduit considérablement la bande passante maximale. Deuxièmement, nous permettons aux travailleurs de continuer l'entraînement tout en synchronisant, ce qui réduit le temps de calcul. Troisièmement, nous quantifions les données échangées par les travailleurs, ce qui réduit encore la bande passante entre les travailleurs. En combinant correctement ces modifications, nous montrons expérimentalement que nous pouvons distribuer l'entraînement de paramètres à l'échelle du milliard et atteindre une qualité similaire à celle d'avant, tout en réduisant la bande passante requise de deux ordres de grandeur.
English
Training of large language models (LLMs) is typically distributed across a large number of accelerators to reduce training time. Since internal states and parameter gradients need to be exchanged at each and every single gradient step, all devices need to be co-located using low-latency high-bandwidth communication links to support the required high volume of exchanged bits. Recently, distributed algorithms like DiLoCo have relaxed such co-location constraint: accelerators can be grouped into ``workers'', where synchronizations between workers only occur infrequently. This in turn means that workers can afford being connected by lower bandwidth communication links without affecting learning quality. However, in these methods, communication across workers still requires the same peak bandwidth as before, as the synchronizations require all parameters to be exchanged across all workers. In this paper, we improve DiLoCo in three ways. First, we synchronize only subsets of parameters in sequence, rather than all at once, which greatly reduces peak bandwidth. Second, we allow workers to continue training while synchronizing, which decreases wall clock time. Third, we quantize the data exchanged by workers, which further reduces bandwidth across workers. By properly combining these modifications, we show experimentally that we can distribute training of billion-scale parameters and reach similar quality as before, but reducing required bandwidth by two orders of magnitude.

Summary

AI-Generated Summary

PDF307January 31, 2025