vllm-project/vllm-ascend

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

Ouverte

#14 145 ouverte le 13 août 2026

 (2 commentaires) (0 réaction) (0 personne assignée)C++ (2 048 forks)github user discovery
help wanted

Métriques du dépôt

Stars
 (2 637 étoiles)
Métriques de merge PR
 (Merge moyen 4j 5h) (559 PRs mergées en 30 j)

Description

背景

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

Guide contributeur