Piper: 프로그래밍 가능한 분산 학습 시스템
요약
Piper는 분산 학습 전략을 런타임 구현에서 분리하여 사용자가 선언적으로 제어할 수 있는 새로운 학습 시스템입니다. 중간 표현(IR)을 통해 글로벌 학습 DAG를 생성하고 장치별 실행 계획을 컴파일하여, 복잡한 병렬성 전략을 유연하게 적용할 수 있습니다.
핵심 포인트
- 전략과 구현을 분리하여 새로운 병렬성 전략 도입 용이
- 모델 어노테이션과 스케줄링 지시어를 통한 선언적 전략 설계
- 중간 표현(IR) 기반의 장치별 실행 계획 컴파일 및 실행
- DeepSeek-V3 DualPipe 등 복합 전략에서 성능 및 메모리 효율 향상
대규모 모델 학습은 데이터 병렬성 (Data Parallelism), 파이프라인 병렬성 (Pipeline Parallelism), 전문가 병렬성 (Expert Parallelism)과 같은 여러 병렬성 전략을 ZeRO와 같은 메모리 절약 최적화 기법과 함께 결합하는 것에 점점 더 의존하고 있습니다. 파운데이션 모델 (Foundation Model) 사전 학습을 위해 배포된 시스템들은 종종 인간 전문가가 고수준의 병렬성 전략을 수동으로 설계한 다음 그에 상응하는 저수준 실행 전략을 구현하는 방식에 의존하며, 이로 인해 새로운 전략에 시스템을 적응시키기가 어렵습니다. 한편, 많은 범용 프레임워크들은 더 유연하지만, 그 구현이 여전히 고정된 공통 병렬성 전략 세트에 묶여 있어 최첨단 전략을 통합하는 데 어려움이 있습니다. 우리는 전략을 런타임 구현으로부터 분리하는 사용자 제어 가능 분산 학습 시스템인 Piper를 제시합니다. Piper를 사용하면 사용자는 적은 수의 모델 어노테이션 (Annotation)과 스케줄링 지시어 (Scheduling Directives)를 통해 포괄적인 분산 학습 전략을 선언할 수 있습니다. 각 지시어는 모든 계산과 통신을 나타내는 통합된 글로벌 학습 DAG (Directed Acyclic Graph)인 Piper의 중간 표현 (Intermediate Representation, IR)에 변환을 적용합니다. 이 IR을 사용하여 Piper는 장치별 실행 계획을 컴파일하고, 전략에 구애받지 않는 분산 런타임 (Distributed Runtime)을 통해 이를 실행합니다. 우리는 이 결합된 시스템이 ZeRO와 같이 흔히 사용되는 전략에서 성능 동등성을 유지하는 동시에, DeepSeek-V3의 DualPipe와 같은 결합된 병렬성 전략 내에서 계산과 통신의 공동 스케줄링 (Joint Scheduling)을 통해 추가적인 성능 및 메모리 효율성 이득을 얻을 수 있음을 보여줍니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 arXiv cs.AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기