跳到主要内容

总览

本章节范围:LLM 推理从单机走向集群服务化后的通信形态 — PD 分离 / KV 池化 / Cache-aware 调度 / 长上下文 / Reasoning 长 CoT / 投机解码。 目标读者:做生产 LLM 推理部署、KV cache 跨节点搬运、SLO 驱动的调度策略选型的工程师。

范围与边界

  • 包含:推理部署形态 (PD 分离 / colocated / KV 池化 / 投机解码);主流系统 (DistServe / Mooncake / SGLang PD / NVIDIA Dynamo) 设计与对比;KV cache 跨节点传输的瓶颈分析 (RTT-bound vs BW-bound); Cache-aware 调度算法 (RadixAttention / Conductor / CPD / STAR); Reasoning 长 CoT 对 decode 集群的压力。
  • 不包含:各并行策略 (TP/PP/DP/EP/SP/CP) 单次前向通信特征 (见 05-LLM并行通信);集合通信原语公式 (见 04-集合通信); $\alpha$-$\beta$ 性能模型 (见 06-通信性能建模)。
  • 边界一句话:05 章讲"一次前向里的通信",本章讲"一个请求在系统里的通信"。

名词定义

名词定义
推理服务化 (Inference Serving)把 LLM 包装成可在线服务上万并发请求的部署形态,在 SLO (TTFT / TPOT / 吞吐) 和成本间权衡
Prefill推理首阶段,对整个 prompt 一次性计算 KV cache 产出首 token; compute-bound,大消息通信
Decode推理续生成阶段,每步基于已有 KV cache 生成一个新 token; memory-bandwidth-bound,小消息通信
TTFT (Time To First Token)从请求到达至首 token 输出的端到端延迟,由 prefill 时间主导
TPOT (Time Per Output Token)续生成阶段的单 token 平均延迟,由 decode 步长主导
KV cacheAttention 中累计的 Key / Value 张量,decode 反复读取的状态,体积与序列长度线性增长
PD 分离 (Prefill-Decode Disaggregation)把 prefill 与 decode 部署到独立 GPU 池,跨池迁移 KV cache,避免相互干扰
KV 池化 (KV Pooling)把 KV cache 统一放在跨节点共享存储 (DRAM / CXL / SSD) 中,按需调度到 GPU,代表方案 Mooncake
Cache-aware Scheduling根据请求 prefix 与已存在 KV cache 的命中关系,把请求路由到能复用 cache 的节点
投机解码 (Speculative Decoding)用 draft model 提前生成候选 token, target model 一次性 verify,提升 decode 等效吞吐
Reasoning Modelo1 / o3 / DeepSeek-R1 等通过延长 CoT 生成长度提升推理质量的模型,对 decode 集群压力显著放大
SLO (Service Level Objective)推理服务对 TTFT / TPOT 等延迟指标的承诺,是部署决策的硬约束
GoodputDistServe 定义为"每张 GPU 在满足 SLO attainment 目标 (如 90%) 下可承载的最大请求速率"
XpYdMooncake 部署比例记号:X 个 prefill 节点 + Y 个 decode 节点
NIXLNVIDIA Inference Xfer Library, Dynamo 的零拷贝传输底座,统一抽象 RDMA / GDS / S3

@tbl-serving-glossary 第 10 章共享名词表

推理为什么要从单机走向服务化

核心问题:单机部署在哪些维度撞墙?服务化引入的新通信负担是什么?

研究阶段的推理通常是"一台机器、一个 prompt、看一遍生成结果"。一旦面向生产,要在同一套硬件上同时服务上万并发请求并保证延迟 SLO,单机部署会在四个维度上同时撞墙:

维度单机部署的问题服务化需要解决
吞吐单卡 batch size 受显存限制,请求排队continuous batching / 动态合批
延迟 SLOTTFT 和 TPOT 由同一组 GPU 竞争资源把 prefill / decode 解耦,分别按 SLO 调度
显存长上下文 KV cache 一旦超出单卡 HBM 就失败跨节点 KV 池化、PagedAttention、CXL 扩展
长尾请求reasoning model 的 CoT 长度方差极大,少数请求会拖累整批优先级调度、preemption、Chunked Prefill

@tbl-serving-singlemachine-walls 单机 vs 服务化部署的四维差距

服务化部署的本质:把一个推理请求拆成多种阶段、多种资源、多种通信路径,分别在最适合的硬件上运行。由此引入了三类此前不存在的通信负担:

  1. KV cache 跨节点搬运 — prefill 与 decode 不在同一组 GPU 上,KV 必须迁移
  2. 调度信令通信 — cache-aware router / conductor 之类的中心化或 P2P 调度协议
  3. 投机解码 draft-target 通信 — draft model 与 target model 协同时的候选 token 同步

这些通信负担是本章的核心讨论对象,也是 05-LLM并行通信 不覆盖的内容。

关键挑战清单

核心问题:推理服务化的工程挑战哪些与互联强相关?

推理服务化的工程挑战可以按"硬指标 vs 业务诉求"两个轴铺开:

挑战主要影响互联相关性
降 TTFTprefill 阶段的算力 + 跨节点 CP 通信
降 TPOTdecode 阶段的 HBM 带宽 + 小消息 alpha中 (小消息延迟敏感)
提吞吐continuous batching、PD 解耦使资源专用高 (KV 迁移带宽)
控成本prefill / decode GPU 异构、CXL DRAM 扩展高 (跨池带宽决定是否划算)
长上下文 (128K-1M)KV cache 暴涨、CP / RingAttention 通信极高 (互联是关键)
Reasoning 长 CoTdecode 步数从几十增到几千,集群被长尾拖累中 (动态调度 + KV 迁移频次)
Prefix Cache 命中system prompt / 多轮对话复用 KV 节省 prefill高 (cache-aware 调度依赖 KV 索引同步)

