5 #include <unordered_set>
9 #include "core/framework/session_options.h"
11 namespace onnxruntime {
13 struct IndexedSubGraph;
16 namespace onnxruntime {
41 const std::string&
Name()
const noexcept;
147 #if !defined(ORT_MINIMAL_BUILD)
170 bool check_outer_scope =
true)
const;
175 #if !defined(ORT_MINIMAL_BUILD) || defined(ORT_EXTENDED_MINIMAL_BUILD)
192 #if !defined(ORT_MINIMAL_BUILD)
197 ORT_DISALLOW_COPY_ASSIGNMENT_AND_MOVE(
GraphViewer);
204 std::vector<NodeIndex> nodes_in_topological_order_;
206 #if !defined(ORT_MINIMAL_BUILD)
208 std::vector<NodeIndex> nodes_in_topological_order_with_priority_;
211 #ifdef ENABLE_TRAINING
213 std::vector<NodeIndex> nodes_in_mem_efficient_topological_order_;
217 std::vector<NodeIndex> root_nodes_;
222 using FilteredNodeSet = InlinedHashSet<NodeIndex>;
223 FilteredNodeSet filtered_node_indices_;
224 std::vector<const NodeArg*> filtered_node_inputs_;
225 std::vector<const NodeArg*> filtered_node_inputs_including_initializers_;
226 std::vector<const NodeArg*> filtered_node_outputs_;
const std::filesystem::path & ModelPath() const noexcept
std::unordered_map< std::string, const ONNX_NAMESPACE::TensorProto * > InitializedTensorSet
const IndexedSubGraph * GetFilterInfo() const
const Node * ParentNode() const noexcept
IOnnxRuntimeOpSchemaCollectionPtr GetSchemaRegistry() const
bool IsConstantInitializer(const std::string &name, bool check_outer_scope) const
std::shared_ptr< IOnnxRuntimeOpSchemaCollection > IOnnxRuntimeOpSchemaCollectionPtr
const InitializedTensorSet & GetAllInitializedTensors() const noexcept
bool operator()(const Node *n1, const Node *n2) const
const std::vector< const NodeArg * > & GetInputs() const noexcept
GLsizei const GLfloat * value
int NumberOfNodes() const noexcept
GLsizei const GLchar *const * path
const Node * ParentNode() const
bool NodeProducesGraphOutput(const Node &node) const
const std::unordered_map< std::string, int > & DomainToVersionMap() const noexcept
bool IsInitializedTensor(const std::string &name) const
const std::filesystem::path & ModelPath() const
int MaxNodeIndex() const noexcept
const std::string & Description() const noexcept
const std::string & Name() const noexcept
IOnnxRuntimeOpSchemaCollectionPtr GetSchemaRegistry() const
const ONNX_NAMESPACE::TensorProto * GetConstantInitializer(const std::string &name, bool check_outer_scope=true) const
GraphViewer(const Graph &graph)
const Node * GetProducerNode(const std::string &node_arg_name) const
const ConstGraphNodes & Nodes() const noexcept
const std::unordered_set< const NodeArg * > & GetValueInfo() const noexcept
const std::vector< NodeIndex > & GetRootNodes() const
GLdouble GLdouble GLint GLint order
GLuint const GLchar * name
bool CanOverrideInitializer() const noexcept
const std::vector< const NodeArg * > & GetInputsIncludingInitializers() const noexcept
const Node * GetProducerNode(const std::string &node_arg_name) const
const std::unordered_set< std::string > & GetOuterScopeNodeArgNames() const noexcept
const std::vector< const NodeArg * > & GetOutputs() const noexcept
std::vector< const Node * > GetConsumerNodes(const std::string &node_arg_name) const
const Node * GetNode(NodeIndex node_index) const
const Graph & GetGraph() const
const NodeArg * GetNodeArg(const std::string &name) const
std::unordered_map< std::string, int > DomainToVersionMap
const std::vector< NodeIndex > & GetNodesInTopologicalOrder(ExecutionOrder order=ExecutionOrder::DEFAULT) const
std::vector< const Node * > GetConsumerNodes(const std::string &node_arg_name) const
bool GetInitializedTensor(const std::string &tensor_name, const ONNX_NAMESPACE::TensorProto *&value) const