Back to blog

EPD-Serve: A Flexible Multimodal EPD Disaggregation Inference Serving System on Ascend

面向多模态大模型的EPD阶段解耦推理系统,在昇腾NPU上实现57-69%吞吐量提升

EPD-Serve: A Flexible Multimodal EPD Disaggregation Inference Serving System on Ascend

一、论文概述

项目内容
标题EPD-Serve: A Flexible Multimodal EPD Disaggregation Inference Serving System on Ascend
作者Fan Bai, Pai Peng, Zhengzhi Tang, Zhe Wang, Gong Chen, Xiang Lu, Yinuo Li, Huan Lin, Weizhe Lin, Yaoyuan Wang, Xiaosong Li
机构华为技术有限公司
论文arXiv:2601.11590
硬件华为昇腾 (Ascend) NPU
领域多模态推理系统、阶段解耦

二、核心思想

问题定义

多模态推理流程

Figure 1: 大型多模态语言模型的推理流程

多模态大语言模型 (MLLMs) 需要处理文本、图像、音频、视频等多种模态。现有推理系统普遍采用单体架构,将 Encode、Prefill、Decode 三个阶段紧密耦合在同构硬件上,导致:

  • 硬件利用率低下
  • 系统吞吐量受限
  • 跨阶段资源干扰

延迟瓶颈分析

延迟比例分析

Figure 2: 主流MLLM随编码器序列长度增加的延迟比例

关键发现:

  • 视觉编码器(ViT)参数量达数亿至数十亿
  • 视觉编码生成的 token 序列远长于语言模型处理的序列
  • 注意力复杂度随序列长度二次增长
  • 编码阶段延迟可超过 LLM 的 Prefill 时间

三种异构性

异构类型描述影响
数据异构多种模态格式、动态变化的序列长度统一数据流管理困难
模型异构ViT/CNN编码器 vs 自回归解码器系统级调度复杂
计算异构纯文本 vs 多模态请求工作负载不均衡

现有方法局限

问题描述
执行干扰视觉编码和文本预填充竞争共享资源
统一并行策略无法满足阶段特定优化需求
串行执行阶段间无法资源复用

解决方案概述

EPD-Serve架构

Figure 3: EPD-Serve 解耦推理架构概述

EPD-Serve 将推理流水线解耦为三个独立阶段:

  1. Encode (E):处理多模态输入,生成高维嵌入序列
  2. Prefill (P):处理文本提示和多模态特征,生成首token和KV缓存
  3. Decode (D):自回归生成后续token

灵活部署策略:

  • E-P-D:完全解耦
  • EP-D:编码与预填充共置
  • ED-P:编码与解码共置
  • E-PD:预填充与解码共置

三、技术架构

核心公式

Encode 阶段:

Vm=E(Im)V_m = E(I_m)

其中 Vm∈Rn×dV_m \in \mathbb{R}^{n \times d} 表示 nn 个多模态 token,每个具有 dd 维特征向量。

Prefill 阶段:

O1,KV1=P(Vm,Vt)O_1, \mathrm{KV}_1 = P(V_m, V_t)

生成首个输出 token O1O_1 和 KVCache KV1\mathrm{KV}_1。

Decode 阶段:

O2,KV2=P(O1,KV1)O_2, \mathrm{KV}_2 = P(O_1, \mathrm{KV}_1)

自回归迭代直到生成 <eos> 或达到最大长度。

E-P 解耦传输机制

E-P解耦传输

Figure 4: E-P解耦的异步特征传输与流水线

多模态缓存池 (MM Store)

  • 使用多模态输入的哈希作为键
  • 存储对应的特征向量作为值
  • 避免重复缓存和传输
  • 支持跨请求特征复用

事件驱动异步预取

  1. Encode 完成后,仅异步发送特征哈希到目标 Prefill 实例
  2. 监听器接收事件后,从 MM Store 检索特征
  3. 写入本地缓存
  4. 传输轻量级哈希值,并行化执行和数据传输

容错重计算

  • 如果 Prefill 实例无法从 MM Store 检索特征
  • 触发本地重计算生成缺失向量
  • 保持流水线连续性

P-D 解耦传输机制

分层分组 KV 传输

层间 KV 传输:

  • KVCache 由每个 Transformer 层独立产生
  • 将缓存划分为层间传输单元
  • 减少一次性 KV 传输的瞬时带宽需求
  • 当 Prefill 计算第 (L+1) 层时,异步传输第 L 层的 KVCache
  • 实现通信与计算的时间重叠

调度策略

  • 多路调度:适应多模态输入特性
  • 实例级负载均衡:动态分配请求
  • 多阶段硬件资源共置:物理层空间复用

算子级硬件共置

算子级共置

Figure 6: 算子级硬件共置的资源分配与性能分析

关键洞察:

  • AI Core 和 AI Vector Core 对硬件资源需求不同
  • Encode 和 Prefill 阶段的算子可以互补共置
  • 实现物理层空间复用,提高硬件利用率

