昇腾社区首页
中文
注册

aclnnInit

产品支持情况

产品 是否支持
[object Object]Atlas A3 训练系列产品/Atlas A3 推理系列产品[object Object]
[object Object]Atlas A2 训练系列产品/Atlas 800I A2 推理产品/A200I A2 Box 异构组件[object Object]
[object Object]Atlas 200I/500 A2 推理产品[object Object]
[object Object]Atlas 推理系列产品 [object Object]
[object Object]Atlas 训练系列产品[object Object]

功能说明

aclnn接口的初始化函数,必须在调用aclnn算子前调用,否则可能导致业务异常。

该接口需与aclnnFinalize接口配套使用,分别完成aclnn接口的初始化、去初始化。

函数原型

aclnnStatus aclnnInit(const char *configPath)

aclnnInit

  • 参数说明:

    configPath(char*, 计算输入):aclnn的初始化配置文件所在路径(包含文件名),开发者可通过此配置开启aclnn接口的debug调试能力。默认为NULL。 配置文件要求为json格式,例如configPath的取值为“/home/acl.json”,acl.json的配置示例如下:

    [object Object]

    配置项“enable_debug_kernel”取值如下:

    • on:开启aclnn接口的debug调试能力,即算子在执行过程中会检测Global Memory是否内存越界,内部流水线是否同步等操作。
    • off(默认值):不开启aclnn接口的debug调试能力。
  • 返回值:

    aclnnStatus:返回状态码,具体参见undefined

约束说明

  • 一个进程内只允许调用一次aclnnInit,不支持重复调用。
  • 调用本接口或aclInit接口,均可实现aclnn的初始化,两者区别在于,aclnnInit仅完成aclnn初始化,aclInit可完成acl接口中各子功能(包含aclnn)的初始化,前者更轻量化些。如果两个接口都调用,也不返回失败。

调用示例

关键步骤代码如下,仅供参考,不支持直接拷贝运行。

[object Object]