Scalable Training of Mixture-of-Experts Models with Megatron Core

이 논문은 메모리, 통신, 연산의 통합 최적화 및 다양한 병렬화 기법을 통해 MoE 모델의 확장성 문제를 해결하고, NVIDIA GB200/GB300 클러스터에서 높은 성능을 달성한 Megatron Core 기반의 실용적인 오픈소스 솔루션을 제시합니다.

Zijie Yan (NVIDIA), Hongxiao Bai (NVIDIA), Xin Yao (NVIDIA), Dennis Liu (NVIDIA), Tong Liu (NVIDIA), Hongbin Liu (NVIDIA), Pingtian Li (NVIDIA), Evan Wu (NVIDIA), Shiqing Fan (NVIDIA), Li Tao (NVIDIA), Robin Zhang (NVIDIA), Yuzhong Wang (NVIDIA), Shifang Xu (NVIDIA), Jack Chang (NVIDIA), Xuwen Chen (NVIDIA), Kunlun Li (NVIDIA), Yan Bai (NVIDIA), Gao Deng (NVIDIA), Nan Zheng (NVIDIA), Vijay Anand Korthikanti (NVIDIA), Abhinav Khattar (NVIDIA), Ethan He (NVIDIA), Soham Govande (NVIDIA), Sangkug Lym (NVIDIA), Zhongbo Zhu (NVIDIA), Qi Zhang (NVIDIA), Haochen Yuan (NVIDIA), Xiaowei Ren (NVIDIA), Deyu Fu (NVIDIA), Tailai Ma (NVIDIA), Shunkang Zhang (NVIDIA), Jiang Shao (NVIDIA), Ray Wang (NVIDIA), Santosh Bhavani (NVIDIA), Xipeng Li (NVIDIA), Chandler Zhou (NVIDIA), David Wu (NVIDIA), Yingcan Wei (NVIDIA), Ashwath Aithal (NVIDIA), Michael Andersch (NVIDIA), Mohammad Shoeybi (NVIDIA), Jiajie Yao (NVIDIA), June Yang (NVIDIA)

게시일 Tue, 10 Ma
📖 5 분 읽기🧠 심층 분석

Each language version is independently generated for its own context, not a direct translation.

거대한 AI 두뇌를 효율적으로 키우는 방법: NVIDIA 의 '메가트론 코어' 이야기

이 논문은 거대하고 복잡한 인공지능 (AI) 모델, 특히 '혼합 전문가 (Mixture-of-Experts, MoE)' 모델을 어떻게 하면 수천 개의 그래픽 카드 (GPU) 를 이용해 빠르고 효율적으로 훈련시킬 수 있는지에 대한 NVIDIA 의 비밀 레시피를 공개합니다.

마치 거대한 도시를 건설하는 것과 비슷합니다. 단순히 건물을 많이 짓는 것 (모델 크기 키우기) 만으로는 부족하고, 그 도시의 교통, 전력, 물 공급 시스템을 어떻게 최적화하느냐가 성패를 좌우합니다.


1. 문제: 왜 MoE 는 훈련하기가 너무 어려울까요?

기존의 AI 모델은 모든 데이터를 처리할 때 모든 부품 (파라미터) 을 동시에 작동시켰습니다. 하지만 MoE 는 다릅니다.

  • 비유: 기존 모델은 전체 공장이 매일 모든 작업을 하는 것입니다.
  • MoE 모델: 거대한 전문가 집단이 있는데, 들어온 작업 (데이터) 에 따라 가장 적합한 전문가 2~3 명만 골라서 일하게 합니다. 나머지 90% 는 쉬고 있죠.

이 방식은 매우 효율적이지만, 시스템 엔지니어에게는 **치명적인 세 가지 장벽 (Three Walls)**을 만들어냅니다.

🧱 장벽 1: 메모리 벽 (Memory Wall) - "창고가 너무 좁다"

  • 문제: 비록 한 번에 3 명만 일하지만, 모든 전문가 (수백 명) 의 지식 (파라미터) 은 모두 창고 (메모리) 에 보관되어 있어야 합니다.
  • 현실: 창고 크기는 한정되어 있는데, 전문가 수는 수조 개에 달합니다. 모든 전문가의 데이터를 한 번에 다 담을 수 없어 훈련 자체가 불가능해질 수 있습니다.

📡 장벽 2: 통신 벽 (Communication Wall) - "교통 체증이 심하다"

  • 문제: 각 작업은 가장 적합한 전문가에게 실시간으로 배정되어야 합니다. 100 개의 GPU 가 있다면, 작업이 각 GPU 로 날아갈 때 모든 GPU 가 서로 데이터를 주고받는 (All-to-All) 혼란이 발생합니다.
  • 현실: GPU 가 일을 기다리는 동안, 데이터가 이동하는 데만 시간이 너무 오래 걸립니다. 마치 고속도로에 차가 몰려서 제자리걸음을 하는 것과 같습니다.

⚙️ 장벽 3: 계산 효율 벽 (Compute Efficiency Wall) - "작업이 너무 작아서 비효율적이다"

  • 문제: 각 전문가가 처리하는 작업량이 매우 작고 조각조각 나 있습니다.
  • 현실: 거대한 공장이지만, 한 번에 처리하는 작업이 너무 작아서 기계 (GPU) 가 빈번히 멈추고 다시 시작해야 합니다. 또한, CPU 가 GPU 에게 "이제 이거 해!"라고 지시하는 횟수가 너무 많아 지시하는 사람 (CPU) 이 바빠서 기계 (GPU) 가 놀고 있는 상황이 발생합니다.

