Flattening Every Memory Peak in Long-Context Mixture-of-Experts Training
Abstract
Training a Mixture-of-Experts (MoE) model at long context or large batch size fails as soon as any one component's peak allocation exceeds device memory, so the target is every peak at once, not the average footprint. Four are left unbounded by the parallelism plans in common use, and each grows differently: expert dispatch with the routing matrix, the vocabulary projection with tokens times vocabulary, gradient checkpoint boundaries with depth times sequence length, and optimizer state with parameter count. Which one runs out first changes with the model, the context length, and the device count, so lowering the largest only exposes the next. We bound all four with schedules whose GPU working set is fixed at launch: PipelinedLLEP extends least-loaded expert parallelism with a cap on the tokens each source contributes to a dispatch chunk, Ring-DTP circulates activations or weight shards around a ring at the vocabulary projection and folds each block of logits into an online log-sum-exp, Selective checkpoint offload (SCO) keeps the one long-lived tensor of each checkpoint boundary in CPU memory, and OffloadStreamAdamW turns the serial CPU Adam update of optimizer offload into a bucket pipeline. All four change only the order and granularity of computation and data movement, so the loss and gradients stay exact. In matched component tests, they cut the MoE dispatch peak by up to 59.3% without losing throughput, the vocabulary projection peak by 86.6%, and the offloaded optimizer step by 2.05times faster. Composed on MoE models from 120B to 667B parameters, they train at 1M context length, 8--32times the reach of a tuned FSDP2 baseline, and up to 10.4times its throughput.
Community
We propose 4 different ways to lower peak memory consumption and improve throughput in large-scale long-context MoE distributed training.
- PipelinedLLEP: Achieve balanced expert parallelism with chunk-wise comm-compute overlap
- Ring-DTP: break-up large dense layer (vocab) across data-tensor-parallel dimensions, 85%+ lower-memory without losing throughput.
- Selective checkpoint offload (SCO) keeps the one long-lived tensor of each checkpoint boundary in CPU memory
- OffloadStreamAdamW turns the serial CPU Adam update of optimizer offload into a bucket pipeline
All four change only the order and granularity of computation and data movement, so the loss and gradients stay exact. In matched component tests, they cut the MoE dispatch peak by up to 59.3%
without losing throughput, the vocabulary projection peak by 86.6%, and the offloaded optimizer
step by 2.05× faster. Composed on MoE models from 120B to 667B parameters, they train at
1M context length, 8–32× the reach of a tuned FSDP2 baseline, and up to 10.4× its throughput
Get this paper in your agent:
hf papers read 2609.14306 Don't have the latest CLI?
curl -LsSf https://hf.co/cli/install.sh | bash Models citing this paper 0
No model linking this paper
Datasets citing this paper 0
No dataset linking this paper
Spaces citing this paper 0
No Space linking this paper
Collections including this paper 0
No Collection including this paper