vllm-project/vllm-ascend

[Contribution] 任务 #4:[Perf] ZMQ lookup payload 裁剪

开放

#14,145 创建于 2026年8月13日

 (2 条评论) (0 个反应) (0 位负责人)C++ (2,048 个派生)github user discovery
help wanted

仓库指标

星标
 (2,637 个星标)
PR 合并指标
 (平均合并 4天 5小时) (30 天内合并 559 个 PR)

描述

背景

scheduler 调用 LookupKeyClient.lookup() 时把完整的 request.block_hashes 传给 client,再由 worker 侧用 hbm_hit_tokens 跳过前缀。对长 prompt,这放大了 IPC payload 和 msgpack 编解码成本。

相关代码:scheduler 侧 lookup 调用、LookupKeyClient.lookup 编码、worker 侧 hbm_hit_tokens 跳过前缀逻辑。

相关代码路径:vllm_ascend/distributed/kv_transfer/kv_pool/ascend_store

任务

减少 ZMQ lookup 的 IPC payload 与编解码开销。

  • 路径:scheduler -> ZMQ client -> worker lookup server
  • 目标:只发送待查询部分,不传冗余前缀

验收标准

1. 功能正确性

  • 裁剪后命中结果与发完整 hashes 一致
  • 边界(hbm_hit_tokens = 0 / = 全长)处理正确
  • 现有单测全绿

2. 性能验证

  • 长 prompt(16K/64K)下 IPC payload 大小下降
  • lookup 延迟下降

3. 交付件

  • PR + 设计说明 + 性能数据 + 单测

环境约定

  • vllm-ascend:最新 main
  • 硬件:Ascend NPU(注明型号 + 卡数 + TP/CP/PP 配置)
  • 关联任务池:#9079
  • 验收人:@赵鹏博

重点关注

  • offset 语义需 scheduler 与 worker 双向对齐

任务周期

  • 发布:2026-08-12
  • 回收:2026-09-30

贡献者指南