已关闭
[Question|问题咨询]: ACL Graph捕获阶段,是否支持通过调用aclrtSetDeviceResLimit动态修改设置cube核与vector核??? #487
Change创建于  5月9日关闭于  6月4日
Change
Change
5月9日 创建

Welcome to ask questions and discuss with other members.

问题描述

我的问题:单NPU卡环境下,多个不同batch大小的ACL Graph捕获阶段,对于每一个batch大小,每次捕获前设置cube核与vector核数量,然后进行ACL Graph捕获,这种情况下,aclrtSetDeviceResLimit是否会对捕获得到的ACL Graph生效,产生影响???

likedislike
Ttingwood成员
5月9日 将 tingwood 设为负责人
ChangeChange
5月9日 issue类型由 任务 改变为 咨询
tingwood成员
5月9日 评论:

原理:aclrtSetDeviceResLimit设置后,aclnn算子在捕获阶段可以获取设置后的可用核数量信息,从而决策出下发的任务的block数量。 算子block数量会被记录在ACL Graph任务信息中。
后续replay时ACL Graph会用已捕获的参数执行。
结合你的问题,aclrtSetDeviceResLimit在捕获前设置是会对ACL Graph产生影响。捕获后再设置就不生效

likedislike
Change
Change
5月9日 评论:

vllm框架层会对多个batch大小进行捕获,那么意思是只有在第一次捕获前设置aclrtSetDeviceResLimit才会对Graph生效是吗?

likedislike
Change
Change
5月9日 评论:

vllm框架层会对多个batch大小进行捕获,那么意思是只有在第一次捕获前设置aclrtSetDeviceResLimit才会对Graph生效是吗?

@ethan_shenze

下面的附件是我的测试代码demo,可以参考下,看下是否有问题:
256a841e999b4f51a17f0076cb75aeb5.txt

likedislike
GuangG
GuangG
5月20日 评论:

aclrtSetDeviceResLimit 作用时机
只在 ACL Graph 捕获阶段生效,用于指导算子计算 block 数量,并固化到 Graph 中。
replay 阶段不再生效,以捕获时保存的配置为准。
多 Batch、多次捕获场景(vLLM 适用)
• 不是“只第一次生效”
• 每一个不同 batch 捕获前,都必须重新调用 aclrtSetDeviceResLimit
• 这样每个 Graph 都会携带对应 batch 专属的核数配置,互不影响
正确使用流程
• 对 batch1 → setDeviceResLimit → captureGraph1
• 对 batch2 → setDeviceResLimit → captureGraph2
• 运行时:replay 各自 Graph,使用捕获时的核数配置

likedislike
Change
Change
5月21日 评论:

aclrtSetDeviceResLimit 作用时机
只在 ACL Graph 捕获阶段生效,用于指导算子计算 block 数量,并固化到 Graph 中。
replay 阶段不再生效,以捕获时保存的配置为准。
多 Batch、多次捕获场景(vLLM 适用)
• 不是“只第一次生效”
• 每一个不同 batch 捕获前,都必须重新调用 aclrtSetDeviceResLimit
• 这样每个 Graph 都会携带对应 batch 专属的核数配置,互不影响
正确使用流程
• 对 batch1 → setDeviceResLimit → captureGraph1
• 对 batch2 → setDeviceResLimit → captureGraph2
• 运行时:replay 各自 Graph,使用捕获时的核数配置

@GuangGOvO

这个特性在CANN 8.3 中也是支持的嘛

likedislike
wangtao成员
5月29日 评论:

@ethan_shenze
如下是8.3 RC1版本资料,是支持的
https://www.hiascend.com/document/detail/zh/canncommercial/83RC1/API/appdevgapi/aclcppdevg_03_1879.html

如果能解决你的问题,本issue将关闭。

likedislike
Wwangtao成员
6月1日 添加了label:wait-feedback
Change
Change
6月2日 评论:

@ethan_shenze
如下是8.3 RC1版本资料,是支持的
https://www.hiascend.com/document/detail/zh/canncommercial/83RC1/API/appdevgapi/aclcppdevg_03_1879.html

如果能解决你的问题,本issue将关闭。

@wangtao43

OK

likedislike
CANN-robotCANN-robot成员
6月2日 删除了label:wait-feedback
Wwangtao成员
6月4日 issue状态由 进行中 改变为 已完成
Wwangtao成员
6月4日 关闭了 issue