Back to blog

ExpertFlow: Adaptive Expert Scheduling and Memory Coordination for Efficient MoE Inference

自适应专家调度与内存协调的MoE推理运行时系统,通过动态步长预测和缓存感知路由消除99.9%等待延迟。

ExpertFlow: Adaptive Expert Scheduling and Memory Coordination for Efficient MoE Inference

一、论文概述

项目内容
标题ExpertFlow: Adaptive Expert Scheduling and Memory Coordination for Efficient MoE Inference
作者Zixu Shen, Kexin Chu, Yifan Zhang, Dawei Xiang, Runxin Wu, Wei Zhang
机构-
论文arXiv:2510.26730
代码未开源
发布2025年10月
领域Distributed, Parallel, and Cluster Computing (cs.DC); AI; Performance

二、核心思想

问题定义

大语言模型的扩展日益受到GPU有限内存容量的限制。MoE架构通过仅激活部分参数来降低内存和计算开销,但现有MoE推理方法存在两个关键瓶颈:

  1. 层间独立选择:传统方法在每一层独立选择活跃专家,导致频繁的Host-GPU参数传输,引入显著延迟
  2. 固定步长预测:现有跨层预测策略采用固定步长,缺乏对不同硬件平台和工作负载的适应性
  3. 缓存未命中:专家参数在GPU内存中的驻留不一致,导致频繁的swap-in/swap-out操作

解决方案概述

本文提出ExpertFlow,一个MoE推理运行时系统,结合三个核心技术:

  1. 自适应专家预门控(Adaptive Expert Pre-gating):动态确定跨层预测步长S,基于运行时统计(传输带宽、参数维度、模型反馈信号)实时调整
  2. 专家内存管理(Expert Memory Management):两级LRU缓存架构(LRU_high + LRU_low),配合动态重分配和预取协调
  3. 缓存感知路由(Cache-aware Routing):将缓存未命中处理与活跃推理任务重叠,优先调度专家已驻留的token

核心结果:

  • 等待延迟降低至基线的0.1%以下(Qwen1.5延迟降低99.9%+)
  • 专家预测准确率提升平均21.79%(最高30.36%)
  • 缓存感知路由降低延迟96.65%(DeepSeek/Qwen1.5)

三、技术架构

整体框架

系统架构

Figure 5: ExpertFlow系统架构。

核心组件:

组件功能关键技术
自适应预门控动态确定步长S运行时反馈循环
跨层预测器预测未来层专家激活Random Forest + token语义
两级LRU缓存管理GPU内存中的专家LRU_high + LRU_low
缓存感知路由重叠缓存未命中与计算优先调度驻留专家

自适应专家预门控

动态步长计算

步长S表示跳过的层数,基于通信开销和计算的权衡:

S=Ne⋅EsCs⋅TlS = \frac{N_e \cdot E_s}{C_s \cdot T_l}

其中:

  • NeN_e:预期激活的专家数量
  • EsE_s:专家大小
  • CsC_s:通信带宽
  • TlT_l:每层计算时间

动态步长机制

Figure 6: 动态步长S的确定机制。

反馈循环调整

ExpertFlow通过轻量级反馈循环实时调整步长S:

  • 等待计数器:当预测专家不可用(导致等待延迟)时递增,超过阈值后S增加1
  • 过度获取计数器:当专家在需要时已加载时递增,超过阈值后S减少1

跨层预测器

预测器结合三个输入信号:

x=[e,S,l,prev_act]\mathbf{x} = [\mathbf{e}, S, l, \text{prev\_act}]

其中:

  • e\mathbf{e}:token嵌入(通过随机嵌入表+均值池化)
  • SS:当前步长
  • ll:当前层索引
  • prev_act\text{prev\_act}:前序层专家激活状态的二值向量

训练:使用RandomForestRegressor(scikit-learn),在CPU上运行以避免GPU干扰。目标是最小化MSE:

MSE=1N∑i=1N∥yi−y^i∥2\text{MSE} = \frac{1}{N}\sum_{i=1}^{N}\|\mathbf{y}_i - \hat{\mathbf{y}}_i\|^2

专家内存管理

两级LRU缓存

缓存层级存储内容驱逐策略
LRU_high高复用潜力专家(近期访问或预测即将激活)最后驱逐
LRU_low低复用潜力专家(未近期访问)优先驱逐到DRAM

设计动机:标准LRU策略会过早驱逐初始层的专家——尽管这些专家在解码阶段经常被复用。

