昇腾社区首页
EN
注册

接口列表

本文档主要描述给应用用户或者上层框架提供了安全易用的构图接口集合,开发者可以调用这些接口构建网络模型,设置模型所包含的图、图内的算子以及算子的属性信息(包括Input、Output及其他属性信息)。

您可以在“${INSTALL_DIR}/include”路径查看对应接口的头文件。

其中${INSTALL_DIR}请替换为CANN软件安装后文件存储路径。若安装的Ascend-cann-toolkit软件包,以root安装举例,则安装后文件存储路径为:/usr/local/Ascend/ascend-toolkit/latest。

接口分类

接口列表

功能描述

aclgrph API

  • 头文件
    • /include/parser/tensorflow_parser.h
    • /include/parser/caffe_parser.h

    库文件:libfmk_parser.so

  • 头文件:/include/parser/onnx_parser.h

    库文件:libfmk_onnx_parser.so

Atlas A2 训练系列产品/Atlas 800I A2 推理产品/A200I A2 Box 异构组件 不支持Caffe框架

Atlas A3 训练系列产品/Atlas A3 推理系列产品 不支持Caffe框架。

aclgrphParseCaffe

将Caffe模型解析为图。

aclgrphParseONNX

将ONNX模型解析为图。

aclgrphParseONNXFromMem

将加载至内存的ONNX模型解析为图。

aclgrphParseTensorFlow

将TensorFlow模型解析为图。

aclgrph API

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

aclgrphBuildInitialize

模型构建的初始化函数,用于申请资源。

aclgrphBuildFinalize

系统完成模型构建后,通过该接口释放资源。

aclgrphBuildModel

编译生成离线模型并保存到内存缓冲区。

aclgrphBundleBuildModel

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

aclgrphBundleSaveModel

将离线模型序列化并保存到指定文件中。

aclgrphConvertToWeightRefreshableGraphs

通过传入Const节点名数组将原图转换成一组权重可更新的图。

aclgrphDumpGraph

将输入的图导出到文本中。

aclgrphGetIRVersion

获取模型构建相关接口的版本号。

aclgrphGenerateForOp

根据单算子信息或单算子JSON文件构建Graph。

aclgrphSaveModel

将离线模型序列化并保存到指定文件中。

aclgrphSetOpAttr

用于支持设置node属性方式的改图。

aclgrph API

  • 头文件:/include/amct/acl_graph_calibration.h
  • 库文件:libamctacl.so

aclgrphCalibration

将非量化Graph自动修改为量化后的Graph。详细使用场景请参见量化

aclgrph API

  • 头文件:/include/ge/ge_prof.h
  • 库文件:libmsprofiler.so

Atlas 200/300/500 推理产品 不支持该特性

Atlas 200I/500 A2 推理产品 不支持该特性

aclgrphProfCreateConfig

创建Profiling配置信息。

aclgrphProfDestroyConfig

销毁profiling配置信息。

aclgrphProfFinalize

结束Profiling。

aclgrphProfInit

初始化Profiling,设置Profiling参数(目前供用户设置保存性能数据文件的路径)。

aclgrphProfStart

下发Profiling请求,使能对应数据的采集。

aclgrphProfStop

停止Profiling数据采集。

Session API

  • 头文件:/include/ge/ge_api.h
  • 库文件:libge_runner.so

Atlas 200/300/500 推理产品 不支持该特性。

Atlas 200I/500 A2 推理产品 不支持该特性

Session构造函数和析构函数

Session构造函数和析构函数。

AddGraph

向Session中添加Graph,Session内会生成唯一的Graph ID。

AddGraphWithCopy

向Session中添加Graph,Session内会生成唯一的Graph ID。

BuildGraph

同步编译指定id对应的Graph图,生成可用于执行的模型。

CompileGraph

同步编译指定id对应的Graph图。与BuildGraph相比,该接口仅包含图编译功能,不生成可用于执行的模型,BuildGraph包含了图编译过程,并在编译完成后进行模型所需内存资源的初始化,生成可用于执行的模型。

ExecuteGraphWithStreamAsync

异步运行指定id对应的Graph图,输出执行结果。

GEInitialize

初始化GE,完成运行准备。

GetCompiledGraphSummary

查询图编译结果的概要信息。包括Feature内存大小、Const内存大小、Stream、Event数目及内存是否可刷新等信息。

