Skip to main content
공개 노트

HyperParallel-MoE: MoE 학습의 병목은 '전문가'가 아니라 스케줄링이다

Views 4약 5분생성형 AI 활용
Summary

HyperParallel-MoE: MoE 학습의 병목은 '전문가'가 아니라 스케줄링이다

MoE는 일부 전문가만 활성화해 큰 모델을 비교적 낮은 계산 비용으로 학습하는 구조입니다. DeepSpeed는 MoE를 “파라미터 대비 계산 비용이 서브리니어하게 증가하는 희소 활성화 모델”로 설명합니다. 대표적으로 Switch Transformer는 1.6조 개가 넘는 파라미터를 갖지만, 학습 계산량은 약 100억 파라미터 밀집 모델 수준으로 소개됩니다.1

문제는 이 장점이 저절로 실현되지 않는다는 점입니다. MoE에서는 토큰을 전문가에게 보내고(dispatch), 전문가가 계산한 뒤, 결과를 다시 합치는(combine) 과정이 반복됩니다. 이 흐름이 느리면 “많은 파라미터를 적은 계산으로 쓴다”는 MoE의 장점은 통신과 스케줄링 병목에 가려집니다.

HyperParallel-MoE는 바로 이 병목을 겨냥한 Ascend 전용 MoE 학습 스케줄링 시스템입니다. 핵심은 전문가 수를 늘리는 것이 아니라, MoE-FFN 실행 흐름을 Ascend NPU 구조에 맞게 다시 배치하는 데 있습니다.

HyperParallel-MoE가 겨냥한 병목

Ascend A3는 행렬 계산 중심의 AIC와 벡터·통신 중심의 AIV 유닛을 분리해 제공합니다. 하지만 MoE 연산을 일반적인 커널 단위로 순차 실행하면, 통신·벡터 연산·행렬 연산이 서로 기다리는 시간이 생기고 이기종 자원을 충분히 활용하기 어렵습니다.2

HyperParallel-MoE는 MoE-FFN을 정적 이기종 태스크플로로 컴파일합니다. 즉, dispatch → expert FFN 계산 → combine을 큰 단계로 나눠 순서대로 처리하는 대신, 더 작은 타일 단위 작업으로 쪼개 AIC와 AIV가 동시에 움직일 수 있게 합니다.

논문은 이를 위해 AIV 기반 단방향 통신, 이벤트 기반 정적 스케줄링, 단일 커널 실행을 사용해 통신·행렬 연산·벡터 연산을 겹친다고 설명합니다.2 요약하면 HyperParallel-MoE의 초점은 “MoE를 어떻게 더 크게 만들 것인가”가 아니라 “MoE 실행 중 비는 하드웨어 시간을 어떻게 줄일 것인가”입니다.

MoE 성능은 모델 구조만으로 결정되지 않는다

MoE 확장은 보통 Expert Parallelism과 함께 구현됩니다. DeepSpeed MoE도 num_experts와 ep_size를 통해 계층별 전문가 수와 전문가 병렬도를 설정할 수 있으며, Expert, Expert+Data, Expert+ZeRO, Expert+Data+Model 등 여러 병렬 구성을 지원합니다.1

예를 들어 Expert Parallelism에서는 ep_size 크기의 GPU 또는 rank 그룹이 MoE 계층의 전체 전문가 수를 나눠 가집니다. DeepSpeed 예시에서 WORLD_SIZE=4, EP_WORLD_SIZE=2, EXPERTS=8 구성은 GPU 4개에서 GPU당 전문가 4개를 사용하는 Expert+Data 모드로 동작합니다.1

이처럼 MoE 성능은 단순히 전문가 수로만 설명되지 않습니다. 다음 요소가 함께 맞물립니다.

  • 전문가를 몇 개 둘 것인가

  • 전문가를 몇 개의 rank 또는 디바이스에 나눌 것인가

  • 라우팅된 토큰을 얼마나 빠르게 dispatch/combine할 것인가

  • 계산과 통신을 얼마나 잘 겹칠 것인가

