
SkewAdam: MoE 상태 메모리를 97% 절감하는 계층형 옵티마이저 (40GB GPU에서 6.7B MoE 구동 가능)
요약
MoE 모델 학습 시 발생하는 막대한 옵티마이저 상태 메모리 문제를 해결하기 위한 SkewAdam 옵티마이저를 제안합니다. 계층형 상태 할당 방식을 통해 메모리 사용량을 97% 절감하여 단일 40GB GPU에서도 대규모 MoE 모델 학습을 가능하게 합니다.
핵심 포인트
- 계층형 상태 할당으로 옵티마이저 메모리 97.4% 절감
- 백본, 전문가, 라우터별로 차등화된 정밀도 할당 방식 적용
- 6.7B MoE 모델을 단일 40GB GPU에서 구동 가능
- 수렴 성능 및 라우터 안정성 유지
논문: https://arxiv.org/abs/2607.19058 코드 (GitHub): https://github.com/nuemaan/skewadam
안녕하세요 여러분, 저는 Mixture-of-Experts (MoE) 학습 시 발생하는 거대한 VRAM 병목 현상을 해결하기 위해 설계된 새로운 옵티마이저 (optimizer)에 관한 프리프린트 (preprint)를 방금 발표했습니다. MoE를 학습시켜 보셨다면, 옵티마이저 상태 (optimizer state)가 일반적으로 메모리 예산에서 가장 큰 단일 항목이라는 것을 알고 계실 것입니다. 예를 들어, AdamW는 단지 12.6 GB 모델을 업데이트하기 위해 50.6 GB의 상태 메모리를 사용합니다.
저는 계층형 상태 할당 (tiered state allocation) 방식을 사용하여 이 문제를 해결하고자 SkewAdam을 구축했습니다. 모든 파라미터 (parameter)를 동일하게 취급하는 대신, 파라미터의 동작에 따라 정밀도 (precision)를 할당합니다:
- 백본 (Backbone, 파라미터의 5%): 모멘텀 (Momentum) + 인수분해된 2차 모멘트 (Factored 2nd moment)
- 전문가 (Experts, 파라미터의 95%): 인수분해된 2차 모멘트 (Factored 2nd moment)만 사용
- 라우터 (Router, 파라미터의 0.01% 미만): 정확한 2차 모멘트 (Exact 2nd moment)
하드웨어 결과:
옵티마이저 상태 메모리가 50.6 GB에서 1.29 GB로 감소합니다 (97.4% 절감). 피크 학습 메모리 (Peak training memory)는 81.4 GB에서 31.3 GB로 감소합니다. 이를 통해 수렴 (convergence) 성능이나 라우터 안정성을 희생하지 않고도 6.78B MoE를 단일 40GB GPU에 여유롭게 올릴 수 있습니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 r/OpenAI Codex (search)의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기