aclrtCacheLastTaskOpInfo
产品支持情况
产品 |
是否支持 |
|---|---|
√ |
|
√ |
|
☓ |
|
☓ |
|
☓ |
功能说明
基于捕获方式构建模型运行实例场景下,把指定内存中的算子信息按照infoSize大小缓存到当前线程中最后下发的任务上。
函数原型
aclError aclrtCacheLastTaskOpInfo(const void * const infoPtr, const size_t infoSize)
参数说明
参数名 |
输入/输出 |
说明 |
|---|---|---|
infoPtr |
输入 |
缓存信息内存地址指针,此处是Host内存 |
infoSize |
输入 |
缓存信息内存大小,取值范围:(0, 64K],单位Byte。 |
返回值说明
返回0表示成功,返回其他值表示失败,请参见aclError。
接口调用流程
本接口需与以下其它关键接口配合使用,以便控制后续采集性能数据时附带算子信息:
- 调用aclmdlRICaptureBegin接口开始捕获任务。
- 调用aclrtSetStreamAttribute接口开启算子信息缓存开关。
- 下发算子执行任务,例如调用aclrtLaunchKernelWithConfig接口。
- 调用aclrtGetStreamAttribute接口获取算子信息缓存开关是否开启。
只有在捕获状态下,且通过aclrtSetStreamAttribute接口开启了算子信息缓存开关,此处的aclrtGetStreamAttribute接口才能获取到算子信息缓存开关已开启的状态,后续才可以缓存算子信息。
- 调用aclrtCacheLastTaskOpInfo接口缓存算子信息。
- 再次调用aclrtSetStreamAttribute接口关闭算子信息缓存开关。
- 调用aclmdlRICaptureEnd接口结束任务捕获。
- 开启采集性能数据(参见Profiling数据采集接口章节下的接口)后,调用aclmdlRIExecuteAsync接口执行推理。
在此过程中,采集的性能数据会附带算子信息。
- 最后,调用aclmdlRIDestroy接口销毁模型运行实例时,算子缓存信息也会被一并释放。
父主题: 其他接口