函数:get_output_dims

C函数原型

aclError aclmdlGetOutputDims(const aclmdlDesc *modelDesc, size_t index, aclmdlIODims *dims)

Python函数

dims, ret = acl.mdl.get_output_dims(model_desc, index)

函数功能

根据模型描述获取指定的模型输出Tensor的维度信息。

  • 固定Shape场景下,通过该接口获取指定的模型输出Tensor的维度信息。
  • 动态Shape(动态Batch或动态分辨率)场景下,通过该接口获取最大档的维度信息。

输入说明

model_desc:int,aclmdlDesc类型数据的指针地址。

需提前调用acl.mdl.create_desc接口创建aclmdlDesc类型的数据。

index:int,指定获取第几个输入的大小,index值从0开始。

返回值说明

dims:dict,针对多batch或多种宽高的场景,按照该字典的数组返回其支持的最大档的组合。

dims = {
"name": xxx, #tensor name
"dimCount":xxx,#shape中的维度个数
"dims": [xx, xx, xx]   # 维度信息
}
  • 若Tensor的name长度大于127,则在输出dims["name"]时,pyACL会将Tensor的name转换为“acl_modelId_${id}_input_${index}_${随机字符串} ”格式(如果转换后的Tensor的name与模型中已有的Tensor的name冲突,则会在转换后的name尾部增加“_${随机字符串} ”,否则不会增加随机字符串),并在转换后的name与原name之间建立映射关系,用户可调用acl.mdl.get_tensor_real_name接口,传入转换后的name,获取原name(若向接口传入原name,则获取的还是原name)。
  • 若Tensor的name长度小于或等于127,则在输出的dims["name"]时,按Tensor的name输出。

ret:int,错误码。

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

约束说明