昇腾社区首页
中文
注册

函数:set_kernel_args

产品支持情况

产品

是否支持

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

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

Atlas 训练系列产品

Atlas 推理系列产品

Atlas 200I/500 A2 推理产品

Atlas 200/300/500 推理产品

功能说明

动态Shape场景下,设置算子Tiling参数、执行并发数。

函数原型

  • C函数原型
    1
    2
    3
    4
    5
    aclError aclopSetKernelArgs(aclopKernelDesc *kernelDesc,
    const char *kernelId,
    uint32_t blockDim,
    const void *args,
    uint32_t argSize)
    
  • python函数
    1
    ret = acl.op.set_kernel_args(kernel_desc, kernel_id, block_dim, args, arg_size)
    

参数说明

参数名

说明

kernel_desc

int,Kernel描述缓存,aclopKernelDesc类型的指针地址。

kernel_id

str,算子执行时要指定的Kernel ID,与调用acl.op.create.kernel时传递的kernel_id一致。

block_dim

int,Kernel执行的并发数。

args

int,Tiling参数,需要通过numpy数组tobytes方法获取bytes对象,然后使用acl.utils.bytes_to_ptr()接口获取Tiling参数指针地址。

arg_size

int,Tiling参数内存大小,单位为Byte,为numpy.tobytes()转换得到bytes的对象长度,可用len函数获取。

返回值说明

返回值

说明

ret

int,错误码,返回0表示成功,返回其它值表示失败。

资源参考

接口调用流程及示例,参见动态Shape算子(注册算子选择器)