Back to blog

MoE 推理优化:问题、挑战与最新研究进展

MoE 模型推理优化技术综述,分析问题与挑战,总结最新研究进展。

MoE 推理优化:问题、挑战与最新研究进展

基于论文 “A Survey on Accelerated Technologies for Mixture-of-Experts Model Training Systems” 及相关研究

一、论文概述

项目内容
标题A Survey on Accelerated Technologies for Mixture-of-Experts Model Training Systems
作者Qi Zhang, Jidong Zhai, Weimin Zheng
机构清华大学计算机科学与技术系
期刊Tsinghua Science and Technology
DOI10.26599/TST.2025.9010169

论文定位

该论文是一篇系统性综述,聚焦于 MoE 训练系统的加速技术,涵盖四个核心优化维度:

  1. 混合并行计算(Hybrid Parallel Computing)
  2. 综合内存管理(Comprehensive Memory Management)
  3. 细粒度通信调度(Fine-grained Communication Scheduling)
  4. 自适应负载均衡(Adaptive Load Balancing)

核心洞察

论文揭示了从以计算为中心到以工作负载为中心的优化范式转变。


二、MoE 架构演进

2.1 粗粒度 MoE 架构

  • 特点:每层 8-16 个专家,每个专家参数量大
  • 代表:Mixtral 8×7B, DBRX
  • 优势:计算效率与实现复杂度平衡

2.2 细粒度 MoE 架构

  • 特点:每层 64-256 个专家,每个专家更小
  • 代表:Switch Transformer, GShard, GLaM
  • 优势:更精细的知识分区,更快收敛

2.3 细粒度+共享专家架构

  • 特点:共享专家(始终激活)+ 路由专家(动态选择)
  • 代表:DeepSeek-V3, Hunyuan-Large, Qwen2-MoE, PanGu-Ultra MoE
  • 优势:确保通用知识可访问,同时支持专业化

三、MoE 推理优化存在的问题与挑战

3.1 巨大的内存需求

问题描述:

MoE 模型相比同等计算量的稠密模型需要更多内存:

模型规模参数精度内存需求
1T 参数 MoEBF16~16 TB

具体挑战:

  1. 参数存储:数百个专家的参数需要大量内存
  2. 内存碎片:专家参数稀疏分布导致碎片化
  3. 路由元数据:每层需维护门控网络状态、选择历史、负载统计
  4. 动态激活模式:活跃专家集合不可预测,增加内存局部性优化难度

量化数据:

  • 动态内存分配比静态分配提高 15-20% 内存利用率
  • 但频繁分配/释放带来额外运行时开销

3.2 通信瓶颈

问题描述:

专家并行引入严重的 All-to-All 通信瓶颈:

指标数据
通信占比35%-50% 的迭代时间
节点内效率70%-80% 理论峰值带宽
节点间效率20%-35% 理论峰值带宽

根本原因:

  1. 不可预测性:路由决策动态产生,通信模式难以预计算
  2. 数据不均衡:动态路由导致设备间数据交换高度不均衡
  3. 全局同步:所有参与设备需要同步,增加同步屏障
  4. 拓扑依赖:通信效率高度依赖硬件拓扑和互连特性

通信效率对比:

连接类型带宽All-to-All 效率
NVLink(节点内)高70%-80%
InfiniBand(节点间)中20%-35%
Ethernet(节点间)低更低

3.3 负载不均衡

问题描述:

负载不均衡是 MoE 系统最具挑战性的性能问题:

  1. 资源浪费:部分专家/加速器长期空闲或低利用率
  2. 性能瓶颈:重负载专家成为系统吞吐量瓶颈
  3. 动态演化:负载不均衡程度随训练过程持续变化

根本矛盾:

完美的负载均衡与 MoE 架构的核心前提存在根本冲突——让专家专注于不同类型的输入模式和语言现象。

路由坍塌问题:

  • 门控网络收敛到总是激活相同几个专家
  • 被偏好的专家训练更快,进一步被选择
  • 形成自我强化的恶性循环

3.4 推理特有挑战

3.4.1 延迟敏感性

场景特点优化重点
训练吞吐量优先,可批处理吞吐量最大化
推理延迟敏感,单请求首 Token 延迟(TTFT)、每 Token 延迟(TPOT)

3.4.2 批量大小受限

  • 推理通常批量大小较小(甚至为 1)
  • 难以摊销专家加载和通信开销
  • GPU 利用率低

3.4.3 序列长度变化

  • 不同请求序列长度差异大
  • KV Cache 内存占用随序列长度增长
  • 动态批处理复杂度高

3.4.4 专家缓存效率

  • 推理时专家访问模式更随机
  • 缓存命中率低
  • 频繁的专家换入换出

