Back to blog

Taming Latency-Memory Trade-Off in MoE-Based LLM Serving via Fine-Grained Expert Offloading

通过细粒度专家卸载优化MoE大模型服务的延迟-内存权衡

Taming Latency-Memory Trade-Off in MoE-Based LLM Serving via Fine-Grained Expert Offloading

一、论文概述

项目内容
标题Taming Latency-Memory Trade-Off in MoE-Based LLM Serving via Fine-Grained Expert Offloading
作者Hanfei Yu, Xingqi Cui, Hong Zhang, Hao Wang, Hao Wang
机构Stevens Institute of Technology, Rice University, University of Waterloo, Rutgers University
会议EuroSys ‘26 (21st European Conference on Computer Systems)
论文arXiv:2502.05370
领域cs.LG, cs.AI, cs.DC

二、核心思想

问题定义

Mixture-of-Experts (MoE) 架构已成为现代大语言模型的主流骨干,但其服务阶段面临严重的内存效率问题:

MoE模型参数量 (活跃/总计)每层专家 (活跃/总计)层数非活跃参数占比
Mixtral-8×7B12.9B / 46.7B2/83272%
Qwen1.5-MoE2.7B / 14.3B4/602481%
Phi-3.5-MoE6.6B / 42B2/163284%

MoE服务的延迟-内存权衡困境:

MoE服务示意图

现有专家卸载方案无法同时实现低延迟和低内存占用:

方案类型代表方法优势问题
低延迟优先No-offload, MoE-Infinity低推理延迟内存占用大
低内存优先ProMoE, Mixtral-Offloading, DeepSpeed内存效率高推理延迟高

根本原因:

  1. 粗粒度设计:现有方案在请求级别跟踪专家模式,聚合后的模式熵值高、可预测性差
  2. 平衡路由:MoE模型使用负载均衡损失,导致专家使用更均匀
  3. 模型异质性:不同MoE模型和输入提示具有不同特性,一刀切设计无法适应

解决方案概述

FineMoE提出细粒度专家卸载系统,通过以下创新解决延迟-内存权衡:

  1. Expert Map数据结构:迭代级别的专家概率分布跟踪
  2. 语义+轨迹双搜索:结合输入语义嵌入和专家轨迹的相似度搜索
  3. 动态预取阈值:根据搜索置信度动态调整预取策略
  4. 异步架构:解耦推理与预取操作

设计空间

三、技术架构

整体框架

FineMoE架构

FineMoE包含三个核心组件:

组件功能实现
Expert Map Store存储历史专家地图PyTorch + NumPy ndarray
Expert Map Searcher语义+轨迹相似度搜索PyTorch原生操作
Expert CacheGPU上的专家缓存C++ + CUDA Runtime API

核心数据结构:Expert Map

Expert Map结构

Expert Map记录迭代级别的专家概率分布:

Pl(i):={pl,1(i),…,pl,j(i),…,pl,J(i)},∑j∈[J]pl,j(i)=1\mathbf{P}_l^{(i)} := \{ p_{l,1}^{(i)}, \ldots, p_{l,j}^{(i)}, \ldots, p_{l,J}^{(i)} \}, \quad \sum_{j \in [J]} p_{l,j}^{(i)} = 1 mapi:={P1(i),…,Pl(i),…,PL(i)}\text{map}_i := \{ \mathbf{P}_1^{(i)}, \ldots, \mathbf{P}_l^{(i)}, \ldots, \mathbf{P}_L^{(i)} \}

关键优势:

  • 细粒度:迭代级别而非请求级别跟踪
  • 概率分布:不仅记录选择/未选择,还记录置信度
  • 通用性:可通过top-K选择和聚合恢复粗粒度信息

粗粒度 vs 细粒度分析

专家热力图

熵分析:

熵分析

迭代熵

粒度Shannon熵可预测性
粗粒度 (请求级)高低
细粒度 (迭代级)低高

关键发现:随着迭代进行,熵值逐渐增加并趋于稳定(约10次迭代后)。

专家地图搜索

地图搜索流程

FineMoE采用双搜索策略:

