问题域/PD-387

disaggregated推理

Disaggregated Serving

将prefill和decode阶段分离到不同节点,实现异构资源调度

子问题

1.KV Cache跨节点传输

2.prefill/decode节点调度

3.网络带宽优化

4.一致性保障

5.P/D 节点间 schema 兼容性校验与版本协商

6.KV 加载失败后的 recompute 降级策略

7.多 connector 组合使用时的元数据聚合与统计合并

8.异构 TP 并行度下的 KV block 映射与重排

各项目的解法1 solutions

Signals

横向对比

维度vLLM
传输协议NIXL(RDMA/UCX) + P2P-NCCL + LMCache + Mooncake 等 10 种可插拔后端
角色分离Scheduler/Worker 双角色枚举,同一 connector 类构造时分裂为两个独立实例
异步流水线start_load_kv 在 forward 前异步启动,wait_for_layer_load 逐层等待,传输与计算重叠
兼容性校验SHA-256 兼容性哈希(模型架构+dtype+backend),两阶段握手解码防 schema 不兼容
失败策略kv_load_failure_policy 支持 recompute(重算失败 block)和 fail(直接失败)
内存布局优化NixlConnector 强制 HND 布局提升 RDMA 传输效率,MLA 模型自动回退
组合模式MultiConnector 支持同时使用多个 connector(如 NIXL + Offloading)

最佳实践

1.高带宽互联场景下使用disagg提升资源利用率

2.通过KV Connector抽象传输协议

3.用 SHA-256 兼容性哈希做两阶段握手,避免 schema 不兼容时的解码崩溃

4.Scheduler/Worker 角色在构造时分裂为独立实例,强制隔离调度逻辑与 GPU 操作

5.KV 传输与模型 forward 异步流水线化,start_load 在 forward 前启动,逐层 wait 隐藏延迟