aclmdlBundleLoadFromFile
函数功能
模型执行阶段若涉及动态更新变量的场景,可调用本接口从文件加载离线模型数据(适配昇腾AI处理器的离线模型),由系统内部管理内存。
本接口需与以下其它接口配合使用,以便实现动态更新变量的目的,关键接口的调用流程如下:
- 基于Ascend Graph方式编译并保存模型,模型中包含多个图,例如推理图、变量初始化图、变量更新图等。
此处是调用aclgrphBundleBuildModel接口编译模型、调用aclgrphBundleSaveModel接口保存模型,接口详细描述参见《Ascend Graph开发指南》。
- 调用aclmdlBundleLoadFromFile或aclmdlBundleLoadFromMem接口加载模型。
- 调用aclmdlBundleGetModelId接口获取多个图的ID。
- 根据多个图的ID,分别调用模型执行接口(例如aclmdlExecute)执行各个图。
若涉及变量更新,则在执行变量更新图之前,先调用aclmdlSetDatasetTensorDesc接口设置图的tensor描述信息,再执行变量更新图,然后再执行一次推理图。
- 推理结束后,调用aclmdlBundleUnload接口卸载模型。
函数原型
aclError aclmdlBundleLoadFromFile(const char *modelPath, uint32_t *bundleId)
参数说明
返回值说明
返回0表示成功,返回其他值表示失败。
父主题: 模型加载和卸载