vllm-project/vllm-ascend

[Contribution] 任务 #3:[Perf] 非-GVA layerwise prefetch 行为修正

Ouverte

#14 144 ouverte le 13 août 2026

 (4 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

背景

layerwise 架构的核心价值是"I/O 传输与 attention 计算重叠",但非-GVA 路径存在两个问题:(1) 默认 layerwise_prefetch_layers=1,预取窗口过小;(2) submit_count 仅在第 0 层使用 num_prefetch_layers、其余层固定提交 1 层,导致后续层的预取窗口无法维持。两者叠加使非-GVA layerwise 模式下 load 与 attention 实际串行,重叠设计失效。对比 GVA 路径默认 prefetch=8,差距明显。

相关代码:layerwise_prefetch_layers 默认值、_submit_ready_layer_loadssubmit_count 提交逻辑、wait_for_layer_load 等待逻辑。

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

任务

修正非-GVA layerwise 模式下的预取提交逻辑,使预取窗口在所有层都能有效维持,实现 I/O 与 attention 重叠。

  • 路径:非-GVA layerwise load 提交与等待逻辑
  • 修正点:默认值与 submit_count 在非第 0 层的提交策略
  • 具体默认值与提交策略由开发者自定,需通过性能数据验证窗口选择合理

验收标准

1. 功能正确性

  • 改动后非-GVA layerwise 模式输出不变(精度无回归)
  • 不引入死锁 / 资源越界

2. 性能验证

  • NPU 计算流利用率提升(profiler 数据)
  • 端到端延迟下降曲线(prefetch=1/2/4/8 对比)
  • 不同 num_layers / 序列长度下的收益

3. 交付件

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

环境约定

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

重点关注

  • 预取窗口放大需评估 HBM / buffer 占用上限

任务周期

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

Guide contributeur