昇腾社区首页
中文
注册
开发者
下载

简介

节点构建器类,用于构建符合IR规范的图节点,该类提供了链式API来定义节点的IR输入、输出、属性等信息,确保生成的节点符合IR规范要求,属于ES generated API内部调用的类,构图者如果直接基于ES generated API来构图,无需感知这个类,如果要自定义ES API,则需使用此类提供的能力来构建节点。

需要包含的头文件

1
#include "compliant_node_builder.h"

public成员函数

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
explicit CompliantNodeBuilder(ge::Graph *graph)
~CompliantNodeBuilder()
CompliantNodeBuilder(CompliantNodeBuilder &&) noexcept
CompliantNodeBuilder(const CompliantNodeBuilder &)
CompliantNodeBuilder &OpType(const char_t *type)
CompliantNodeBuilder &IrDefInputs(std::vector<IrInputDef> input_ir_def)
CompliantNodeBuilder &IrDefOutputs(std::vector<IrOutputDef> output_ir_def)
CompliantNodeBuilder &IrDefAttrs(std::vector<IrAttrDef> attr_ir_def)
CompliantNodeBuilder &Name(const char_t *name)
CompliantNodeBuilder &InstanceDynamicInputNum(const char_t *ir_name, int32_t num)
CompliantNodeBuilder &InstanceDynamicOutputNum(const char_t *ir_name, int32_t num)
CompliantNodeBuilder &InstanceOutputDataType(const char_t *name, ge::DataType data_type)
CompliantNodeBuilder &InstanceOutputShape(const char_t *name, const std::vector<int64_t> &shape)
CompliantNodeBuilder &InstanceOutputOriginShape(const char_t *name, const std::vector<int64_t> &shape)
CompliantNodeBuilder &InstanceOutputStorageShape(const char_t *name, const std::vector<int64_t> &shape)
CompliantNodeBuilder &InstanceOutputFormat(const char_t *name, ge::Format format)
CompliantNodeBuilder &InstanceOutputOriginFormat(const char_t *name, ge::Format format)
CompliantNodeBuilder &InstanceOutputStorageFormat(const char_t *name, ge::Format format)
ge::GNode Build() const

对外函数

1
2
3
4
5
AttrValue CreateFrom(T &&t) 
bool ValuesEqual(const T &a, const T &b)
bool ValuesEqual(const std::vector<T> &a, const std::vector<T> &b)
AttrValue CreateFromIfNotEqual(T &&value, typename std::decay<T>::type default_value)
graphStatus AddEdgeAndUpdatePeerDesc(Graph &graph, GNode &src_node, int32_t src_port_index, GNode &dst_node, int32_t dst_port_index) 

枚举

1
2
3
enum IrAttrType  
enum IrInputType 
enum IrOutputType

结构体

1
2
3
struct IrAttrDef 
struct IrInputDef 
struct IrOutputDef

内部类

1
class AnyTypeOperator