HyperParallel-MoE의 의미는 이 중 마지막 두 항목을 Ascend 칩 내부 스케줄링 수준에서 다룬다는 데 있습니다. 프레임워크 설정만으로 병렬 구성을 조정하는 것이 아니라, MoE-FFN 실행 자체를 하드웨어 구조에 맞게 재구성합니다.

성능 개선이 말해주는 것

HyperParallel-MoE는 균형 라우팅 조건에서 Dispatch-to-Combine MoE-FFN 지연 시간을 1.49~1.58배 낮췄다고 보고됐습니다.2 이 수치는 MoE 학습에서 병목이 전문가 계산 자체에만 있지 않다는 점을 보여줍니다.

특히 dispatch와 combine은 MoE에서 피하기 어려운 비용입니다. 전문가가 많아질수록 토큰은 여러 전문가로 흩어지고, 결과는 다시 모여야 합니다. 이 과정이 느리면 전문가 FFN 계산이 빨라도 전체 계층 지연 시간은 줄어들지 않습니다.

HyperParallel-MoE는 이 흐름을 정적 스케줄링과 멀티코어 인터리빙으로 다뤄, 통신과 계산 사이의 대기 시간을 줄이는 방식에 가깝습니다. 따라서 이 기술의 가치는 “새로운 MoE 아키텍처”보다는 “Ascend에서 MoE-FFN을 더 효율적으로 실행하는 방법”으로 이해하는 편이 정확합니다.

적용할 때의 판단 기준

HyperParallel-MoE는 범용 MoE 가속기가 아닙니다. Ascend A3의 AIC/AIV 분리 구조를 전제로 하며, MindSpore와 MindFormers에 통합된 Ascend 중심 스택을 대상으로 합니다.23

따라서 적용 여부는 환경에 따라 갈립니다.

PyTorch·GPU 중심 환경이라면 먼저 DeepSpeed MoE의 병렬 구성을 검토하는 것이 자연스럽습니다. DeepSpeed MoE는 PyTorch 1.8 이상을 요구하며, num_experts, ep_size, ZeRO, 데이터 병렬, 모델 병렬 조합을 통해 MoE 학습 구성을 조정할 수 있습니다.1

반면 Ascend A3에서 대규모 MoE를 학습한다면 HyperParallel-MoE는 더 직접적인 선택지가 됩니다. 특히 라우팅 이후 dispatch/combine 지연이 전체 MoE-FFN 시간을 좌우한다면, 하드웨어 친화 스케줄링이 실질적인 개선 포인트가 될 수 있습니다.

핵심은 토큰 흐름을 어떻게 배치하느냐

MoE의 매력은 거대한 파라미터를 매번 모두 계산하지 않는 데 있습니다. 하지만 실제 학습 효율은 전문가 수만으로 결정되지 않습니다. 토큰이 전문가 사이를 오가는 경로, 통신과 계산의 겹침, 하드웨어 자원 배치가 함께 맞아야 합니다.

HyperParallel-MoE가 보여주는 결론은 명확합니다. MoE 시대의 최적화는 “전문가를 얼마나 많이 둘 것인가”에서 끝나지 않습니다. 라우팅된 토큰 흐름을 하드웨어에 맞게 얼마나 촘촘히 스케줄링하느냐가 대규모 MoE 학습 효율을 가르는 핵심 기준입니다.

1Mixture of Experts - DeepSpeed

2HyperParallel-MoE: Multi-Core Interleaved Scheduling for Fast MoE Training on Ascend NPUs

3GitHub - mindspore-ai/hyper-parallel

이 노트는 보도·비평·교육·연구 목적으로 작성되었습니다. 저작권 문의가 있으시면 에서 알려주세요.

틸노트는 사용자가 AI를 활용해 노트를 쉽게 작성하거나 편집할 수 있는 서비스입니다.

AI 스퀘어 단톡방에 함께해요

AI 활용과 틸노트 사용 팁을 나누는 오픈채팅방입니다. 입장 비밀번호는 tilnote입니다.

참여하기