四、优化手段

4.1 并行优化

4.1.1 基础并行策略

策略原理适用场景
数据并行 (DP)沿批次维度分布数据小模型,高吞吐
张量并行 (TP)沿算子级别分割权重大层,节点内
流水线并行 (PP)按层分割为多个阶段跨节点,带宽受限
专家并行 (EP)不同专家分布到不同加速器MoE 特有
专家张量并行 (ETP)进一步分割单个专家矩阵超大专家

4.1.2 混合并行演进

第一代:同构混合并行

  • 所有层使用相同并行配置
  • 代表:FastMoE, DeepSpeed-MoE
  • 局限:无法利用注意力层和专家层的计算特性差异

第二代:异构混合并行

  • 注意力层和专家层使用不同并行策略
  • 代表:GShard, DeepSpeed-TED, Megatron-Core
  • 创新:MoE Parallel Folding

第三代:动态混合并行

  • 运行时自适应调整并行策略
  • 代表:Tutel, SmartMoE, FlexMoE
  • 特点:根据工作负载特性持续优化

4.1.3 关键系统

系统核心创新
Tutel统一数据布局,透明并行切换
SmartMoE离线池构建 + 在线选择
FSSDP稀疏物化,按需加载专家
HEXA-MoE异构感知专家分配,专用算子

4.2 内存优化

4.2.1 冗余消除

ZeRO 技术:

阶段分区内容内存节省
ZeRO-1优化器状态~4x
ZeRO-2优化器状态 + 梯度~8x
ZeRO-3优化器状态 + 梯度 + 参数~Mx(M为设备数)

时间复用:

  • DeepSpeed-TED:基于 Tile 的优化器状态分区,减少 40% 内存碎片
  • HECATE:专家级内存复用
  • MPipeMoE:三管齐下内存复用策略

4.2.2 专家参数卸载

分层存储策略:

存储层级带宽容量用途
GPU HBM3.35 TB/s (A100)80 GB活跃专家
Host DRAM100-200 GB/sTB 级非活跃专家
NVMe SSD7-14 GB/s数十 TB冷专家

关键系统:

系统创新效果
ES-MoE专家粒度卸载 + 顺序计算支持 67x 更多专家,17.5x 吞吐提升
MoE-Infinity专家激活矩阵收集(EAMC),预测性预取利用时间局部性
Janus数据中心框架,按需专家迁移最小化空闲时间
MoESys混合存储,ZeRO-3 + 卸载层次化内存管理

4.2.3 激活重计算

演进路线:

  1. 传统方法:层级重计算,性能损失大
  2. 选择性重计算:MegaScale-MoE 保留昂贵激活,选择性重计算内存密集操作
  3. 细粒度重计算:PanGu-Ultra-MoE 算子级重计算,MLA KV-only 重计算
  4. 稀疏检查点:MoETion 基于路由稀疏性选择性保存

4.2.4 低精度训练

精度内存节省代表工作
BF16基准通用
FP8~50%DeepSeek-V3, FP8-LM
INT8/INT4更多研究阶段

挑战:

  • 激进量化更容易导致专家坍塌
  • 动态路由对精度降低特别敏感
  • 小量化误差可显著影响专家选择决策

4.3 通信优化

4.3.1 All-to-All 集合优化

层次化 All-to-All:

方案原理代表系统
1D All-to-All先聚合节点内数据,再跨节点传输HetuMoE
2D All-to-All分离节点内和节点间阶段DeepSpeed-MoE, SE-MoE
组 All-to-All节点内数据交换先完成FasterMoE
优化 2D改进数据布局,编译器优化Tutel

局部性感知调度:

  • NETMOE:网络感知专家放置
  • LUFFY:动态专家迁移

4.3.2 计算-通信重叠

任务级重叠:

系统方法
FasterMoE分离 CUDA 流,异步执行
Tutel统一数据布局,透明切换
MPipeMoE微批次交错
Prophet利用时间局部性预测
Janus数据中心按需迁移
LANCET全图 IR 分析
DualPipe双向流水线,细粒度块分解

算子级重叠:

系统方法
FLUX过分解 + 融合内核
COMET细粒度数据依赖
Triton-distributed编译器集成 OpenSHMEM

混合方法:

  • Lina:任务级 + 算子级
  • MegaScale-MoE:层级重叠

4.3.3 通信压缩

方法原理代表
体积压缩低比特表示 + 压缩算法ScheMoE
降维通信投影降维再升维BigMac (3.09x 加速)
低精度FP8/BF16 量化DeepSeek-V3
压缩感知计算直接在压缩数据上计算未来方向

4.4 负载均衡优化

4.4.1 专家容量管理

