欢迎来到 openFuyao 社区
Hey @thrower16 , 感谢你对社区的贡献.
机器人使用手册
有关指令的使用,可以点击 此处 查看详情。开发人员可以在每个PR或Issue下方评论特定指令来触发机器人任务。您可以自助配置此仓库的 PR 合并规则,更多详情,请参阅此处。
联系指引
有疑问可以联系 SIG: sig-ai-inference ,
维护者是: @foxbit, @regandy ,
审核者是: @ShiroChen, @piamposer-li, @qinwenzh .


@thrower16 感谢您的 issue!
issue 和 pr 内容都很明确,但目前 infernex 部署形态应该只支持一个 proxy-server 管理一组 pdgroup,因此实际上在当前部署形态下该亲和性路由总会退化到 off 模式。不知道您观察到的跨组 transfer 是在什么部署场景下出现的,还是说其实诉求是需要 infernex 能够支持 一个全局 proxy-server 管理多组 pdgroup?
您近期也在社区提出了多个 issue,方便的话希望您可以在今天(周四)下午四点的 sig 例会上做这些问题的具体分享以及进一步讨论。


@thrower16 感谢您的 issue!
issue 和 pr 内容都很明确,但目前 infernex 部署形态应该只支持一个 proxy-server 管理一组 pdgroup,因此实际上在当前部署形态下该亲和性路由总会退化到 off 模式。不知道您观察到的跨组 transfer 是在什么部署场景下出现的,还是说其实诉求是需要 infernex 能够支持 一个全局 proxy-server 管理多组 pdgroup?
您近期也在社区提出了多个 issue,方便的话希望您可以在今天(周四)下午四点的 sig 例会上做这些问题的具体分享以及进一步讨论。
您好,感谢您对相关PR提的建议,我会进一步总结相关需求以及目前PR代码需要优化的地方等等,在下午的例会向各位老师请教,谢谢!


背景
在 PD 分离部署架构中,Prefill 节点完成首 Token 计算后,需通过 Mooncake 将 KV-Cache 传输到 Decode 节点继续生成。当 Prefill 和 Decode 分属不同物理节点时,跨节点 KV Transfer 会引入额外网络延迟,成为 Decode 首 Token 延迟(TPOT)的主要来源之一。
问题
当前 proxy-server 的
LoadBalanceRouter在选择 Decode 节点时采用纯负载均衡策略(BackendPool.choose),仅基于active_tokens选择最空闲的节点,不考虑已选 Prefill 节点与候选 Decode 节点之间的pdGroupID亲和性。在多 pdGroup 部署场景下(例如不同机型/拓扑的 PD 组共集群),这会导致大量不必要的跨组 KV Transfer,加剧首 Token 延迟。
方案
在 proxy-server 路由层引入 pdGroupID 亲和性路由,根据已选 Prefiller 的
pdGroupID优先选择同组 Decode 节点,使 Mooncake KV Transfer 尽可能在同组节点间完成。提供三种可配置模式:
offprefer(默认)strict拆分说明
本 Issue 拆分为两个 PR:
评估指标