Header Files and Library Files

The GE API header files are stored in the following directories:

  • Compilation APIs:
    • ${INSTALL_DIR}/include/ge/
    • ${INSTALL_DIR}/include/parser/
    • ${INSTALL_DIR}/include/acl/
  • Execution APIs:
    • ${INSTALL_DIR}/include/ge/
    • ${INSTALL_DIR}/include/graph/
    • ${INSTALL_DIR}/include/external/
    • ${INSTALL_DIR}/include/acl/
    • ${INSTALL_DIR}/include/register/
    • ${INSTALL_DIR}/include/transformer/
    • ${INSTALL_DIR}/pkg_inc/register

The library files are stored in the ${INSTALL_DIR}/lib64/ directory. Replace ${INSTALL_DIR} with the CANN component directory. For example, if the installation is performed by the root user, the default file storage path is /usr/local/Ascend/cann.

ge-compiler Compilation APIs

Header File

Function

Matching Library File

ge/hcom_gradient_split_tune.h

HCOM gradient splitting tuning metrics, input, and result APIs.

libhcom_gradient_split_tune.so

ge/hcom_ops_stores.h

HCOM plugin initialization and OpsKernelInfoStore/GraphOptimizer query APIs.

libhcom_graph_adaptor.so

ge/ge_ir_build.h

aclgrphBuild*, model build, save, and weight-updatable graph APIs.

libge_compiler.so

ge/ge_utils.h

Tool APIs for GE graph modification, shape inference, and node-verification support.

libge_compiler.so

ge/fusion/graph_rewriter.h

Subgraph replacement and graph modification APIs.

libge_compiler.so

ge/fusion/match_result.h

Pattern matching result and captured node/tensor access.

libge_compiler.so

ge/fusion/graph_fuse_inspector_utils.h

Validity check before fusion and fusion result reporting.

libge_compiler.so

ge/fusion/pattern.h

To-be-matched graph pattern definition and tensor capture.

libge_compiler.so

ge/fusion/pattern_matcher.h

Pattern matching on the target graph.

libge_compiler.so

ge/fusion/subgraph_boundary.h

Description of subgraph input, output, and boundary.

libge_compiler.so

ge/fusion/pattern_matcher_config.h

PatternMatcher matching behavior configuration.

libge_compiler.so

ge/fusion/infer_shape_util.h

Auxiliary API for shape inference of fusion/replacement graphs.

libge_compiler.so

ge/fusion/pass/decompose_pass.h

One-to-many operator decomposition pass API and registration macro.

libge_compiler.so

ge/fusion/pass/fusion_base_pass.h

Pure abstract base class for custom fusion passes.

Header-only API. The specific pass framework consumes libge_compiler.so.

ge/fusion/pass/fusion_pass_reg.h

Fusion pass registration data and registrar.

libge_compiler.so

ge/fusion/pass/pattern_fusion_pass.h

Pattern fusion pass base class and replacement process.

libge_compiler.so

parser/caffe_parser.h

Caffe model parsing into a GE Graph

libfmk_parser.so

parser/onnx_parser.h

ONNX model parsing into a GE Graph

libfmk_onnx_parser.so

parser/tensorflow_parser.h

TensorFlow model parsing into a GE Graph

libfmk_parser.so

ge/ge_api.h

V1 APIs for GE initialization as well as session and graph addition/compilation/execution.

libge_runner.so

ge/ge_api_v2.h

GESession and V2 graph loading and execution APIs.

libge_runner_v2.so

ge/ge_feature_memory.h

Feature memory description of the compilation result.

libge_common_base.so (actual symbol ownership; libge_compiler.so is also used in the upper-layer compilation process.)

ge/ge_graph_compile_summary.h

Compilation result, stream allocation, and external weight summary.

libge_compiler.so

ge/esb_funcs.h

ES graph builder C ABI.

libeager_style_graph_builder_base.so

ge/compliant_node_builder.h

Chained builder for constructing nodes based on IR specifications.

libeager_style_graph_builder_base.so

ge/es_c_graph_builder.h

ES C Graph Builder encapsulation.

libeager_style_graph_builder_base.so

ge/es_c_tensor_holder.h

ES C TensorHolder encapsulation.

libeager_style_graph_builder_base.so

ge/es_graph_builder.h

C++ template-based ES Graph Builder portal.

Header-only portal; C ABI for calling libeager_style_graph_builder_base.so.

ge/es_tensor_holder.h

C++ ES TensorHolder API.

libeager_style_graph_builder_base.so

ge/es_tensor_like.h

