중첩 통신을 이용한 스트리밍 DiLoCo: 분산된 무료 점심을 향하여
Streaming DiLoCo with overlapping communication: Towards a Distributed Free Lunch
January 30, 2025
저자: 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
초록
대형 언어 모델 (LLM)의 훈련은 일반적으로 훈련 시간을 줄이기 위해 많은 가속기에 분산되어 진행됩니다. 각 기울기 단계에서 내부 상태와 매개변수 기울기를 교환해야 하기 때문에 모든 장치는 필요한 고용량 비트를 지원하기 위해 저지연 고대역폭 통신 링크를 사용하여 동시에 위치해야 합니다. 최근에는 DiLoCo와 같은 분산 알고리즘이 이러한 동시 위치 제약을 완화시켰습니다: 가속기는 "작업자"로 그룹화될 수 있으며 작업자 간 동기화는 드물게만 발생합니다. 이는 작업자가 학습 품질에 영향을 주지 않고 더 낮은 대역폭 통신 링크로 연결될 수 있다는 것을 의미합니다. 그러나 이러한 방법에서도 작업자 간 통신은 이전과 동일한 최대 대역폭이 필요하며, 동기화는 모든 매개변수가 모든 작업자 간에 교환되어야 하기 때문입니다. 본 논문에서는 DiLoCo를 세 가지 방법으로 개선합니다. 첫째, 모든 것을 한꺼번에 동기화하는 대신 일련의 매개변수 부분만 동기화합니다. 이는 최대 대역폭을 크게 줄입니다. 둘째, 동기화하는 동안 작업자가 계속 훈련할 수 있도록 허용하여 벽 시계 시간을 줄입니다. 셋째, 작업자 간에 교환되는 데이터를 양자화하여 대역폭을 더욱 줄입니다. 이러한 수정 사항을 적절히 결합하여 실험적으로 억 단위의 매개변수의 훈련을 분산시키고 이전과 유사한 품질에 도달할 수 있지만 필요한 대역폭을 2개 순서로 줄일 수 있음을 보여줍니다.
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