四、核心创新

创新点说明效果
EPD阶段解耦将推理流水线解耦为E/P/D三阶段消除跨阶段干扰
异步特征预取事件驱动+缓存池+容错重计算降低E-P传输延迟
分层KV传输层间异步传输,通信与计算重叠降低P-D传输开销
灵活共置策略E-PD/EP-D/ED-P多种部署模式适配不同工作负载
算子级硬件共置AI Core/Vector Core空间复用提高硬件利用率

五、实验结果

实验设置

配置详情
硬件华为昇腾 (Ascend) NPU
模型openPangu-7B-VL
工作负载ShareGPT-4o
负载平均12请求/秒/NPU
SLO约束TTFT ≤ 2000ms, TPOT ≤ 50ms

Encode阶段解耦效果

SLO Encode阶段

Figure 8: Encode阶段解耦与单体部署的SLO达成率对比

吞吐量 Encode阶段

Figure 9: Encode阶段解耦与单体部署的吞吐量对比

TTFT Encode阶段

Figure 10: Encode阶段解耦与单体部署的TTFT延迟对比

TPOT Encode阶段

Figure 11: Encode阶段解耦与单体部署的TPOT延迟对比

E-PD 部署(编码与预填充解耦后共置于单个NPU):

  • SLO达成率提升
  • 吞吐量超越单体部署
  • TTFT延迟降低
  • TPOT保持稳定

Decode阶段解耦效果

SLO Decode阶段

Figure 12: Decode阶段解耦与单体部署的SLO达成率对比

吞吐量 Decode阶段

Figure 13: Decode阶段解耦与单体部署的吞吐量对比

TTFT Decode阶段

Figure 14: Decode阶段解耦与单体部署的TTFT对比

TPOT Decode阶段

Figure 15: Decode阶段解耦与单体部署的TPOT对比

(E-P)-D 部署(在Decode阶段解耦基础上进一步解耦E和P):

  • 缓解来自Decode阶段的干扰
  • EP-D部署降低TPOT延迟
  • 吞吐量显著提升

综合性能

雷达图性能

Figure 17: openPangu-7B-VL在不同部署下的TTFT、TPOT和吞吐量性能

关键结果

表2: 吞吐量对比

部署方式吞吐量 (tokens/s)相对PD解耦
单体部署313.140.59x
PD解耦528.351.00x
EPD-Serve (E-P-D)834.151.58x
EPD-Serve (EP-D)857.811.62x

核心结果:

  • 相比PD解耦部署:57.37-69.48%吞吐量提升
  • 满足严格SLO约束:TTFT ≤ 2000ms, TPOT ≤ 50ms
  • 在高并发多模态场景下表现优异

六、相关工作对比

方法策略EPD-Serve优势
vLLM/SGLang/TGI单体架构EPD解耦消除干扰
Splitwise/DistServePD解耦增加Encode阶段解耦
HydraInferEPD逻辑解耦物理层共置+空间复用
SpaceServeEPD独立部署灵活共置策略
ModServe模态感知路由算子级硬件共置

七、总结

核心贡献

  1. EPD阶段解耦:将多模态推理流水线解耦为独立的Encode、Prefill、Decode阶段
  2. 异步特征预取:事件驱动+MM Store缓存池+E-P异步传输
  3. 分层KV传输:层间异步传输,通信与计算重叠
  4. 灵活部署策略:E-PD/EP-D/ED-P多种共置模式
  5. 算子级硬件共置:AI Core/Vector Core空间复用

实际意义

  • 在昇腾NPU上实现高性能多模态推理
  • 吞吐量提升57-69%
  • 满足严格SLO约束
  • 支持高并发多模态场景

技术影响

  • 为多模态推理系统架构优化提供新方向
  • 证明EPD解耦的有效性
  • 推动昇腾NPU在大模型推理领域的应用

八、关键图片索引

图片说明文件名
Figure 1多模态推理流程figure1-mllm-inference-flow.jpg
Figure 2延迟比例分析figure2-latency-proportion.jpg
Figure 3EPD-Serve架构figure3-epd-serve-architecture.jpg
Figure 6算子级共置figure6-operator-colocation.jpg
Figure 8SLO Encode阶段figure8-slo-encode-stage.jpg
Figure 9吞吐量 Encode阶段figure9-throughput-encode-stage.jpg
Figure 10TTFT Encode阶段figure10-ttft-encode-stage.jpg
Figure 11TPOT Encode阶段figure11-tpot-encode-stage.jpg
Figure 12SLO Decode阶段figure12-slo-decode-stage.jpg
Figure 13吞吐量 Decode阶段figure13-throughput-decode-stage.jpg
Figure 14TTFT Decode阶段figure14-ttft-decode-stage.jpg
Figure 15TPOT Decode阶段figure15-tpot-decode-stage.jpg
Figure 17雷达图综合性能figure17-radar-performance.jpg

九、参考资源