vllm-project/vllm-ascend
[Contribution] 任务 #3:[Perf] 非-GVA layerwise prefetch 行为修正
开放
#14,144 创建于 2026年8月13日
help wanted
仓库指标
- 星标
- (2,637 个星标)
- PR 合并指标
- (平均合并 4天 5小时) (30 天内合并 559 个 PR)
描述
背景
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_loads 内 submit_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