GEFinalize

GE退出,释放GE相关资源。

GEGetErrorMsg

获取并清空与本接口在同一个进程或线程中的其它接口调用失败时的错误描述信息。

GEGetErrorMsgV2

获取并清空与本接口在同一个进程或线程中的其它接口调用失败时的错误描述信息。

GEGetWarningMsg

获取并清空与本接口在同一个进程或线程中的其它接口调用失败时的告警信息。

GEGetWarningMsgV2

获取并清空与本接口在同一个进程或线程中的其它接口调用失败时的告警信息。

GetModelDistributeDesc

查询用于分布式编译部署的模型切分信息。

GetSessionId

获取Session的ID。

GeSessionLoadGraph

只有异步执行Graph场景使用,使用指定的Session,将指定graphid的图绑定到对应Stream上。

GeSessionExecuteGraphWithStreamAsync

使用指定的Session实例,异步运行指定id对应的Graph图,输出执行结果。

GetVariables

变量查询接口,获取Session内所有variable算子或指定variable算子的tensor内容。

IsGraphNeedRebuild

图是否需要重新编译。

LoadGraph

  • 大模型分布式编译切分场景:

    将om离线模型加载到当前Session中,并根据传入的graphid,将modelGraphId关联,LoadGraph成功后可以使用RunGraph接口指定GraphId进行执行

  • 异步执行Graph场景:

    将指定graphid的图绑定到对应Stream上,LoadGraph成功后可以使用ExecuteGraphWithStreamAsync接口执行图。

PaRemapped

用于内存出现UCE(Uncorrectable Error,不可纠正错误)错误时判断此段内存是否可以快速恢复。

RegisterCallBackFunc

注册回调函数。

RegisterExternalAllocator

用户将自己的Allocator注册给GE,适用于使用用户的内存池场景。

RemoveGraph

在当前Session中删除指定ID对应的Graph。

RunGraph

同步运行指定id对应的Graph图,输出运行结果。

RunGraphAsync

异步运行指定id对应的Graph图,输出运行结果。

RunGraphDistribute

对输入refdata节点切分后,同步运行指定id对应的Graph图,输出运行结果。

RunGraphWithStreamAsync

异步运行指定id对应的Graph图,输出运行结果。该接口包括了编译,加载和运行Graph的操作

SaveGraphsToPb

保存Session内图接口,将图保存为pb文件,支持Session内的权重共享功能(即Session内两张图若有两个权重值是一致的,则只会保存一份权重)。

SetGraphConstMemoryBase

设置Graph的Const内存基址。

SetGraphFixedFeatureMemoryBase

用于指定图的Fixed Feature内存基地址。

SetGraphFixedFeatureMemoryBaseWithType

用于指定图的不同内存类型的Fixed Feature内存基地址。

ShardGraphs

切分图接口,对Session内的图按照AddGraph的顺序进行切分,切分后的图保存在内存中

ShardGraphsToFile

切分图接口,对Session内的图按照AddGraph的顺序进行切分,切分后的图保存为pb文件

UpdateGraphFeatureMemoryBase

用于更新Graph的Feature内存基址。

UpdateGraphRefreshableFeatureMemoryBase

用于更新除了Fixed之外可刷新的Feature内存基址。

UnregisterExternalAllocator

将用户基于Stream注册的Allocator销毁,适用于使用用户的内存池场景。

数据类型

头文件:/include/ge/ge_api_types.h

aclgrphBuildInitialize支持的配置参数

-

aclgrphBuildModel支持的配置参数

-

InputTensorInfo

-

OutputTensorInfo

-

MemoryType

-

Parser解析接口支持的配置参数

-

据类型

头文件:/include/ge/ge_api_types.h

Atlas 200/300/500 推理产品 不支持该特性

Atlas 200I/500 A2 推理产品 不支持该特性

options参数说明

-

数据类型

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

ModelBufferData

-

数据类型

  • 头文件:/include/ge/ge_prof.h
  • 库文件:libmsprofiler.so

Atlas 200/300/500 推理产品 不支持该特性

Atlas 200I/500 A2 推理产品 不支持该特性

ProfDataTypeConfig

-

ProfilingAicoreMetrics

-

数据类型

  • 头文件:/include/ge/ge_api_error_codes.h
  • 库文件:libge_common_base.so

GE_ERRORNO

-