aclmdlDesc
- aclmdlCreateDesc
- aclmdlDestroyDesc
- aclmdlGetDesc
- aclmdlGetNumInputs
- aclmdlGetNumOutputs
- aclmdlGetInputSizeByIndex
- aclmdlGetOutputSizeByIndex
- aclmdlGetInputDims
- aclmdlGetInputDimsV2
- aclmdlGetOutputDims
- aclmdlGetInputNameByIndex
- aclmdlGetOutputNameByIndex
- aclmdlGetInputFormat
- aclmdlGetOutputFormat
- aclmdlGetInputDataType
- aclmdlGetOutputDataType
- aclmdlGetInputIndexByName
- aclmdlGetOutputIndexByName
- aclmdlGetDynamicBatch
- aclmdlGetDynamicHW
- aclmdlGetCurOutputDims
- aclmdlGetInputDynamicGearCount
- aclmdlGetInputDynamicDims
- aclmdlGetTensorRealName
- aclmdlGetOpAttr
aclmdlDestroyDesc
函数功能
销毁通过aclmdlCreateDesc接口创建的aclmdlDesc类型的数据。同步接口。
函数原型
aclError aclmdlDestroyDesc(aclmdlDesc *modelDesc)
参数说明
参数名 |
输入/输出 |
说明 |
---|---|---|
modelDesc |
输入 |
待销毁的aclmdlDesc类型的指针。 |
返回值说明
返回0表示成功,返回非0表示失败。
aclmdlGetDesc
函数功能
根据模型ID获取该模型的模型描述信息。同步接口。
函数原型
aclError aclmdlGetDesc(aclmdlDesc *modelDesc, uint32_t modelId)
参数说明
参数名 |
输入/输出 |
说明 |
---|---|---|
modelDesc |
输出 |
aclmdlDesc类型的指针。 需提前调用aclmdlCreateDesc接口创建aclmdlDesc类型的数据。 |
modelId |
输入 |
模型ID。 调用aclmdlLoadFromFile接口/aclmdlLoadFromMem接口/aclmdlLoadFromFileWithMem接口/aclmdlLoadFromMemWithMem接口加载模型成功后,会返回模型ID。 |
返回值说明
返回0表示成功,返回非0表示失败。
aclmdlGetNumInputs
函数功能
根据模型描述信息获取模型的输入个数。同步接口。
函数原型
size_t aclmdlGetNumInputs(aclmdlDesc *modelDesc)
参数说明
参数名 |
输入/输出 |
说明 |
---|---|---|
modelDesc |
输入 |
aclmdlDesc类型的指针。 需提前调用aclmdlCreateDesc接口创建aclmdlDesc类型的数据。 |
返回值说明
模型的输入个数。
aclmdlGetNumOutputs
函数功能
根据模型描述信息获取模型的输出个数。同步接口。
函数原型
size_t aclmdlGetNumOutputs(aclmdlDesc *modelDesc)
参数说明
参数名 |
输入/输出 |
说明 |
---|---|---|
modelDesc |
输入 |
aclmdlDesc类型的指针。 需提前调用aclmdlCreateDesc接口创建aclmdlDesc类型的数据。 |
返回值说明
模型的输出个数。
aclmdlGetInputSizeByIndex
函数功能
根据模型描述信息获取指定输入的大小,单位为Byte。同步接口。
约束说明
如果模型输入的Shape是动态的、且维度的取值为-1(表示此维度可以使用>=1的任意取值),则通过本接口获取的大小为0,用户需根据实际数据占用的内存大小来申请内存。
函数原型
size_t aclmdlGetInputSizeByIndex(aclmdlDesc *modelDesc, size_t index)
参数说明
参数名 |
输入/输出 |
说明 |
---|---|---|
modelDesc |
输入 |
aclmdlDesc类型的指针。 需提前调用aclmdlCreateDesc接口创建aclmdlDesc类型的数据。 |
index |
输入 |
指定获取第几个输入的大小,index值从0开始。 |
返回值说明
针对动态Batch、动态分辨率(宽高)的场景,返回最大档位对应的输入的大小;静态场景下,返回指定输入的大小。单位是Byte。
aclmdlGetOutputSizeByIndex
函数功能
根据模型描述信息获取指定输出的大小,单位为Byte。同步接口。
约束说明
如果通过本接口获取的大小为0,有可能是由于输出Shape的范围不确定,用户需根据实际情况预估一块较大的输出内存。
函数原型
size_t aclmdlGetOutputSizeByIndex(aclmdlDesc *modelDesc, size_t index)
参数说明
参数名 |
输入/输出 |
说明 |
---|---|---|
modelDesc |
输入 |
aclmdlDesc类型的指针。 需提前调用aclmdlCreateDesc接口创建aclmdlDesc类型的数据。 |
index |
输入 |
指定获取第几个输出的大小,index值从0开始。 |
返回值说明
针对动态Batch、动态分辨率(宽高)的场景,返回最大档位对应的输出的大小;静态场景下,返回指定输出的大小。单位是Byte。
aclmdlGetInputDims
函数功能
根据模型描述信息获取模型的输入tensor的维度信息。同步接口。
如果模型中含有静态AIPP配置信息,您可以根据实际需要选择aclmdlGetInputDims接口或aclmdlGetInputDimsV2接口查询维度信息,两者的区别在于:
- 通过aclmdlGetInputDims接口获取的维度信息,各维度的值与输入图像的各维度的值保持一致,详细规则如表14-9所示。
- 通过aclmdlGetInputDimsV2接口获取的维度信息,H维度的值 = 输入图像的H维度值 * 系数,不同图片格式下C维度的值不同,详细规则如aclmdlGetInputDimsV2接口处的表14-10所示,且各维度值相乘的结果值与通过aclmdlGetInputSizeByIndex接口获取的值保持一致。
函数原型
aclError aclmdlGetInputDims(const aclmdlDesc *modelDesc, size_t index, aclmdlIODims *dims)
参数说明
参数名 |
输入/输出 |
说明 |
---|---|---|
modelDesc |
输入 |
aclmdlDesc类型的指针。 需提前调用aclmdlCreateDesc接口创建aclmdlDesc类型的数据。 |
index |
输入 |
指定获取第几个输入的Dims,index值从0开始。 |
dims |
输出 |
获取输入维度信息。 针对动态Batch、动态分辨率(宽高)的场景,输入tensor的dims中Batch数或宽高为-1,表示其动态可变。例如,输入tensor的format为NCHW,在动态Batch场景下,动态可变的输入tensor的dims为[-1,3,224,224];在动态分辨率场景下,动态可变的输入tensor的dims为[1,3,-1,-1]。举例中的斜体部分以实际情况为准。 若tensor的name长度大于127,则在输出的dims.name时,AscendCL会将tensor的name转换为“acl_modelId_${id}_input_${index}_${随机字符串} ”格式(如果转换后的tensor的name与模型中已有的tensor的name冲突,则会在转换后的name尾部增加“_${随机字符串} ”,否则不会增加随机字符串),并在转换后的name与原name之间建立映射关系,用户可调用aclmdlGetTensorRealName接口,传入转换后的name,获取原name(若向接口传入原name,则获取的还是原name);若tensor的name长度小于或等于127,则在输出的dims.name时,按tensor的name输出。 |
返回值说明
返回0表示成功,返回非0表示失败。
aclmdlGetInputDimsV2
函数功能
根据模型描述信息获取模型的输入tensor的维度信息。同步接口。
如果模型中含有静态AIPP配置信息,您可以根据实际需要选择aclmdlGetInputDims接口或aclmdlGetInputDimsV2接口查询维度信息,两者的区别在于:
- 通过aclmdlGetInputDims接口获取的维度信息,各维度的值与输入图像的各维度的值保持一致,详细规则如表14-9所示。
- 通过aclmdlGetInputDimsV2接口获取的维度信息,H维度的值 = 输入图像的H维度值 * 系数,不同图片格式下C维度的值不同,详细规则如aclmdlGetInputDimsV2接口处的表14-10所示,且各维度值相乘的结果值与通过aclmdlGetInputSizeByIndex接口获取的值保持一致。
函数原型
aclError aclmdlGetInputDimsV2(const aclmdlDesc *modelDesc, size_t index, aclmdlIODims *dims)
参数说明
参数名 |
输入/输出 |
说明 |
---|---|---|
modelDesc |
输入 |
aclmdlDesc类型的指针。 需提前调用aclmdlCreateDesc接口创建aclmdlDesc类型的数据。 |
index |
输入 |
指定获取第几个输入的Dims,index值从0开始。 |
dims |
输出 |
获取输入维度信息。 针对动态Batch、动态分辨率(宽高)的场景,输入tensor的dims中Batch数或宽高为-1,表示其动态可变。例如,输入tensor的format为NCHW,在动态Batch场景下,动态可变的输入tensor的dims为[-1,3,224,224];在动态分辨率场景下,动态可变的输入tensor的dims为[1,3,-1,-1]。举例中的斜体部分以实际情况为准。 若tensor的name长度大于127,则在输出的dims.name时,AscendCL会将tensor的name转换为“acl_modelId_${id}_input_${index}_${随机字符串} ”格式(如果转换后的tensor的name与模型中已有的tensor的name冲突,则会在转换后的name尾部增加“_${随机字符串} ”,否则不会增加随机字符串),并在转换后的name与原name之间建立映射关系,用户可调用aclmdlGetTensorRealName接口,传入转换后的name,获取原name(若向接口传入原name,则获取的还是原name);若tensor的name长度小于或等于127,则在输出的dims.name时,按tensor的name输出。 针对静态AIPP场景,本接口针对不同格式的图像,对应NHWC的Format格式,当前接口中明确各个维度的定义规则,如表14-10所示。 |
返回值说明
返回0表示成功,返回非0表示失败。
aclmdlGetOutputDims
函数功能
根据模型描述信息获取指定的模型输出tensor的维度信息。同步接口。
固定Shape场景下,通过该接口获取指定的模型输出tensor的维度信息。
动态Shape(动态Batch或动态分辨率)场景下,通过该接口获取最大档的维度信息。
函数原型
aclError aclmdlGetOutputDims(const aclmdlDesc *modelDesc, size_t index, aclmdlIODims *dims)
参数说明
参数名 |
输入/输出 |
说明 |
---|---|---|
modelDesc |
输入 |
aclmdlDesc类型的指针。 需提前调用aclmdlCreateDesc接口创建aclmdlDesc类型的数据。 |
index |
输入 |
指定获取第几个输出的Dims,index值从0开始。 |
dims |
输出 |
获取输出维度信息。 若tensor的name长度大于127,则在输出的dims.name时,ACL会将tensor的name转换为“acl_modelId_${id}_output_${index} _${随机字符串} ”格式(如果转换后的tensor的name与模型中已有的tensor的name冲突,则会在转换后的name尾部增加“_${随机字符串} ”,否则不会增加随机字符串),并在转换后的name与原name之间建立映射关系,用户可调用aclmdlGetTensorRealName接口,传入转换后的name,获取原name(若向接口传入原name,则获取的还是原name);若tensor的name长度小于或等于127,则在输出的dims.name时,按tensor的name输出。 |
返回值说明
返回0表示成功,返回非0表示失败。
aclmdlGetInputNameByIndex
函数功能
根据模型描述信息获取模型中指定输入的输入名称。同步接口。
函数原型
const char *aclmdlGetInputNameByIndex(const aclmdlDesc *modelDesc, size_t index)
参数说明
参数名 |
输入/输出 |
说明 |
---|---|---|
modelDesc |
输入 |
aclmdlDesc类型的指针。 需提前调用aclmdlCreateDesc接口创建aclmdlDesc类型的数据。 |
index |
输入 |
指定获取第几个输入的名称,index值从0开始。 |
返回值说明
返回指定输入的输入名称。
aclmdlGetOutputNameByIndex
函数功能
根据模型描述信息获取模型中指定输出的输出算子名称、算子输出边的下标、top名称。同步接口。
函数原型
const char *aclmdlGetOutputNameByIndex(const aclmdlDesc *modelDesc, size_t index)
参数说明
参数名 |
输入/输出 |
说明 |
---|---|---|
modelDesc |
输入 |
aclmdlDesc类型的指针。 需提前调用aclmdlCreateDesc接口创建aclmdlDesc类型的数据。 |
index |
输入 |
指定获取第几个输出的输出算子名称、算子输出边下标、top名称,index值从0开始。 |
返回值说明
返回指定输出的输出算子名称、算子输出边的下标、top名称,各项之间以冒号分割,格式如下:
- Caffe网络中,返回值格式如下,如果模型中包含top名称就返回,不包含就不返回:
输出算子名称 : 算子输出边下标 : top名称
- TensorFlow网络中,返回值格式如下:
输出算子名称 : 算子输出边下标
aclmdlGetInputFormat
函数功能
根据模型描述信息获取模型中指定输入的Format。同步接口。
函数原型
aclFormat aclmdlGetInputFormat(const aclmdlDesc *modelDesc, size_t index)
参数说明
参数名 |
输入/输出 |
说明 |
---|---|---|
modelDesc |
输入 |
aclmdlDesc类型的指针。 需提前调用aclmdlCreateDesc接口创建aclmdlDesc类型的数据。 |
index |
输入 |
指定获取第几个输入的Format,index值从0开始。 |
返回值说明
返回指定输入的Format。
aclmdlGetOutputFormat
函数功能
根据模型描述信息获取模型中指定输出的Format。同步接口。
函数原型
aclFormat aclmdlGetOutputFormat(const aclmdlDesc *modelDesc, size_t index)
参数说明
参数名 |
输入/输出 |
说明 |
---|---|---|
modelDesc |
输入 |
aclmdlDesc类型的指针。 需提前调用aclmdlCreateDesc接口创建aclmdlDesc类型的数据。 |
index |
输入 |
指定获取第几个输出的Format,index值从0开始。 |
返回值说明
返回指定输出的Format。
aclmdlGetInputDataType
函数功能
根据模型描述信息获取模型中指定输入的数据类型。同步接口。
函数原型
aclDataType aclmdlGetInputDataType(const aclmdlDesc *modelDesc, size_t index)
参数说明
参数名 |
输入/输出 |
说明 |
---|---|---|
modelDesc |
输入 |
aclmdlDesc类型的指针。 需提前调用aclmdlCreateDesc接口创建aclmdlDesc类型的数据。 |
index |
输入 |
指定获取第几个输入的数据类型,index值从0开始。 |
返回值说明
返回指定输入的数据类型。
aclmdlGetOutputDataType
函数功能
根据模型描述信息获取模型中指定输出的数据类型。同步接口。
函数原型
aclDataType aclmdlGetOutputDataType(const aclmdlDesc *modelDesc, size_t index)
参数说明
参数名 |
输入/输出 |
说明 |
---|---|---|
modelDesc |
输入 |
aclmdlDesc类型的指针。 需提前调用aclmdlCreateDesc接口创建aclmdlDesc类型的数据。 |
index |
输入 |
指定获取第几个输出的数据类型,index值从0开始。 |
返回值说明
返回指定输出的数据类型。
aclmdlGetInputIndexByName
函数功能
根据模型中的输入名称获取对应输入的索引编号。同步接口。
函数原型
aclError aclmdlGetInputIndexByName(const aclmdlDesc *modelDesc, const char *name, size_t *index)
参数说明
参数名 |
输入/输出 |
说明 |
---|---|---|
modelDesc |
输入 |
aclmdlDesc类型的指针。 需提前调用aclmdlCreateDesc接口创建aclmdlDesc类型的数据。 |
name |
输入 |
指定输入名称。 |
index |
输出 |
获取对应输入的索引编号。 |
返回值说明
返回0表示成功,返回非0表示失败。
aclmdlGetOutputIndexByName
函数功能
根据模型中的输出名称获取对应输出的索引编号。同步接口。
函数原型
aclError aclmdlGetOutputIndexByName(const aclmdlDesc *modelDesc, const char *name, size_t *index)
参数说明
参数名 |
输入/输出 |
说明 |
---|---|---|
modelDesc |
输入 |
aclmdlDesc类型的指针。 需提前调用aclmdlCreateDesc接口创建aclmdlDesc类型的数据。 |
name |
输入 |
指定输出名称。 |
index |
输出 |
获取对应输出的索引编号。 |
返回值说明
返回0表示成功,返回非0表示失败。
aclmdlGetDynamicBatch
函数功能
根据模型描述信息获取模型支持的动态Batch信息。同步接口。
函数原型
aclError aclmdlGetDynamicBatch(const aclmdlDesc *modelDesc, aclmdlBatch *batch)
参数说明
参数名 |
输入/输出 |
说明 |
---|---|---|
modelDesc |
输入 |
aclmdlDesc类型的指针。 需提前调用aclmdlCreateDesc接口创建aclmdlDesc类型的数据。 |
batch |
输出 |
const int ACL_MAX_BATCH_NUM = 128; typedef struct aclmdlBatch { size_t batchCount; /**模型中支持的batch分档数 */ uint64_t batch[ACL_MAX_BATCH_NUM]; /**模型中支持的具体分档 */ } aclmdlBatch; batchCount等于0时,表示不支持设置档位信息,以模型中的档位为准。 |
返回值说明
返回0表示成功,返回非0表示失败。
aclmdlGetDynamicHW
函数功能
根据模型描述信息获取模型支持的动态宽高信息。同步接口。
函数原型
aclError aclmdlGetDynamicHW(const aclmdlDesc *modelDesc, size_t index, aclmdlHW *hw)
参数说明
参数名 |
输入/输出 |
说明 |
---|---|---|
modelDesc |
输入 |
aclmdlDesc类型的指针。 需提前调用aclmdlCreateDesc接口创建aclmdlDesc类型的数据。 |
index |
输入 |
预留参数,当前未使用,固定设置为-1。 |
hw |
输出 |
const int ACL_MAX_HW_NUM = 128; typedef struct aclmdlHW { size_t hwCount; /**模型中支持的宽高分档数 */ uint64_t hw[ACL_MAX_HW_NUM][2]; /**模型中支持的具体分档,每组分档中,数组下标为0代表的是高,下标为1代表的是宽 */ } aclmdlHW; hwCount等于0时,表示不支持设置档位信息,以模型中的档位为准。 |
返回值说明
返回0表示成功,返回非0表示失败。
aclmdlGetCurOutputDims
函数功能
根据模型描述信息获取指定的模型输出tensor的实际维度信息。同步接口。
约束说明
动态Shape(动态Batch或动态分辨率或动态维度(ND格式))场景下,如果用户已调用aclmdlSetDynamicBatchSize设置Batch、或调用aclmdlSetDynamicHWSize接口设置输入图片的宽高、或调用aclmdlSetInputDynamicDims接口设置某动态维度的值,则可通过该接口获取指定模型输出tensor的实际维度信息;如果用户未调用aclmdlSetDynamicBatchSize接口、或aclmdlSetDynamicHWSize接口、或aclmdlSetInputDynamicDims接口,则通过该接口可获取最大档的维度信息。
非动态Shape场景下,通过该接口获取指定的模型输出tensor的维度信息。
函数原型
aclError aclmdlGetCurOutputDims(const aclmdlDesc *modelDesc, size_t index, aclmdlIODims *dims)
参数说明
参数名 |
输入/输出 |
说明 |
---|---|---|
modelDesc |
输入 |
aclmdlDesc类型的指针。 需提前调用aclmdlCreateDesc接口创建aclmdlDesc类型的数据。 |
index |
输入 |
指定获取第几个输出的Dims,index值从0开始。 |
dims |
输出 |
输出实际维度信息。 若tensor的name长度大于127,则在输出的dims.name时,ACL会将tensor的name转换为“acl_modelId_${id}_output_${index} _${随机字符串} ”格式(如果转换后的tensor的name与模型中已有的tensor的name冲突,则会在转换后的name尾部增加“_${随机字符串} ”,否则不会增加随机字符串),并在转换后的name与原name之间建立映射关系,用户可调用aclmdlGetTensorRealName接口,传入转换后的name,获取原name(若向接口传入原name,则获取的还是原name);若tensor的name长度小于或等于127,则在输出的dims.name时,按tensor的name输出。 |
返回值说明
返回0表示成功,返回非0表示失败。
aclmdlGetInputDynamicGearCount
函数功能
根据模型描述信息获取模型的输入所支持的动态维度档位数。同步接口。
约束说明
如果模型构建时没有设置动态维度的分档,那么通过该接口获取的动态维度档位数为0。模型构建的详细说明请参见模型构建。
函数原型
aclError aclmdlGetInputDynamicGearCount(const aclmdlDesc *modelDesc, size_t index, size_t *gearCount)
参数说明
参数名 |
输入/输出 |
说明 |
---|---|---|
modelDesc |
输入 |
aclmdlDesc类型的指针。 需提前调用aclmdlCreateDesc接口创建aclmdlDesc类型的数据。 |
index |
输入 |
预留参数,当前未使用,固定设置为-1。 |
gearCount |
输出 |
动态维度档位数。 例如,模型的输入tensor是4维,在模型转换时通过--dynamic_dims参数设置的分档为“1,3,224,224;2,3,224,224;1,3,256,256”,那么通过该接口获取的动态维度档位数为3。 |
返回值说明
返回0表示成功,返回非0表示失败。
aclmdlGetInputDynamicDims
函数功能
根据模型描述信息获取模型的输入所支持的动态维度信息。同步接口。
约束说明
只有在模型构建时设置了动态维度的分档信息后,才可以调用该接口获取动态维度信息。模型构建的详细说明请参见模型构建。
例如,模型有三个输入,分别为data(1, 1, 40, -1),label(1, -1),mask(-1, -1) , 其中-1表示动态可变。在模型转换时,dynamic_dims参数的配置示例为:--dynamic_dims="20,20,1,1; 40,40,2,2; 80,60,4,4",则通过本接口获取的动态维度信息为(aclmdlIODims结构体内的name暂不使用):
- 第0档:
- aclmdlIODims结构体内dimCount:8,表示所有输入tensor的维度数量之和
- aclmdlIODims结构体内的dims:“1,1,40,20,1,20,1,1”,表示data(1,1,40,20)+label(1,20)+mask(1,1)
- 第1档:
- aclmdlIODims结构体内dimCount:8,表示所有输入tensor的维度数量之和
- aclmdlIODims结构体内的dims:“1,1,40,40,1,40,2,2”,表示data(1,1,40,40)+label(1,40)+mask(2,2)
- 第2档:
- aclmdlIODims结构体内dimCount:8,表示所有输入tensor的维度数量之和
- aclmdlIODims结构体内的dims:“1,1,40,80,1,60,4,4”,表示data(1,1,40,80)+label(1,60)+mask(4,4)
函数原型
aclError aclmdlGetInputDynamicDims(const aclmdlDesc *modelDesc, size_t index, aclmdlIODims *dims, size_t gearCount)
参数说明
参数名 |
输入/输出 |
说明 |
---|---|---|
modelDesc |
输入 |
aclmdlDesc类型的指针。 需提前调用aclmdlCreateDesc接口创建aclmdlDesc类型的数据。 |
index |
输入 |
预留参数,当前未使用,固定设置为-1。 |
gearCount |
输入 |
模型支持的动态维度档位数,需要先通过aclmdlGetInputDynamicGearCount接口获取。 |
dims |
输出 |
获取输入的动态维度信息。 dims参数是一个数组,数组中的每个元素指向aclmdlIODims结构,aclmdlIODims结构体中的dims参数也是也是一个数组,该数组中的每个元素对应每一档中的具体值。 例如: aclmdlIODims dims[gearCount]; aclmdlGetInputDynamicDims(model.modelDesc, -1, dims, gearCount); |
返回值说明
返回0表示成功,返回非0表示失败。
aclmdlGetTensorRealName
函数功能
根据指定名称获取tensor的真实名称。同步接口。
aclmdlGetTensorRealName接口需要与aclmdlGetInputDims/aclmdlGetInputDimsV2/aclmdlGetOutputDims/aclmdlGetCurOutputDims接口配合使用。
函数原型
const char *aclmdlGetTensorRealName(const aclmdlDesc *modelDesc, const char *name)
参数说明
参数名 |
输入/输出 |
说明 |
---|---|---|
modelDesc |
输入 |
aclmdlDesc类型的指针。 需提前调用aclmdlCreateDesc接口创建aclmdlDesc类型的数据。 |
name |
输入 |
指定名称,用于根据该名称获取tensor的真实名称。 |
返回值说明
返回指向tensor真实名称的指针,该指针的生命周期与modelDesc相同,若modelDesc资源被销毁,则该指针指向的内容也会自动被销毁。
若modelDesc或name为空,则返回nullptr。
aclmdlGetOpAttr
函数功能
获取整网中某个模型中某个算子的属性的值。
函数原型
const char *aclmdlGetOpAttr(aclmdlDesc *modelDesc, const char *opName, const char *attr)
参数说明
参数名 |
输入/输出 |
说明 |
---|---|---|
modelDesc |
输入 |
aclmdlDesc类型的指针。 需提前调用aclmdlCreateDesc接口创建aclmdlDesc类型的数据,再调用aclmdlGetDesc接口根据模型ID获取到对应的aclmdlDesc类型的数据。 |
opName |
输入 |
算子名称。 |
attr |
输入 |
算子属性。 当前仅支持_datadump_original_op_names属性,用于记录某个算子是由哪些算子融合得到的。通过本接口获取到的_datadump_original_op_names属性值格式为[opName1_len]opName1…..[opNameN_len]opNameN,opNameN_len表示算子名称字符串的长度。 _datadump_original_op_names属性值示例如下,表示某个融合算子由scale2c_branch2c、bn2c_branch2c、res2c_branch2c、res2c、res2c_relu这五个算子融合而成的,算子名称字符串的长度分别为16、13、14、5、10: [16]scale2c_branch2c[13]bn2c_branch2c[14]res2c_branch2c[5]res2c[10]res2c_relu |
返回值说明
返回属性值的字符串指针,该指针的生命周期与modelDesc相同,若modelDesc资源被销毁,则该指针指向的内容也会自动被销毁。若opName或者attr属性不存在、或者attr属性值为空,均返回指向空字符串的指针。
若调用该接口失败,则返回nullptr。
- aclmdlCreateDesc
- aclmdlDestroyDesc
- aclmdlGetDesc
- aclmdlGetNumInputs
- aclmdlGetNumOutputs
- aclmdlGetInputSizeByIndex
- aclmdlGetOutputSizeByIndex
- aclmdlGetInputDims
- aclmdlGetInputDimsV2
- aclmdlGetOutputDims
- aclmdlGetInputNameByIndex
- aclmdlGetOutputNameByIndex
- aclmdlGetInputFormat
- aclmdlGetOutputFormat
- aclmdlGetInputDataType
- aclmdlGetOutputDataType
- aclmdlGetInputIndexByName
- aclmdlGetOutputIndexByName
- aclmdlGetDynamicBatch
- aclmdlGetDynamicHW
- aclmdlGetCurOutputDims
- aclmdlGetInputDynamicGearCount
- aclmdlGetInputDynamicDims
- aclmdlGetTensorRealName
- aclmdlGetOpAttr