1. 语义搜索 (层 l∈[1,d]l \in [1, d]):

scorex,ysem:=semxnew⋅semyold∥semxnew∥⋅∥semyold∥,x∈[B],y∈[C]\text{score}_{x,y}^{\text{sem}} := \frac{\text{sem}_x^{\text{new}} \cdot \text{sem}_y^{\text{old}}}{\| \text{sem}_x^{\text{new}} \| \cdot \| \text{sem}_y^{\text{old}} \|}, \quad x \in [B], y \in [C]

2. 轨迹搜索 (层 l∈[d+1,L]l \in [d+1, L]):

scorex,ytraj:=mapxnew⋅mapyold∥mapxnew∥⋅∥mapyold∥,x∈[B],y∈[C]\text{score}_{x,y}^{\text{traj}} := \frac{\text{map}_x^{\text{new}} \cdot \text{map}_y^{\text{old}}}{\| \text{map}_x^{\text{new}} \| \cdot \| \text{map}_y^{\text{old}} \|}, \quad x \in [B], y \in [C]

相似度有效性验证:

相似度与命中率

皮尔逊相关系数

实验表明,语义和轨迹相似度分数与专家命中率呈强正相关。

动态预取策略

给定搜索到的专家地图 Pl\mathbf{P}_l 和相似度分数 score\text{score},FineMoE动态计算专家选择阈值:

δl:=Clip(1−score,0,1)=max⁡(0,min⁡(1−score,1))\delta_l := \text{Clip}(1 - \text{score}, 0, 1) = \max(0, \min(1 - \text{score}, 1))

预取集合优化:

min⁡{El,j}∣Eprefetch∣\min_{\{E_{l,j}\}} |E_{\text{prefetch}}| s.t.∑El,j∈Eprefetchpl,j≥δl,j∈[J],∀l∈[L]\text{s.t.} \sum_{E_{l,j} \in E_{\text{prefetch}}} p_{l,j} \geq \delta_l, \quad j \in [J], \forall l \in [L] ∣Eprefetch∣≥K|E_{\text{prefetch}}| \geq K

直觉:

  • 高置信度(高分数)→ 低阈值 → 预取更少专家 → 节省内存
  • 低置信度(低分数)→ 高阈值 → 预取更多专家 → 降低误预测风险

专家缓存管理

预取优先级:

PRIl,jprefetch:=pl,jl−lnow\text{PRI}_{l,j}^{\text{prefetch}} := \frac{p_{l,j}}{l - l_{\text{now}}}

驱逐优先级(基于LFU):

PRIl,jevict:=1pl,j⋅freql,j\text{PRI}_{l,j}^{\text{evict}} := \frac{1}{p_{l,j} \cdot \text{freq}_{l,j}}

冗余去重:

RDYx,y:=dL⋅scorex,ysem+L−dL⋅scorex,ytraj\text{RDY}_{x,y} := \frac{d}{L} \cdot \text{score}_{x,y}^{\text{sem}} + \frac{L-d}{L} \cdot \text{score}_{x,y}^{\text{traj}}

理论保证:保持至少 2LJ2LJ 个专家地图可保证75%相似度下界;保持 2LJln⁡(LJ)2LJ \ln(LJ) 个可保证98%相似度下界。

四、核心创新

创新点说明理论/实验依据
Expert Map迭代级专家概率分布跟踪熵值比粗粒度低30%+
语义+轨迹双搜索结合输入嵌入和专家轨迹皮尔逊系数>0.8
动态预取阈值根据搜索置信度调整平均命中率提升39%
异步Publisher-Subscriber解耦推理与预取延迟开销<1%
最小球覆盖去重理论保证的地图多样性75%-98%相似度下界

五、实验结果

实验设置

配置详情
硬件6× NVIDIA RTX 3090 (24GB), NVLink互联, PCIe 4.0
对比平台NVIDIA A100 (80GB HBM2e)
模型Mixtral-8×7B, Qwen1.5-MoE, Phi-3.5-MoE
数据集LMSYS-Chat-1M, ShareGPT
基线MoE-Infinity, ProMoE, Mixtral-Offloading, DeepSpeed-Inference
指标TTFT (首token延迟), TPOT (每token延迟), 专家命中率

