昇腾社区首页
中文
注册
开发者
下载

函数:get_function_addr

产品支持情况

产品

是否支持

Atlas A3 训练系列产品/Atlas A3 推理系列产品

Atlas A2 训练系列产品/Atlas 800I A2 推理产品/A200I A2 Box 异构组件

Atlas 训练系列产品

Atlas 推理系列产品

Atlas 200I/500 A2 推理产品

功能说明

根据核函数句柄获取Device侧算子起始地址。对于包含矩阵计算和矢量计算的算子,一个算子有两个起始地址,分别在Cube(矩阵)计算单元、Vector(向量)计算单元上执行,通过本接口可获取Cube计算单元、Vector计算单元上的算子起始地址。若通过本接口获取到aivAddr为空,则表示该算子只在Cube计算单元上执行。

函数原型

  • C函数原型
    1
    aclError aclrtGetFunctionAddr(aclrtFuncHandle funcHandle, void **aicAddr, void **aivAddr)
    
  • python函数
    1
    aic_addr, aiv_addr, ret = acl.rt.get_function_addr(func_handle)
    

参数说明

参数名

说明

func_handle

int,核函数句柄。

返回值说明

返回值

说明

aic_addr

int,AI Core或Cube Core上的算子起始地址。

  • 对于以下产品,此处返回的是AI Core上的算子起始地址。

    Atlas 训练系列产品

    Atlas 推理系列产品

  • 对于以下产品,此处返回的是Cube Core上的算子起始地址。

    Atlas A3 训练系列产品/Atlas A3 推理系列产品

    Atlas A2 训练系列产品/Atlas 800I A2 推理产品/A200I A2 Box 异构组件

    Atlas 200I/500 A2 推理产品

aiv_addr

int,Vector Core上的算子起始地址。

若通过本接口获取到aivAddr为空,则表示该算子不在Vector Core上执行。

ret

int,返回0表示成功,返回其他值表示失败。