๐ค AI Summary
Existing MoE inference systems rely on model-level or contiguous batching strategies, which fail to accommodate the heterogeneous computational characteristics of attention and expert modules, resulting in low single-GPU throughput. This work proposes a modular dynamic batching mechanism: tokens are cached in host memory, and each moduleโe.g., attention and expertsโis assigned an independently optimized batch size, enabling aggressive overlap of GPU computation and inter-module communication. Our approach breaks the coarse-grained batching paradigm, enabling the first fine-grained, adaptive, module-level batch scheduling for MoE inference. Evaluated on mainstream models including DeepSeek-MoE and Mixtral, our method achieves 8โ31ร higher throughput than state-of-the-art systems such as FlexGen, MoE-Lightning, and DeepSpeed-MoE, and significantly outperforms contiguous-batch frameworks like vLLM and Ollama.
๐ Abstract
This paper presents MoE-Gen, a high-throughput MoE inference system optimized for single-GPU execution. Existing inference systems rely on model-based or continuous batching strategies, originally designed for interactive inference, which result in excessively small batches for MoE's key modules-attention and expert modules-leading to poor throughput. To address this, we introduce module-based batching, which accumulates tokens in host memory and dynamically launches large batches on GPUs to maximize utilization. Additionally, we optimize the choice of batch sizes for each module in an MoE to fully overlap GPU computation and communication, maximizing throughput. Evaluation demonstrates that MoE-Gen achieves 8-31x higher throughput compared to state-of-the-art systems employing model-based batching (FlexGen, MoE-Lightning, DeepSpeed), and offers even greater throughput improvements over continuous batching systems (e.g., vLLM and Ollama) on popular MoE models (DeepSeek and Mixtral) across offline inference tasks. MoE-Gen's source code is publicly available at https://github.com/EfficientMoE/MoE-Gen