@tbl-serving-challenges 推理服务化的关键挑战及与互联的相关性

挑战相互耦合:长上下文模型让 KV cache 变大、放大 PD 分离的迁移成本;reasoning model 让 decode 队列变长、放大调度算法的重要性。本章子主题之间不是平行而是交织 — 读完单篇只能看清一面,需要在总览这里把整张清单说清楚。

主流范式有哪几种

核心问题:Colocated / PD 分离 / KV 池化 / 投机解码增强是什么关系?怎么叠加?

Colocated 与 PD 分离的二分原理已在 05-LLM并行通信/09-推理部署模式 展开。这里只展开 05-09 未覆盖的两种叠加形态 — KV 池化和投机解码增强:

范式Prefill / Decode 位置KV cache 位置代表实现
KV 池化 (KV-centric)独立 GPU 池 + 共享 KV 存储跨节点 DRAM / CXL / SSD 池Mooncake / NVIDIA Dynamo
投机解码增强任一形态 + 独立 draft model主链路 + draft 临时状态EAGLE / MTP / 分布式投机解码

@tbl-serving-paradigms KV 池化与投机解码增强两种叠加范式

这两种范式与 colocated / PD 分离不是替代而是叠加:生产系统 (Mooncake / Dynamo) 通常同时启用 PD 分离 + KV 池化 + 投机解码。它们与 colocated / PD 分离的差别主要在:

  • KV cache 的搬运频率与方向:KV 池化按调度命中搬多次 (PD 分离每请求只搬一次)
  • 调度算法的复杂度:KV 池化需要全局 cache 索引 + 路由
  • 对互联拓扑的要求:KV 池化需要 CXL / RDMA 大池带宽 (PD 分离只需跨池 RDMA)

与 05-LLM 并行通信怎么划边界

核心问题:05 章和 10 章容易混淆,各自的关注层次是什么?

维度05-LLM 并行通信09-推理服务化通信 (本章)
关注层次单次前向 / 反向中各并行维度 (TP/PP/DP/EP/SP/CP) 产生的通信原语把推理请求拆成多阶段、多集群协同的部署形态
通信对象Activation、梯度、Expert 路由 tokenKV cache、调度信令、draft token
时间尺度一次 forward 内 (毫秒级)一个请求生命周期 (秒级到分钟级)
通信原语AllReduce / AllGather / AllToAll / P2PRDMA write / KV 迁移 / router RPC
主要问题各并行策略的通信量公式与重叠潜力KV 怎么迁移、请求怎么路由、什么时候解耦

@tbl-serving-vs-llm-parallel 05-LLM 并行通信 与 09-推理服务化通信 的边界

一句话:05 章讲"一次前向里的通信", 10 章讲"一个请求在系统里的通信"。05 章是基础 (决定单节点跑哪种并行),10 章构建在 05 之上 (决定整个集群怎么协同)。

衔接点是 05-09-推理部署模式 — 该文档在 05 章引入了 prefill / decode 通信不对称和 PD 解耦的基础概念,作为 10 章的入口铺垫。10 章不重复 05-09 的基础内容,而是逐个系统展开实现细节、定量比较和工业实测。

子文档索引

按"原理 → 系统实现 → 通信优化 → 调度 → 长上下文 / reasoning"组织:

  • 9.2 Prefill/Decode 分离原理 — PD 分离的调度模型、SLO 拆分 (TTFT / TPOT)、与 colocated 的取舍。
  • 9.3 DistServe — OSDI'24 学术原型:Goodput 指标 + 双 Placement 算法 (按节点间带宽分类)。
  • 9.4 Mooncake — Moonshot Kimi 的 KV-centric 架构:Conductor + Messenger + 跨节点 KV pool。
  • 9.5 SGLang PD — 开源 PD 实现:mini-LB / DP attention / Heterogeneous TP / Mooncake / NIXL backend。
  • 9.6 NVIDIA Dynamo — NVIDIA GTC 2025 发布的开源 LLM 推理编排框架:Smart KV Router + 多级 KVBM + NIXL。
  • 9.7 KV cache 跨节点传输瓶颈 — KV 迁移到底是 RTT-bound 还是 BW-bound;不同拓扑层次临界点。
  • 9.9 Cache-aware 调度 — Prefix cache 命中驱动的路由策略 (RadixAttention / Conductor / CPD / STAR)。
  • 9.12 Reasoning 模型推理通信 — 长 CoT 对 decode 集群的压力与动态长度调度。

规划中未发布:08-flowkv (KV 传输流水线优化) / 10-cxl-rack-kv (CXL 机架级 KV 共享) / 11-长上下文推理通信 (CP for 1M token) / 13-投机解码通信 — 这些子主题在本知识域规划中,但尚未撰写。

Takeaway

知识点核心结论
服务化撞墙吞吐 / 延迟 SLO / 显存 / 长尾四维同时撞墙,单机部署不够
新增三类通信KV cache 跨节点搬运 + 调度信令 + 投机解码 draft-target 同步
主流范式colocated / PD 分离 / KV 池化 / 投机解码增强,生产通常同时叠加
与 05 章边界05 讲一次前向通信,10 讲一个请求在系统里的通信
挑战相互耦合长上下文放大 PD 分离迁移成本;reasoning 放大调度算法重要性