2. 해결책: NVIDIA 의 '메가트론 코어'가 쓴 마법

NVIDIA 는 이 세 가지 장벽을 동시에 뚫기 위해 **메가트론 코어 (Megatron Core)**라는 통합 시스템을 개발했습니다.

🔑 해결책 1: '병렬 접기 (Parallel Folding)' - "각자 최적의 길로"

  • 기존 방식: 모든 전문가와 일반 부품이 같은 규칙으로 나뉘어 있었습니다. (예: 모든 GPU 가 같은 수의 전문가를 가져야 함)
  • 메가트론의 혁신: 주의 (Attention) 부분전문가 (MoE) 부분을 완전히 분리했습니다.
    • 비유: 도시의 주거 지역산업 단지를 완전히 다르게 설계합니다. 주거지는 넓은 도로 (TP) 가 필요하고, 산업 단지는 많은 공장을 분산 (EP) 시키는 게 좋습니다. 메가트론은 이 두 가지를 각자 최적의 방식으로 배치할 수 있게 해줍니다.

🔑 해결책 2: '메모리 장벽 부수기' - "창고를 똑똑하게 쓰자"

  • 기억력 재사용 (Recomputation): 데이터를 다 저장하지 말고, 필요할 때 다시 계산해서 쓰세요. (일시적인 계산 비용 증가로 영구적인 저장 공간 확보)
  • 저장 공간 줄이기 (FP8/FP4): 데이터를 **더 작은 숫자 (FP8, FP4)**로 압축해서 저장합니다. (정밀도는 살짝 떨어지지만, 저장 공간은 절반 이상 줄어듭니다.)
  • 오프로딩: GPU 메모리가 꽉 차면, CPU 메모리로 잠시 옮겼다 다시 가져옵니다. (PCIe 케이블을 통해 데이터를 빠르게 주고받으며 숨겨진 시간을 활용)

🔑 해결책 3: '통신 장벽 부수기' - "데이터를 숨겨라"

  • DeepEP & HybridEP: 데이터를 보내는 전송 프로토콜을 완전히 새로 고쳐 속도를 극대화했습니다.
  • 숨기기 (Overlap): 데이터를 보내는 동안 GPU 가 계산을 동시에 하도록 합니다.
    • 비유: 택배 트럭이 도로를 달리는 동안, 공장에서 다음 작업을 미리 준비하는 것입니다. 트럭이 도착할 때쯤 공장은 이미 준비가 끝난 상태입니다.

🔑 해결책 4: '계산 효율 장벽 부수기' - "작업 지시를 자동화하라"

  • 그룹화 (Grouped GEMM): 작은 작업들을 하나의 큰 작업으로 묶어서 처리합니다.
  • CUDA Graphs: CPU 가 매번 "이거 해, 저거 해"라고 지시하는 대신, **한 번에 모든 지시 사항을 녹음 (Graph)**해두고 재생만 시킵니다.
    • 비유: 지휘자가 매번 악기 하나하나에 지시를 내리는 대신, 악보 전체를 녹음해두고 한 번에 재생하는 것과 같습니다. CPU 의 부담이 사라져 GPU 가 계속 일할 수 있습니다.

3. 실제 성과: 얼마나 빨라졌나요?

이 기술들을 적용한 결과, NVIDIA 는 **DeepSeek-V3(6850 억 개 파라미터)**와 Qwen3(2350 억 개 파라미터) 같은 초대규모 모델을 훈련시켰습니다.

  • GB300 (최신 칩) 기준: GPU 1 개당 **초당 1,233 테라플롭스 (TFLOPS)**의 속도를 기록했습니다.
  • H100 기준: 1,024 개의 GPU 를 연결해 훈련했을 때, 기존 방식보다 훨씬 높은 효율을 보여줍니다.

이는 마치 수천 명의 전문가가 한 팀이 되어, 교통 체증 없이, 창고 부족 없이, 지시 지연 없이 거대한 AI 두뇌를 키우는 것과 같습니다.


4. 결론: 왜 이것이 중요한가요?

이 논문은 단순히 "더 빠른 AI"를 만드는 법을 알려주는 것이 아닙니다. 거대 AI 시대의 시스템 공학이 어떻게 진화해야 하는지를 보여줍니다.

  • 단순한 확장 (Scaling) 은 불가능합니다: 단순히 GPU 를 더 많이 사서 연결하는 것만으로는 한계가 있습니다.
  • 통합적 설계 (Co-design) 가 필수입니다: 메모리, 통신, 계산 능력을 서로 연결된 하나의 시스템으로 보고, 한 부분을 최적화하면 다른 부분에도 영향을 미친다는 점을 고려해야 합니다.

NVIDIA 의 메가트론 코어는 이러한 복잡한 균형을 맞춰, 수조 개의 파라미터를 가진 AI 모델을 실제로 훈련시킬 수 있는 **생산-ready(실제 사용 가능)**한 길을 열었습니다. 이제 연구자와 기업들은 이 기술을 바탕으로 더 똑똑하고, 더 길고, 더 복잡한 AI 를 만들 수 있게 되었습니다.