|
tvm
|
A pattern language for matching dataflow properties. More...
#include <tvm/ffi/container/array.h>#include <tvm/ffi/optional.h>#include <tvm/ffi/reflection/registry.h>#include <tvm/ir/expr.h>#include <tvm/relax/expr.h>#include <tvm/relax/type.h>#include <tvm/support/with.h>#include <cstdint>#include <functional>#include <map>#include <memory>#include <string>#include <tuple>#include <utility>#include <vector>Go to the source code of this file.
Classes | |
| class | tvm::relax::DFPatternNode |
| Base type of all dataflow patterns. More... | |
| class | tvm::relax::DFPattern |
| Managed reference to dataflow patterns. More... | |
| struct | tvm::relax::PairCons |
| Constraint of a DFPattern edge (producer -> consumer) in graph-level matching. More... | |
| class | tvm::relax::DFConstraintNode |
| Additional constraints on the graph. More... | |
| class | tvm::relax::DFConstraint |
| class | tvm::relax::PatternSeqNode |
| A sequence of DFPatterns that the previous DFPattern is connected to the next one. More... | |
| class | tvm::relax::PatternSeq |
| Managed reference to pattern sequences. More... | |
| class | tvm::relax::PatternContextNode |
| A context to manage the graph-level pattern matching. More... | |
| class | tvm::relax::PatternContext |
| Managed reference to a pattern context. More... | |
| class | tvm::relax::ExprPatternNode |
| Pattern for Relax Expression. More... | |
| class | tvm::relax::ExprPattern |
| Managed reference to an ExprPattern. More... | |
| class | tvm::relax::VarPatternNode |
| A Pattern to Match a Relax Variable. More... | |
| class | tvm::relax::VarPattern |
| Managed reference to a VarPattern. More... | |
| class | tvm::relax::DataflowVarPatternNode |
| A Pattern to Match a Relax Dataflow Variable. More... | |
| class | tvm::relax::DataflowVarPattern |
| Managed reference to a DataflowVarPattern. More... | |
| class | tvm::relax::GlobalVarPatternNode |
| A Pattern to Match a Relax Global Variable. More... | |
| class | tvm::relax::GlobalVarPattern |
| Managed reference to a GlobalVarPattern. More... | |
| class | tvm::relax::ConstantPatternNode |
| A Pattern to Match a Relax Constant. More... | |
| class | tvm::relax::ConstantPattern |
| Managed reference to a ConstantPattern. More... | |
| class | tvm::relax::CallPatternNode |
| A pattern to match a callable node in Relax. More... | |
| class | tvm::relax::CallPattern |
| class | tvm::relax::PrimArrPatternNode |
| A pattern to match an array of PrimExpr. More... | |
| class | tvm::relax::PrimArrPattern |
| Managed reference to a PrimArrPattern. More... | |
| class | tvm::relax::FunctionPatternNode |
| A pattern to match a Relax Function. More... | |
| class | tvm::relax::FunctionPattern |
| Managed reference to FunctionPatternNode. More... | |
| class | tvm::relax::TuplePatternNode |
| Pattern to match a tuple of ordered expressions. More... | |
| class | tvm::relax::TuplePattern |
| Managed reference to TuplePatternNode. More... | |
| class | tvm::relax::UnorderedTuplePatternNode |
| A pattern to match multiple expressions unorderedly. More... | |
| class | tvm::relax::UnorderedTuplePattern |
| Managed reference to UnorderedTuplePatternNode. More... | |
| class | tvm::relax::TupleGetItemPatternNode |
| A pattern to match n'th indexing to a tuple. More... | |
| class | tvm::relax::TupleGetItemPattern |
| Managed reference to TupleGetItemPatternNode. More... | |
| class | tvm::relax::AndPatternNode |
| Match a conjunction of other patterns. More... | |
| class | tvm::relax::AndPattern |
| Managed reference to AndPatternNode. More... | |
| class | tvm::relax::OrPatternNode |
| Match a disjunction of other patterns. More... | |
| class | tvm::relax::OrPattern |
| Managed reference to OrPatternNode. More... | |
| class | tvm::relax::NotPatternNode |
| Pattern for rejecting a certain pattern. More... | |
| class | tvm::relax::NotPattern |
| Managed reference to NotPatternNode. More... | |
| class | tvm::relax::WildcardPatternNode |
| Wildcard Pattern is a pattern that can match anything. More... | |
| class | tvm::relax::WildcardPattern |
| Managed reference to WildcardPatternNode. More... | |
| class | tvm::relax::StructInfoPatternNode |
| Pattern for matching a certain struct info. More... | |
| class | tvm::relax::StructInfoPattern |
| class | tvm::relax::ShapePatternNode |
| A pattern that asserting a root pattern has a certain shape. More... | |
| class | tvm::relax::ShapePattern |
| Managed reference to ShapePatternNode. More... | |
| class | tvm::relax::SameShapeConstraintNode |
| A pattern that asserting multiple root patterns have the same shape. More... | |
| class | tvm::relax::SameShapeConstraint |
| Managed reference to SameShapePatternNode. More... | |
| class | tvm::relax::DataTypePatternNode |
| A pattern that asserting a root pattern has a certain data type. More... | |
| class | tvm::relax::DataTypePattern |
| Managed reference to DataTypePatternNode. More... | |
| class | tvm::relax::AttrPatternNode |
| A pattern that asserting a root pattern has certain attributes. More... | |
| class | tvm::relax::AttrPattern |
| Managed reference to AttrPatternNode. More... | |
| class | tvm::relax::ExternFuncPatternNode |
| A pattern of external function. More... | |
| class | tvm::relax::ExternFuncPattern |
| Managed reference to ExternFuncPatternNode. More... | |
Namespaces | |
| tvm | |
| Performance counters for profiling via the PAPI library. | |
| tvm::arith | |
| namespace of arithmetic analysis. | |
| tvm::relax | |
Functions | |
| PatternSeq | tvm::relax::UsedBy (const PatternSeq &lhs, const PatternSeq &rhs, int index=-1) |
| Create used-by relationship between lhs[-1] and rhs[0], with [*lhs, *rhs] returned. More... | |
| PatternSeq | tvm::relax::operator^ (const PatternSeq &lhs, const PatternSeq &rhs) |
| Syntax sugar of UsedBy(lhs, rhs, -1). More... | |
| PatternSeq | tvm::relax::OnlyUsedBy (const PatternSeq &lhs, const PatternSeq &rhs, int index=-1) |
| Create only-used-by relationship between lhs[-1] and rhs[0], with [*lhs, *rhs] returned. More... | |
| PatternSeq | tvm::relax::operator>> (const PatternSeq &lhs, const PatternSeq &rhs) |
| Syntax sugar of OnlyUsedBy(lhs, rhs, -1). More... | |
| VarPattern | tvm::relax::IsVar (const ffi::String &name) |
| Syntatic Sugar for creating a VarPattern with a name. More... | |
| ConstantPattern | tvm::relax::IsConst () |
| Syntatic Sugar for creating a ConstantPattern. More... | |
| WildcardPattern | tvm::relax::Wildcard () |
| Syntatic Sugar for creating a WildcardPattern. More... | |
| ExprPattern | tvm::relax::IsExpr (const Expr &expr) |
| Syntatic Sugar for creating a ExprPattern. More... | |
| ExprPattern | tvm::relax::IsOp (const ffi::String &op_name) |
| Syntatic Sugar for creating a ExprPattern base on an Op. More... | |
| CallPattern | tvm::relax::IsCallTIR (const ffi::String &name, ffi::Optional< TuplePattern > args=std::nullopt) |
| Syntatic Sugar for call_tir (return a tensor) More... | |
| CallPattern | tvm::relax::IsCallTIR (const ffi::String &name, TuplePattern var_args) |
| Syntatic Sugar for call_tir (return a tuple of tensor) More... | |
| CallPattern | tvm::relax::IsCallDPSPacked (const ffi::String &name, ffi::Optional< TuplePattern > args=std::nullopt) |
| Syntatic Sugar for call_dps_packed (return a tensor) More... | |
| CallPattern | tvm::relax::IsCallDPSPacked (const ffi::String &name, TuplePattern var_args) |
| Syntatic Sugar for call_dps_packed (return a tuple of tensor) More... | |
| DFPattern | tvm::relax::IsTuple (const ffi::Array< DFPattern > &fields, bool unordered=false) |
| Syntatic Sugar for creating TuplePattern or UnorderedTuplePattern (unordered=true) More... | |
| TupleGetItemPattern | tvm::relax::IsTupleGetItem (const DFPattern tuple, int index=-1) |
| Syntatic Sugar for creating a TupleGetItemPattern. More... | |
A pattern language for matching dataflow properties.