跳到主要内容

aclprofDestroyConfig

aclfvSetNMTopNum

函数功能

设置N:M场景下返回的topK结果数量的最大值,如果不设置,默认topK结果数量的最大值为500。同步接口。

Atlas 200/500 A2推理产品不支持该接口。

函数原型

aclErroraclfvSetNMTopNum(aclfvInitPara *initPara, uint32_t maxTopNumForNM)

参数说明

参数名输入/输出说明
initPara输入&输出特征向量检索初始化参数的指针。 需提前调用aclfvCreateInitPara接口创建aclfvInitPara类型的数据。
maxTopNumForNM输入N:M场景下返回的topK结果的最大值,取值范围:[500,4800]。

返回值说明

返回0表示成功,返回非0表示失败。

父主题: aclfvInitPara

aclprofCreateConfig

函数功能

创建aclprofConfig类型的数据,表示创建Profiling配置数据。同步接口。

aclProfConfig类型数据可以只创建一次、多处使用,用户需要保证数据的一致性和准确性。

如需销毁aclprofConfig类型的数据,请参见aclprofDestroyConfig

约束说明

  • 使用aclprofDestroyConfig接口销毁aclprofConfig类型的数据,如不销毁会导致内存未被释放。

  • aclprofDestroyConfig接口配对使用,先调用aclprofCreateConfig接口再调用aclprofDestroyConfig接口。

函数原型

aclprofConfig *aclprofCreateConfig(uint32_t *deviceIdList, uint32_t deviceNums, aclprofAicoreMetrics aicoreMetrics, aclprofAicoreEvents *aicoreEvents, uint64_t dataTypeConfig)

参数说明

参数名输入/输出说明
deviceIdList输入Device ID列表。
deviceNums输入Device的个数。需由用户保证deviceIdList中的Device个数与deviceNums参数值一致,否则可能会导致后续业务异常。
aicoreMetrics输入表示AI Core性能指标采集项。
aicoreEvents输入表示AI Core事件,目前配置为NULL。
dataTypeConfig输入用户选择如下多个宏进行逻辑或(例如:ACL_PROF_ACL_API | ACL_PROF_AICORE_METRICS),作为dataTypeConfig参数值。每个宏表示某一类性能数据,详细说明如下:
- ACL_PROF_ACL_API:表示采集AscendCL接口的性能数据,包括Device间的同步异步内存复制时延等。
- ACL_PROF_TASK_TIME:采集算子下发耗时、算子执行耗时数据以及算子基本信息数据,提供更全面的性能分析数据。
- ACL_PROF_TASK_TIME_L0:采集算子下发耗时、算子执行耗时数据。与ACL_PROF_TASK_TIME相比,由于不采集算子基本信息数据,采集时性能开销较小,可更精准统计相关耗时数据。
- ACL_PROF_AICORE_METRICS:表示采集AI Core性能指标数据,逻辑或时必须包括该宏,aicoreMetrics入参处配置的性能指标采集项才有效。
- ACL_PROF_TASK_MEMORY:控制CANN算子的内存占用情况采集开关。仅采集GE组件算子。
- ACL_PROF_AICPU:表示采集AI CPU任务的开始、结束数据。
- ACL_PROF_L2CACHE:表示采集L2 Cache数据。
- ACL_PROF_HCCL_TRACE:控制hccl数据采集开关。
- ACL_PROF_MSPROFTX:获取用户和上层框架程序输出的性能数据。
- ACL_PROF_RUNTIME_API:控制runtime api性能数据采集开关。

返回值说明

  • 返回aclprofConfig类型的指针,表示成功。
  • 返回nullptr,表示失败。

父主题: aclprofConfig

aclprofDestroyConfig

函数功能

销毁通过aclprofCreateConfig接口创建的aclprofConfig类型的数据。同步接口。

约束说明

  • aclprofCreateConfig接口配对使用,先调用aclprofCreateConfig接口再调用aclprofDestroyConfig接口。
  • 同一aclprofConfig指针重复调用aclprofDestroyConfig接口,会出现重复释放内存的报错。

函数原型

aclError aclprofDestroyConfig(const aclprofConfig *profilerConfig)

参数说明

参数名输入/输出说明
profilerConfig输入待销毁的aclprofConfig类型的指针。

返回值说明

返回0表示成功,返回非0表示失败。

父主题: aclprofConfig

aclprofCreateSubscribeConfig

函数功能

创建aclprofSubscribeConfig类型的数据,表示创建订阅配置信息。同步接口。

如需销毁aclprofSubscribeConfig类型的数据,请参见aclprofDestroySubscribeConfig

约束说明

  • 使用aclprofDestroySubscribeConfig接口销毁aclprofSubscribeConfig类型的数据,如不销毁会导致内存未被释放。

  • aclprofDestroySubscribeConfig接口配对使用,先调用aclprofCreateSubscribeConfig接口再调用aclprofDestroySubscribeConfig接口。

函数原型

aclprofSubscribeConfig *aclprofCreateSubscribeConfig(int8_t timeInfoSwitch, aclprofAicoreMetrics aicoreMetrics, void *fd)

参数说明

参数名输入/输出说明
timeInfoSwitch输入是否采集网络模型中算子的性能数据:
- 1:采集
- 0:不采集
aicoreMetrics输入表示AI Core性能指标采集项。 (说明:订阅接口目前仅提供算子耗时统计的功能,暂时不支持AicoreMetrics采集功能。)
fd输入用户创建的管道写指针。 用户在调用aclprofModelUnSubscribe接口后,系统内部会在数据发送结束后,关闭该模型的管道写指针。

返回值说明

  • 返回aclprofSubscribeConfig类型的指针,表示成功。
  • 返回nullptr,表示失败。

父主题: aclprofSubscribeConfig

aclprofDestroySubscribeConfig

函数功能

销毁通过aclprofCreateSubscribeConfig接口创建的aclprofSubscribeConfig类型的数据。同步接口。

约束说明

  • aclprofCreateSubscribeConfig接口配对使用,先调用aclprofCreateSubscribeConfig接口再调用aclprofDestroySubscribeConfig接口。
  • 同一aclprofSubscribeConfig指针重复调用aclprofDestroySubscribeConfig接口,会出现重复释放内存的报错。

函数原型

aclError aclprofDestroySubscribeConfig(const aclprofSubscribeConfig *profSubscribeConfig)

参数说明

参数名输入/输出说明
profSubscribeConfig输入待销毁的aclprofSubscribeConfig类型的指针。

返回值说明

返回0表示成功,返回非0表示失败。

父主题: aclprofSubscribeConfig

aclprofCreateStepInfo

函数功能

创建aclprofStepInfo对象,用于描述迭代信息。同步接口。

约束说明

  • 使用aclprofDestroyStepInfo接口销毁aclprofStepInfo类型的数据,如不销毁会导致内存未被释放。
  • aclprofDestroyStepInfo接口配对使用,先调用aclprofCreateStepInfo接口再调用aclprofDestroyStepInfo接口。

函数原型

aclprofStepInfo* aclprofCreateStepInfo()

返回值

  • 返回aclprofStepInfo类型的指针,表示成功。
  • 返回nullptr,表示失败。

:::note 说明 同一个aclprofStepInfo对象、同一个tag只能设置一次,否则Profiling解析会出错。 :::

父主题: aclprofStepInfo

在线提单