ES TensorLike description and conversion API.

libeager_style_graph_builder_base.so

acl/acl_op_compiler.h

Single-operator compilation, compilation and execution, and compilation option APIs.

libacl_op_compiler.so

ge-executor Execution APIs

Header File

Function

Matching Library File

ge/ge_api_types.h

Aggregation entry for GE common status, tensor, graph, and session types.

Header-only aggregation header; link libgraph.so/libgraph_base.so based on the actual API.

ge/ge_api_error_codes.h

API for registering GE API error codes and converting error codes to strings.

libge_common_base.so

ge/ge_external_weight_desc.h

APIs for describing the position, length, and attributes of external weights.

libge_common_base.so

external/ge_common/ge_api_types.h

GE API type aggregation entry compatible with the old path.

Header-only compatible header; link to the corresponding library based on the actual API.

external/ge_common/ge_common_api_types.h

GE common enumeration, structure, and basic API type definitions.

Header-only definition header

acl/acl_mdl.h

APIs for loading, executing, and configuring ACL models, as well as dynamic shape APIs.

libacl_mdl.so (public portal; the runtime depends on the model execution implementation library.)

acl/acl_base_mdl.h

ACL model basic types, datasets, and description APIs.

libacl_mdl.so (public portal)

acl/acl_op.h

ACL single-operator description, execution, and operator attribute APIs.

libacl_op_executor.so (public portal; the internal implementation dependency is not used as a direct link API for applications.)

acl/ops/acl_cblas.h

ACL CBLAS/matrix computation APIs.

libacl_cblas.so

exe_graph/runtime/eager_op_execution_context.h

Input, output, stream, and workspace contexts during eager operator execution.

liblowering.so

exe_graph/runtime/op_compile_context.h

Operator build, tiling, and shape inference context.

liblowering.so

graph/graph.h

GE graph creation, node addition and deletion, input and output, and graph attribute APIs.

libgraph.so

graph/ct_infer_shape_range_context.h

Shape range inference context during compilation.

Header-only APIs; mainly consume library libgraph.so.

graph/ct_infer_shape_context.h

Shape inference context during compilation.

Header-only APIs; mainly consume library libgraph.so.

graph/operator_reg.h

Operator prototype, input and output, attribute, and inference function registration macros.

libgraph.so is the main registration implementation and uses the basic capabilities of libgraph_base.so.

graph/gnode.h

Graph node query, connection relationship, and attribute access APIs.

libgraph.so

graph/graph_buffer.h

Graph serialization buffer creation, read/write, and lifecycle APIs.

libgraph_base.so

graph/inference_context.h

Shape/Value inference context, marks, and resource management APIs.

libgraph.so

graph/attr_value.h

Graph attribute value type and serialization access APIs.

libgraph.so

graph/operator.h

GE operator creation, connection, attribute, and description access APIs.

libgraph_base.so

graph/operator_factory.h

APIs for creating operators by type and querying operator registration information.

libgraph.so

graph/resource_context.h

Abstract APIs and resource keys of the graph resource context.

Header-only APIs; mainly consume library libgraph.so.

graph/kernel_launch_info.h

Description of kernel launch parameters, handles, and registration information.

libregister.so

graph/arg_desc_info.h

Kernel parameter description.

libgraph.so

graph/custom_op.h

Custom operator registration, inference, and verification macros.

libgraph.so (mainly public registration symbols)

graph/hcom_executor.h

HCOM graph executor initialization, finalization, and execution APIs.

libhcom_executor.so

register/register_base.h

Basic classes, macros, and priority definitions of the GE registration mechanism.

libregister.so

register/op_lib_register.h

Operator library, OpInfo, and OpsKernelInfoStore registration APIs.

libregister.so

register/register_custom_pass.h

Custom graph pass registration and execution timing configuration.

libregister.so

register/op_binary_resource_manager.h

Operator binary resource registration, query, and lifecycle management.

libregister.so

register/scope/scope_fusion_pass_register.h

Scope Fusion Pass registration, rule, and result APIs.

libregister.so

transformer/transfer_def.h

Definitions of common structures and enumerations for format/shape conversion.

Header-only APIs; mainly consume libgraph.so.

transformer/transfer_shape_according_to_format_ext.h

Shape conversion based on the source/destination format.

libgraph.so

pkg_inc/register/amct_interface.h

AMCT plugin callback and quantization-related abstract APIs.

Header-only plugin APIs; mainly consume libregister.so on the host side.

pkg_inc/register/amct_registry.h

AMCT plugin registration, query, and instance creation.

libregister.so