aclgrphBundleBuildModel

产品支持情况

全量芯片支持。

头文件/库文件

  • 头文件:#include <ge/ge_ir_build.h>
  • 库文件:libge_compiler.so

功能说明

将输入的一组Graph编译为适配AI处理器的离线模型。

aclgrphBuildModel接口的区别是,该接口适用于权重更新场景。通过aclgrphBundleBuildModel接口生成离线模型缓存后,需要使用aclgrphBundleSaveModel接口落盘。

函数原型

graphStatus aclgrphBundleBuildModel(const std::vector<ge::GraphWithOptions> &graph_with_options, ModelBufferData &model)

参数说明

参数名 输入/输出 说明
graph_with_options 输入 待编译的一组图和编译参数。该入参为一个结构体,包括参数请参见下面的GraphWithOptions结构体。
一组图包括:权重初始化图,权重更新图,推理图,其中只有推理图支持设置如下options参数。
可以通过传入options参数配置离线模型编译配置信息,当前支持的配置参数请参见aclgrphBuildModel支持的配置参数
model 输出 编译生成的离线模型缓存。详情请参见ModelBufferData
其中data指向生成的模型数据,length代表该模型的实际大小。
struct GraphWithOptions {
  ge::Graph graph;
  std::map<AscendString, AscendString> build_options;
};

返回值说明

参数名 类型 说明
- graphStatus GRAPH_SUCCESS(0):成功。
其他值:失败。

约束说明

该接口内多个图如果涉及共享同名variable算子,接口内部会进行variable算子加速融合,建议通过aclgrphConvertToWeightRefreshableGraphs接口生成,否则可能会出现variable算子格式不一致的问题。

调用示例

完整调用示例请参见调用示例