aclmdlSetDynamicBatchSize

函数功能

在动态Batch场景下,在模型执行前调用本接口设置模型推理时的批量大小Batch(每次处理图片的数量)。

函数原型

aclError aclmdlSetDynamicBatchSize(uint32_t modelId, aclmdlDataset *dataset, size_t index, uint64_t batchSize)

参数说明

参数名

输入/输出

说明

modelId

输入

模型ID。

调用aclmdlLoadFromFile接口/aclmdlLoadFromMem接口/aclmdlLoadFromFileWithMem接口/aclmdlLoadFromMemWithMem接口加载模型成功后,会返回模型ID。

dataset

输入&输出

模型推理的输入数据的指针。

使用aclmdlDataset类型的数据描述模型推理时的输入数据,输入的内存地址、内存大小用aclDataBuffer类型的数据来描述。

index

输入

标识动态Batch输入的输入index,需调用aclmdlGetInputIndexByName接口获取,输入名称固定为ACL_DYNAMIC_TENSOR_NAME。

batchSize

输入

模型推理时的批量大小Batch。

此处设置的batch size只能是模型构建时设置的Batch档位中的某一档。

如果不清楚模型构建时的Batch档位设置,也可以调用aclmdlGetDynamicBatch接口获取指定模型支持的Batch档位数以及每一档中的batch size。

返回值说明

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

参考资源

接口调用流程及示例,参见模型动态Shape输入推理