ChatPaper.aiChatPaper

Transmissão de DiLoCo com comunicação sobreposta: Rumo a um Almoço Grátis Distribuído

Streaming DiLoCo with overlapping communication: Towards a Distributed Free Lunch

January 30, 2025
Autores: 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

Resumo

O treinamento de grandes modelos de linguagem (LLMs) é tipicamente distribuído entre um grande número de aceleradores para reduzir o tempo de treinamento. Como os estados internos e os gradientes de parâmetros precisam ser trocados a cada passo de gradiente, todos os dispositivos precisam estar localizados no mesmo local, utilizando links de comunicação de baixa latência e alta largura de banda para suportar o alto volume de bits trocados necessário. Recentemente, algoritmos distribuídos como o DiLoCo relaxaram essa restrição de co-localização: os aceleradores podem ser agrupados em "workers", onde as sincronizações entre os workers ocorrem apenas ocasionalmente. Isso significa que os workers podem ser conectados por links de comunicação de menor largura de banda sem afetar a qualidade do aprendizado. No entanto, nesses métodos, a comunicação entre os workers ainda requer a mesma largura de banda máxima de antes, já que as sincronizações exigem que todos os parâmetros sejam trocados entre todos os workers. Neste artigo, melhoramos o DiLoCo de três maneiras. Primeiro, sincronizamos apenas subconjuntos de parâmetros em sequência, em vez de todos de uma vez, o que reduz significativamente a largura de banda máxima. Segundo, permitimos que os workers continuem treinando enquanto sincronizam, o que diminui o tempo de relógio de parede. Terceiro, quantizamos os dados trocados pelos workers, o que reduz ainda mais a largura de banda entre os workers. Ao combinar adequadamente essas modificações, mostramos experimentalmente que podemos distribuir o treinamento de parâmetros em escala de bilhões e alcançar qualidade semelhante à anterior, mas reduzindo a largura de banda necessária em duas ordens de magnitude.
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