预取与缓存协调

  1. 计算跳步距离S前,查询当前缓存占用以估算有效带宽和驱逐成本
  2. 预取后,观察到的传输时间更新带宽估计CsC_s
  3. 预取适应的反馈计数器纳入缓存命中/未命中统计

缓存感知路由

当缓存未命中触发专家swap-in时,传输与活跃推理任务并行执行。缓存感知路由策略给予专家已驻留内存的token调度优先级,延迟需要额外I/O的token。

  • 缓存未命中解决在内存队列中具有最高优先级
  • 减少暴露延迟,提高整体吞吐量

四、核心创新

创新点说明实验依据
动态步长S基于运行时统计自适应调整跨层预测距离平均延迟降低98.5%
跨层预测器Random Forest + token语义 + 激活历史准确率提升21.79%
两级LRU缓存区分高/低复用潜力专家减少缓存未命中
缓存感知路由重叠缓存未命中处理与计算延迟降低96.65%
CPU预测器RandomForest在CPU运行,避免GPU干扰零GPU开销

五、实验结果

实验配置

测试平台:

  • NVIDIA A6000(64 GB/s带宽)
  • NVIDIA H20(128 GB/s带宽)
  • Ascend 910B(128 GB/s带宽)

模型:DeepSeek-V2-Lite, Qwen1.5, Qwen2.0(4-bit量化)

内存限制:GPU内存限制在20GB以模拟资源受限场景

基线:Transformers + ProMoE + Yandex pre-gate

整体延迟降低

等待延迟

Figure 7(a): A6000上的整体等待延迟。

等待延迟

Figure 7(b): H20上的整体等待延迟。

等待延迟

Figure 7(c): Ascend 910B上的整体等待延迟。

延迟对比(秒):

模型A6000 基线A6000 ExpertFlowH20 基线H20 ExpertFlow
DeepSeek1.380.03280.460.0029
Qwen1.51.050.02160.390.0022
Qwen21.770.10341.160.0978

预测器准确率

预测器准确率

Figure 8: 预门控与ExpertFlow预测器的准确率对比。

准确率对比:

模型预测器cpc_p预门控cgc_g差值Δ∞\Delta_\infty
DeepSeek63.44%26.43%+37.01%
Qwen1.565.31%33.29%+32.02%
Qwen260.45%29.61%+30.84%

准确率衰减建模:使用指数衰减函数拟合: f(t)=ae−bt+cf(t) = ae^{-bt} + c

内存管理效果

内存管理延迟 内存管理延迟 内存管理延迟

Figure 10: 新内存管理策略下的延迟。

关键观察:在S≈4处出现延迟”跳跃”,原因是GPU内存有限,小步长增加专家预测导致频繁swap-in,最终超出内存容量触发驱逐。

缓存感知路由效果

缓存路由延迟 缓存路由延迟 缓存路由延迟

Figure 11: 有无缓存感知路由的延迟对比。

延迟降低:

  • DeepSeek/Qwen1.5:延迟降低96.65%+
  • Qwen2.0:延迟降低55.58%(已有共享专家设计,改善较小但仍有显著收益)

六、相关工作

可稀疏激活与推理优化

方法特点与本文关系
ProMoE预测性MoE推理基线对比,ExpertFlow准确率更高
Yandex pre-gate预门控预测基线对比,ExpertFlow准确率+21.79%

路由与负载均衡

方法特点与本文关系
固定步长跨层预测静态预测距离ExpertFlow动态自适应
标准LRU缓存单级驱逐队列ExpertFlow两级LRU

七、总结

核心贡献

  1. ExpertFlow框架:自适应跨层预测的MoE推理动态预取框架

  2. 动态步长机制:基于运行时统计(带宽、参数维度、反馈信号)实时调整预测距离

  3. 跨层预测器:Random Forest模型结合token语义和激活历史,准确率提升30%+

  4. 两级LRU缓存:区分高/低复用潜力专家,减少不必要的驱逐

  5. 缓存感知路由:重叠缓存未命中处理与计算,延迟降低96%+

技术影响

  • 内存受限推理:在20GB GPU内存限制下实现高效MoE推理
  • 跨平台适应:在A6000、H20、Ascend 910B上均有效
  • 运行时优化:纯运行时方案,无需修改模型结构

局限性

  • 代码未开源:无法复现
  • 预测器训练:需要收集激活元数据进行离线训练
  • Ascend 910B限制:不支持INT4量化,Qwen2.0无法在该平台测试
  • H20异常:H20延迟高于A6000,推测是内存带宽未与算力成比例扩展

八、参考资源