离线服务性能

离线性能

对比基线TTFT降低TPOT降低
vs DeepSpeed-Inference74%46%
vs Mixtral-Offloading67%38%
vs ProMoE56%27%
vs MoE-Infinity53%22%

专家命中率提升:

  • vs Mixtral-Offloading: +14%
  • vs ProMoE: +37%
  • vs MoE-Infinity: +68%

在线服务性能

在线延迟CDF

使用Azure推理trace(256个请求,2.91 req/s),FineMoE在端到端请求延迟上显著优于所有基线。

缓存限制下的性能

缓存限制性能

在6GB缓存限制下:

  • vs DeepSpeed-Inference: TPOT降低36%
  • vs Mixtral-Offloading: TPOT降低25%
  • vs ProMoE: TPOT降低16%
  • vs MoE-Infinity: TPOT降低29%

高端GPU性能

A100性能

在A100测试平台上,FineMoE仍然一致优于所有基线,但性能差距缩小(高端GPU推理更快,卸载开销更低)。

消融实验

消融实验-跟踪

专家地图搜索有效性:

跟踪方法说明命中率
Speculate投机预测(Mixtral-Offloading, ProMoE)中等
Hit count请求级命中计数(MoE-Infinity)最低
Map (T)仅轨迹相似度较高
Map (T+S)轨迹+语义,静态top-K高
Map (T+S+δ)完整FineMoE最高

消融实验-缓存

缓存策略有效性:LFU优于LRU,FineMoE的相似度感知缓存优于两者。

敏感度分析

预取距离:

预取距离

模型最优预取距离
Mixtral-8×7B3
Qwen1.5-MoE6
Phi-3.5-MoE4

Expert Map Store容量:

地图容量

1K地图容量即可获得接近最优的相似度分数,进一步扩大收益递减。

批量大小:

批量大小

FineMoE在不同批量大小下均保持最低的TTFT和TPOT。

系统开销

延迟开销:

延迟分解

操作开销是否阻塞推理
上下文收集<50ms否
地图搜索异步否
专家预取异步否
地图更新异步否
总同步开销<1%迭代延迟-

内存开销:

内存开销

地图容量CPU内存占用
1K<10MB
32K<200MB

六、相关工作

方法类型特点与FineMoE的区别
DeepSpeed-Inference无损卸载逐层参数卸载无专家感知,无预取
Mixtral-Offloading无损卸载LRU缓存+投机预测粗粒度,同步预取
MoE-Infinity无损卸载请求级激活矩阵粗粒度,低命中率
ProMoE无损卸载训练预测器需要训练,层间开销大
SwapMoE无损卸载关键专家保持工作负载自适应差
Hobbit有损服务混合精度专家牺牲质量
Samoyeds有损服务稀疏张量核心牺牲质量
Pre-gated MoE重构预门控函数需要训练

七、总结

核心贡献

  1. Expert Map数据结构:首次提出迭代级别的专家概率分布跟踪方法
  2. 语义+轨迹双搜索:结合输入语义嵌入和专家轨迹的混合相似度搜索
  3. 动态预取策略:根据搜索置信度自适应调整专家预取数量
  4. 显著性能提升:延迟降低47%,专家命中率提升39%

技术影响

  • 内存效率:显著降低MoE服务的GPU内存需求
  • 推理速度:首token延迟降低53%-74%,每token延迟降低22%-46%
  • 通用性:适用于Mixtral、Qwen、Phi等多种MoE架构
  • 生产就绪:基于HuggingFace Transformers,开销可忽略

局限性

  1. 预取距离:需要根据具体模型调优
  2. 地图容量:虽然1K通常足够,但极端场景可能需要调整
  3. 负载均衡:主要针对top-K路由,对其他路由方案需要适配
  4. 硬件依赖:性能增益在高端GPU上相对较小

八、参考资源

  • 论文:arXiv:2502.05370
  • 会议:EuroSys ‘26
  • 代码库:基于MoE-Infinity代码库
  • 相关项目:MoE-Infinity, HuggingFace Transformers