"GPU가 같은 데이터센터에 있지 않아도 하나의 모델을 함께 학습시킬 수 있을까요?"
업계는 NVLink, InfiniBand, RoCE, Spectrum-X처럼 더 빠르고 지연 시간이 짧은 네트워크를 구축하는 데 집중해 왔습니다.
그런데 Google DeepMind는 정반대의 질문을 던졌습니다.
네트워크를 더 빠르게 만드는 대신, 애초에 통신 빈도 자체를 크게 줄이면 어떨까?
이 질문에서 출발한 것이 DiLoCo(Distributed Low-Communication training)입니다.
이번 글에서는 DiLoCo가 어떻게 통신 요구량을 줄이는지, 이후 등장한 Streaming DiLoCo와 Decoupled DiLoCo가 어떤 한계를 개선했는지, 그리고 이러한 접근이 멀티클러스터와 네오클라우드 GPU 운영에 어떤 의미를 갖는지 살펴보겠습니다.
분산 학습에 초고속 네트워크가 필요했던 이유
일반적인 동기식 데이터 병렬 학습에서는 각 GPU가 서로 다른 데이터 배치를 처리한 뒤, 학습 스텝이 끝날 때마다 계산한 그래디언트를 교환하고 동기화합니다.
대표적인 방식이 All-Reduce입니다.
All-Reduce: 여러 GPU가 각자 계산한 값을 서로 교환하고 합산한 뒤, 동일한 결과를 모든 GPU에 다시 전달하는 집단 통신 연산입니다.
모델과 배치 크기에 따라 한 번의 학습 스텝에 걸리는 시간은 달라집니다. 하지만 연산이 반복될 때마다 GPU 간 통신이 발생하기 때문에 네트워크 지연과 대역폭이 전체 학습 성능에 직접적인 영향을 줍니다. 이 때문에 대규모 동기식 학습은 일반적으로 GPU를 동일한 데이터센터 안의 고대역폭·저지연 네트워크로 연결해 구성합니다.
반대로 여러 데이터센터에 흩어져 있거나 상대적으로 느린 네트워크로 연결된 GPU는 하나의 동기식 학습 작업에 활용하기 어렵습니다.
DiLoCo는 바로 이 “매 학습 스텝마다 모든 워커가 동기화해야 한다”는 전제를 바꿨습니다.
DiLoCo란? 동기화 빈도를 줄이는 분산 학습
일반적인 동기식 분산 학습에서는 GPU들이 한 번의 학습 스텝을 마칠 때마다 계산 결과를 공유합니다. 반면 DiLoCo에서는 여러 워커가 일정 기간 각자 학습한 뒤에만 결과를 모읍니다.
쉽게 말하면, 여러 팀이 같은 초안에서 출발해 각자 일정 분량을 수정한 뒤, 바뀐 내용을 한 번에 모아 새로운 공통본을 만드는 방식입니다.
DiLoCo의 학습 사이클은 다음과 같이 진행됩니다.
전역 모델을 여러 워커에 배포합니다.
각 워커가 자신의 데이터로 여러 번의 로컬 학습을 수행합니다.
로컬 학습이 끝나면 모델 변화량인 의사 그래디언트를 계산합니다.
각 워커가 의사 그래디언트를 외부 최적화기로 전달합니다.
외부 최적화기가 여러 워커의 업데이트를 모아 전역 모델을 갱신합니다.
갱신된 모델을 다시 각 워커에 배포합니다.
같은 과정을 반복합니다.
여기서 워커(Worker)는 독립적으로 로컬 학습을 수행하는 단위입니다. 하나의 GPU나 TPU일 수도 있고, 내부적으로 빠르게 연결된 여러 가속기로 구성된 소규모 클러스터일 수도 있습니다.
각 워커 안에서는 내부 최적화기(Inner Optimizer)가 실제 학습을 진행합니다. DiLoCo의 대표 실험에서는 AdamW를 사용했습니다.
로컬 학습이 끝난 뒤에는 각 워커가 처음 받은 모델과 현재 모델의 차이를 계산합니다. 이 모델 변화량을 의사 그래디언트(Pseudo-gradient)라고 합니다.
외부 최적화기(Outer Optimizer)는 여러 워커의 의사 그래디언트를 모아 전역 모델을 갱신하는 역할을 합니다. 대표 실험에서는 Nesterov Momentum이 사용됐습니다.
기존 동기식 분산 학습이 매 스텝마다 통신한다면, DiLoCo는 수백 개의 로컬 학습 스텝이 끝난 뒤에만 워커 사이에서 통신합니다.
Google DeepMind는 C4 데이터셋과 8개 워커를 사용한 실험에서, 완전 동기식 학습과 유사한 성능을 보이면서 워커 간 통신 횟수를 500배 줄였다고 보고했습니다.
즉 DiLoCo의 핵심은 네트워크를 더 빠르게 만드는 것이 아니라, 워커들이 서로 통신해야 하는 횟수 자체를 줄이는 것입니다.
Streaming DiLoCo: 피크 대역폭과 통신 대기 줄이기
DiLoCo는 통신 빈도는 줄였지만, 한 가지 문제가 남아 있었습니다. 통신이 일어나는 그 순간에는 여전히 모델 전체 파라미터를 한꺼번에 주고받아야 했고, 그동안 워커는 학습을 멈추고 기다려야 했습니다.
2025년 공개된 Streaming DiLoCo는 이 지점을 세 가지 방식으로 개선했습니다.
1. 파라미터를 부분별로 나눠 동기화
대용량 파일 하나를 한 번에 보내는 대신 여러 조각으로 나눠 순서대로 보내는 방식입니다. 기존 DiLoCo는 동기화 시점에 모델 전체의 업데이트를 한꺼번에 교환합니다.Streaming DiLoCo는 모델 파라미터를 여러 부분으로 나누고, 각 부분을 순차적으로 동기화합니다. 모델 전체를 동시에 전송하지 않기 때문에 순간적으로 필요한 최대 네트워크 대역폭을 낮출 수 있습니다.
2. 통신과 학습 계산을 중첩
파일이 모두 전송될 때까지 기다리지 않고, 전송이 진행되는 동안 다음 작업을 계속하는 방식입니다. Streaming DiLoCo에서는 일부 파라미터를 동기화하는 동안에도 나머지 파라미터를 이용한 학습을 계속할 수 있습니다. 통신과 계산을 겹쳐 실행함으로써 워커가 동기화를 기다리는 시간을 줄이고 전체 학습 시간을 단축합니다.
3. 전송 데이터를 양자화
같은 정보를 더 적은 비트로 표현해 전송할 데이터 크기를 줄이는 방식입니다.워커 사이에서 교환하는 업데이트 값을 낮은 정밀도로 표현하면 전송해야 하는 데이터 크기를 줄일 수 있습니다. Streaming DiLoCo 논문은 이 세 가지 개선을 결합해, 수십억 파라미터 규모 모델에서 기존과 비슷한 학습 품질을 유지하면서도 워커 간 요구 대역폭을 최대 약 100배까지 줄일 수 있음을 실험으로 보였습니다.
Decoupled DiLoCo: 느린 워커를 기다리지 않는 비동기 학습
2026년 4월, Google DeepMind는 한 단계 더 나아간 Decoupled DiLoCo를 공개했습니다.
기존 DiLoCo와 Streaming DiLoCo는 통신량을 크게 줄였지만 기본적으로는 동기식 구조였습니다. 동기화 시점이 되면 모든 워커가 준비될 때까지 기다려야 했습니다. 따라서 일부 워커가 느려지거나 장애가 발생하면 다른 워커의 학습도 함께 지연될 수 있었습니다.
Decoupled DiLoCo는 이 문제를 해결하기 위해 학습 작업을 서로 독립적으로 실행되는 여러 Learner로 나눕니다.
각 Learner는 다른 Learner를 기다리지 않고 자신의 속도로 로컬 학습을 진행합니다. 학습한 파라미터의 일부는 중앙의 Synchronizer로 비동기적으로 전달됩니다. Synchronizer는 도착한 업데이트를 모아 전역 모델에 반영하고, 느리거나 장애가 발생한 Learner는 전체 학습을 중단시키지 않도록 우회합니다.
Learner: 독립적으로 로컬 학습을 수행하는 컴퓨팅 단위
Synchronizer: 여러 Learner가 전달한 모델 업데이트를 모아 전역 모델에 반영하는 중앙 조정 계층
Google DeepMind가 공개한 8개 데이터센터(5B 모델·95% 활용률 기준)" 환경의 시뮬레이션에서는 기존 데이터 병렬 방식이 약 198Gbps의 데이터센터 간 대역폭을 요구한 반면, Decoupled DiLoCo는 약 0.84Gbps를 사용했습니다.
하드웨어 장애를 인위적으로 발생시킨 대규모 시뮬레이션(약 120만 칩)에서는, 실제 학습에 유효하게 활용된 연산 비율인 Goodput이 Decoupled DiLoCo는 88%를 유지했습니다. 반면 기존 데이터 병렬 방식은 장애 대응(elasticity)을 적용해도 58%까지, 장애 대응이 없으면 27%까지 낮아졌습니다. Gemma 4 계열 모델로 진행한 실험에서 최종 ML 벤치마크 평균 성능은 각각 64.4%와 64.1%로 유사한 수준이었습니다.
Decoupled DiLoCo는 단순히 통신량을 줄이는 것을 넘어, 느린 워커와 하드웨어 장애가 전체 학습에 미치는 영향을 격리하는 구조로 발전한 것입니다.
DiLoCo·Streaming DiLoCo·Decoupled DiLoCo 비교
구분 | DiLoCo | Streaming DiLoCo | Decoupled DiLoCo |
|---|---|---|---|
핵심 개선 | 수백 번의 로컬 학습 후 워커 간 동기화 | 부분 동기화, 통신·계산 중첩, 양자화 | 독립 Learner와 중앙 Synchronizer 기반 비동기 학습 |
주로 줄이는 것 | 통신 빈도 | 피크 대역폭과 통신 대기 시간 | 워커 대기, 장애 전파, 유휴 연산 |
동기 방식 | 동기식 | 동기식 기반 스트리밍 | 비동기식 |
강점 시나리오 | 저대역폭으로 연결된 여러 컴퓨트 아일랜드 | 모델 전체를 한 번에 전송하기 어려운 환경 | 이기종·다지역·장애 가능성이 높은 환경 |
※ 세 방식은 서로 배타적이지 않으며, Streaming DiLoCo와 Decoupled DiLoCo는 DiLoCo의 기본 구조 위에 각각 다른 개선을 더한 것입니다.
DiLoCo가 GPU 인프라 운영에 갖는 의미
지금까지 업계는 GPU 클러스터의 확장 효율을 높이기 위해 더 빠른 네트워크 패브릭을 구축하는 방향으로 움직여 왔습니다. DiLoCo 계열은 다른 해법을 제시합니다. 네트워크를 더 빠르게 만드는 대신, 학습 알고리즘이 네트워크를 덜 필요로 하도록 재설계하는 접근입니다.
다만 DiLoCo가 네트워크 설계와 GPU 운영의 필요성을 없애는 것은 아닙니다. 워커 간 통신 빈도가 줄어들더라도 주기적인 동기화와 모델 상태 관리, 장애 대응, 데이터 배치가 필요합니다. 여러 데이터센터와 컴퓨트 아일랜드를 함께 활용한다면 각 거점의 GPU 가용량과 성능 차이, 네트워크 상태를 고려해 학습 작업을 배치하는 문제도 남습니다.
특히 학습과 추론 등 여러 워크로드가 하나의 GPU 인프라를 공유하는 환경에서는, 어떤 자원을 어느 작업에 배정하고 유휴 자원을 어떻게 활용할 것인지가 전체 비용 효율을 좌우합니다.
결국 DiLoCo 계열 기법이 워커 간 통신 요구량을 줄여주더라도, 여러 거점과 워크로드에 걸쳐 GPU 자원을 배치하고 사용량을 추적하는 운영 계층은 여전히 필요합니다. AIPub은 여러 GPU 자원을 통합적으로 관리하고, 팀과 프로젝트별로 자원과 권한을 배분하며, 인프라 사용 상태를 모니터링하는 역할을 담당합니다.
GPU 인프라 운영, AIPub으로 시작하세요
DiLoCo 계열 기법이 통신 요구량을 줄여 여러 컴퓨트 아일랜드를 하나의 학습에 활용할 가능성을 넓혀주더라도, 실제 GPU 자원을 조직 전체에서 배치하고 관리하는 문제는 남습니다.
AIPub은 GPU 자원을 세분화해 여러 학습·추론 워크로드가 물리 자원을 효율적으로 공유할 수 있도록 지원하고, 팀과 프로젝트별로 자원과 접근 권한을 분리해 워크로드 간 간섭을 줄입니다.
또한 GPU 사용률과 메모리, 인터커넥트 상태 등 인프라 지표를 실시간으로 확인해 어떤 자원이 유휴 상태인지, 어느 구간에서 병목이 발생하고 있는지를 인프라 관점에서 파악할 수 있습니다.
결론: 네트워크가 아니라 알고리즘으로 병목을 줄이는 법
DiLoCo, Streaming DiLoCo, Decoupled DiLoCo는 같은 문제를 다른 방향에서 풀어낸 시도입니다. DiLoCo는 통신 빈도를 줄이고, Streaming DiLoCo는 피크 대역폭과 통신 대기 시간을 낮추며, Decoupled DiLoCo는 워커 간 동기화를 비동기화해 장애의 영향을 격리합니다.
이 접근이 당장 모든 조직의 GPU 인프라 전략을 바꾸지는 않을 것입니다. 하지만 GPU 확보가 여전히 어렵고, 하나의 초고속 클러스터를 구축하기 어려운 환경이라면, 여러 거점에 흩어진 자원을 하나의 학습 작업으로 묶을 수 있다는 가능성 자체가 중요한 선택지가 됩니다.
우리 조직의 GPU 인프라를 여러 거점·여러 워크로드에 걸쳐 어떻게 설계하고 운영해야 할지, TEN의 전문가와 함께 확인해 보세요.
참고 자료
Douillard et al., "DiLoCo: Distributed Low-Communication Training of Language Models", arXiv, 2023
Douillard et al., "Streaming DiLoCo with overlapping communication: Towards a Distributed Free Lunch", arXiv, 2025
"Decoupled DiLoCo for Resilient Distributed Pre-training", arXiv, 2026
Google DeepMind, Decoupled DiLoCo 발표 (2026.04.23)