aclmdlBundleInitFromMem
产品支持情况
|
产品 |
是否支持 |
|---|---|
|
Atlas 350 加速卡 |
√ |
|
|
√ |
|
|
√ |
|
|
√ |
|
|
√ |
|
|
√ |
功能说明
在模型执行阶段,如果涉及动态更新变量的场景,可以调用本接口从内存中初始化模型。
函数原型
1
|
aclError aclmdlBundleInitFromMem(const void* model, size_t modelSize, void *varWeightPtr, size_t varWeightSize, uint32_t *bundleId) |
参数说明
|
参数名 |
输入/输出 |
说明 |
|---|---|---|
|
model |
输入 |
存放模型数据的内存地址指针,由用户自行管理,加载aclmdlBundleLoadModel过程中不能释放该内存。 此处的模型文件是基于构图接口构建出来的,调用aclgrphBundleBuildModel接口编译模型、调用aclgrphBundleSaveModel接口保存模型,再由用户自行将保存出来的om模型文件读入内存,构图接口详细描述参见《图开发》中的“aclgrphBundleBuildModel”。 Control CPU开放形态下,此处需申请Device上的内存。 |
|
modelSize |
输入 |
内存中的模型数据长度,单位Byte。 |
|
varWeightPtr |
输入 |
模型所需的可刷新权重内存的地址指针,由用户自行管理,模型执行过程中不能释放该内存。 如果在此处传入空指针,表示由系统管理内存。 |
|
varWeightSize |
输入 |
模型所需的可刷新权重内存的大小,单位Byte。varWeightPtr为空指针时无效。 |
|
bundleId |
输出 |
系统成功初始化捆绑模型后,返回bundleId作为后续操作时识别模型的标志。 |
返回值说明
返回0表示成功,返回其他值表示失败,请参见aclError。