容量公式:

EC = B × CF × K / N
  • B:批量大小
  • CF:容量因子
  • K:选择专家数
  • N:总专家数

溢出处理:

  • CF < 1:部分 Token 必然被丢弃
  • CF > 1:添加松弛容量,减少丢弃但增加内存

自适应容量:

  • 根据实时负载动态调整专家容量
  • 避免静态分配的局限性

4.4.2 自适应专家放置

专家复制策略演进:

阶段方法局限
全局复制FasterMoE 复制到所有工作节点通信开销大,内存消耗高
部分复制Prophet 复制到工作节点子集需要精细调度
按流行度复制FlexMoE 根据流行度分布动态调整需要在线监控
层次化HECATE 层次化专家树结构复杂度高

数据局部性优化:

  • CCFuser:将热专家放置在数据所在加速器
  • 避免分布式热专家破坏数据局部性

容错调度:

  • Lazarus:节点故障约束下的最优副本放置

五、最新研究进展

5.1 代表性系统对比

系统并行优化细粒度调度数据局部性容错预测方法拓扑感知
FasterMoE✓×××✓✓
ES-MoE×✓××✓×
Prophet✓✓××✓✓
FSSDP✓××××✓
SmartMoE✓✓✓×✓✓
Lazarus✓✓×✓×✓
CCFuser×✓✓×✓×
FlexMoE✓✓✓×✓✓
FSMoE✓✓××✓✓

5.2 重叠技术对比

系统任务级算子级编译器预测资源分配
FasterMoE✓×××✓
Tutel✓×✓×✓
Prophet✓××✓×
Lina✓✓×✓✓
LANCET✓×✓✓×
FLUX×✓✓×✓
MegaScale-MoE✓✓××✓
DualPipe✓×✓×✓
COMET×✓✓××
Triton-distributed×✓✓×✓

5.3 前沿模型实践

DeepSeek-V3

特性技术
架构671B 参数,细粒度+共享专家
并行EP + TP + DP + PP
通信FP8 量化 All-to-All
重叠DualPipe 双向流水线
内存FP8 混合精度 + 选择性重计算

Mixtral 8×7B

特性技术
架构粗粒度,8 专家
并行EP + DP
通信标准 All-to-All

六、设计原则

6.1 异构感知优化

  • 注意力层和专家层使用不同优化策略
  • 利用节点内/节点间带宽差异
  • 适应 GPU HBM、Host DRAM、NVMe 存储差异

6.2 预测性资源管理

  • 利用专家激活的时间模式
  • 预取专家、预测性复制热专家
  • 基于预测路由模式压缩通信

6.3 整体优化

  • 不同维度优化相互影响,非线性
  • 需要跨维度性能模型
  • 联合搜索优化空间

6.4 自适应精度和粒度

  • 细粒度优化优于粗粒度
  • 自适应精度策略
  • 一刀切策略对 MoE 工作负载无效

6.5 局部性保持变换

  • 优先保留/增强数据局部性
  • 层次化策略最大化节点内通信
  • 专家聚类基于共激活模式

七、未来研究方向

7.1 机器学习引导的负载均衡

  • 从历史训练数据学习最优专家放置
  • 实时性能指标驱动优化
  • 超越启发式方法的预测能力

7.2 跨层优化框架

  • 打破层间优化壁垒
  • 全局最优而非局部最优
  • 编译器驱动的端到端优化

7.3 硬件-软件协同设计

  • 专用通信加速器
  • 针对动态路由优化的网络拓扑
  • 利用专家计算局部性的内存架构

7.4 推理特有优化

方向挑战机会
低延迟推理首 Token 延迟、每 Token 延迟投机解码、专家预取
动态批处理序列长度变化大连续批处理、PagedAttention
专家缓存访问模式随机预测性缓存、分层缓存
量化推理精度-效率权衡混合精度、自适应量化

7.5 压缩感知通信

  • 直接在压缩数据上计算
  • 避免解压-计算-压缩开销
  • 数据库系统启发的新范式

八、总结

核心挑战

挑战程度关键数据
内存需求极高1T 参数 ~16TB
通信瓶颈严重35-50% 迭代时间
负载不均衡复杂与专家专业化根本矛盾
推理延迟敏感TTFT、TPOT 关键指标

优化范式转变

静态 → 动态
计算为中心 → 工作负载为中心
粗粒度 → 细粒度
单维度 → 多维度协同
启发式 → 机器学习引导

关键系统

系统核心贡献
DeepSpeed-MoE内存优化基线
FasterMoE通信优化基线
Tutel动态并行切换
SmartMoE自动并行优化
MegaScale-MoE层级重叠
DeepSeek-V3生产级实践

九、参考资源