文档
注册

函数:create_and_get_op_desc

C函数原型

aclError aclmdlCreateAndGetOpDesc(uint32_t deviceId, uint32_t streamId, uint32_t taskId, char *opName, size_t opNameLen, aclTensorDesc **inputDesc, size_t *numInputs, aclTensorDesc **outputDesc, size_t *numOutputs)

Python函数

op_name, input_desc, num_inputs, output_desc, num_outputs, ret = acl.mdl.create_and_get_op_desc(device_id, stream_id, task_id, op_name_len)

函数功能

获取指定算子的描述信息,包括算子名、输入Tensor描述、输出Tensor描述,如果查询不到指定算子,则返回报错。同步接口。

输入说明

device_id:int,指定Device ID。

调用acl.rt.get_device_id_from_exception_info接口获取异常信息中的Device ID,作为本接口的输入。

stream_id:int,指定Stream ID。

调用acl.rt.get_stream_id_from_exception_info接口获取异常信息中的Stream ID,作为本接口的输入。

task_id:int,指定Task ID。

调用acl.rt.get_task_id_from_exception_info接口获取异常信息中的Task ID,作为本接口的输入。

op_name_len:int,算子名称字符串长度。

若用户指定的长度比实际算子名称的长度短,则返回报错。

返回值说明

op_name:string,算子名称字符串。

input_desc:int,算子所有输入的Tensor描述,指向一块连续内存的首地址。

num_inputs:int,输入个数。

output_desc:int,算子所有输出的Tensor描述,指向一块连续内存的首地址。

num_outputs:int,输出个数。

ret:int,错误码。

  • 返回0表示成功。
  • 返回其它值表示失败。

约束说明

使用场景举例:执行整网模型推理时(不支持动态Shape场景),如果产生AI Core报错,可以调用本接口获取报错算子的描述信息,再做进一步错误排查。

推荐的接口调用顺序如下:
  1. 定义并实现异常回调函数fn(aclrtExceptionInfoCallback类型),回调函数原型请参见acl.rt.set_exception_info_callback

    实现回调函数的关键步骤如下:

    1. 在异常回调函数fn内调用acl.rt.get_device_id_from_exception_infoacl.rt.get_stream_id_from_exception_infoacl.rt.get_task_id_from_exception_info接口分别获取Device ID、Stream ID、Task ID。
    2. 在异常回调函数fn内调用acl.mdl.create_and_get_op_desc接口获取算子的描述信息。
    3. 在异常回调函数fn内调用acl.get_tensor_desc_by_index接口获取指定算子输入/输出的Tensor描述。
    4. 在异常回调函数fn内如下接口获取Tensor描述中的数据,进行进一步分析。

      例如,调用acl.get_tensor_desc_address接口获取Tensor数据的内存地址(用户可从该内存地址中获取Tensor数据)、调用acl.get_tensor_desc_type接口获取Tensor描述中的数据类型、调用acl.get_tensor_desc_format接口获取Tensor描述中的Format、调用acl.get_tensor_desc_num_dims接口获取Tensor描述中的Shape维度个数、调用acl.get_tensor_desc_dim_v2接口获取Shape中指定维度的大小。

  2. 调用acl.rt.set_exception_info_callback接口设置异常回调函数。
  3. 执行模型推理。

    如果存在AI Core报错,则触发回调函数fn,获取算子的信息,进行进一步分析。

参考资源

接口调用示例,参见AI Core异常信息获取

搜索结果
找到“0”个结果

当前产品无相关内容

未找到相关内容,请尝试其他搜索词