tvm
|
The pattern object used as the input of FuseOpsByPattern. For bindings to be fused, it needs to be matched with pattern
and the check
function needs to return true.
More...
#include <transform.h>
Public Member Functions | |
void | VisitAttrs (tvm::AttrVisitor *v) |
TVM_DECLARE_FINAL_OBJECT_INFO (FusionPatternNode, Object) | |
Public Member Functions inherited from tvm::runtime::Object | |
uint32_t | type_index () const |
std::string | GetTypeKey () const |
size_t | GetTypeKeyHash () const |
template<typename TargetType > | |
bool | IsInstance () const |
bool | unique () const |
Object () | |
Object (const Object &other) | |
Object (Object &&other) | |
Object & | operator= (const Object &other) |
Object & | operator= (Object &&other) |
Public Attributes | |
String | name |
The name of pattern. It becomes the value of the kComposite attribute of a fused function after successful matching. More... | |
DFPattern | pattern |
The dataflow pattern that will be used to match expression in the DataflowBlock. All the call nodes covered by the pattern will be extracted into the fused function. More... | |
Map< String, DFPattern > | annotation_patterns |
The map which is used to extract important expressions from the pattern match result. All DFPattern in this map should be part of the pattern . More... | |
Optional< PackedFunc > | check |
The function to determine whether the match result is accepted. This can be NullOpt if check function is not necessary for this pattern. More... | |
Optional< PackedFunc > | attrs_getter |
The function to get attributes for fused function. More... | |
Static Public Attributes | |
static constexpr const char * | _type_key = "relax.transform.FusionPattern" |
Static Public Attributes inherited from tvm::runtime::Object | |
static constexpr const char * | _type_key = "runtime.Object" |
static constexpr bool | _type_final = false |
static constexpr uint32_t | _type_child_slots = 0 |
static constexpr bool | _type_child_slots_can_overflow = true |
static constexpr bool | _type_has_method_visit_attrs = true |
static constexpr bool | _type_has_method_sequal_reduce = false |
static constexpr bool | _type_has_method_shash_reduce = false |
static constexpr uint32_t | _type_index = TypeIndex::kDynamic |
Additional Inherited Members | |
Public Types inherited from tvm::runtime::Object | |
typedef void(* | FDeleter) (Object *self) |
Object deleter. More... | |
using | RefCounterType = std::atomic< int32_t > |
Static Public Member Functions inherited from tvm::runtime::Object | |
static std::string | TypeIndex2Key (uint32_t tindex) |
Get the type key of the corresponding index from runtime. More... | |
static size_t | TypeIndex2KeyHash (uint32_t tindex) |
Get the type key hash of the corresponding index from runtime. More... | |
static uint32_t | TypeKey2Index (const std::string &key) |
Get the type index of the corresponding key from runtime. More... | |
static uint32_t | _GetOrAllocRuntimeTypeIndex () |
static uint32_t | RuntimeTypeIndex () |
Protected Member Functions inherited from tvm::runtime::Object | |
void | IncRef () |
developer function, increases reference counter. More... | |
void | DecRef () |
developer function, decrease reference counter. More... | |
Static Protected Member Functions inherited from tvm::runtime::Object | |
static uint32_t | GetOrAllocRuntimeTypeIndex (const std::string &key, uint32_t static_tindex, uint32_t parent_tindex, uint32_t type_child_slots, bool type_child_slots_can_overflow) |
Get the type index using type key. More... | |
Protected Attributes inherited from tvm::runtime::Object | |
uint32_t | type_index_ {0} |
Type index(tag) that indicates the type of the object. More... | |
RefCounterType | ref_counter_ {0} |
The internal reference counter. More... | |
FDeleter | deleter_ = nullptr |
deleter of this object to enable customized allocation. If the deleter is nullptr, no deletion will be performed. The creator of the object must always set the deleter field properly. More... | |
The pattern object used as the input of FuseOpsByPattern. For bindings to be fused, it needs to be matched with pattern
and the check
function needs to return true.
tvm::relax::transform::FusionPatternNode::TVM_DECLARE_FINAL_OBJECT_INFO | ( | FusionPatternNode | , |
Object | |||
) |
|
inline |
|
staticconstexpr |
The map which is used to extract important expressions from the pattern match result. All DFPattern in this map should be part of the pattern
.
Optional<PackedFunc> tvm::relax::transform::FusionPatternNode::attrs_getter |
The function to get attributes for fused function.
It should have signature Map<String, ObjectRef>(const Map<String, Expr>& context)
Optional<PackedFunc> tvm::relax::transform::FusionPatternNode::check |
The function to determine whether the match result is accepted. This can be NullOpt if check function is not necessary for this pattern.
It should have signature bool(const PatternCheckContext& context)
String tvm::relax::transform::FusionPatternNode::name |
The name of pattern. It becomes the value of the kComposite attribute of a fused function after successful matching.
DFPattern tvm::relax::transform::FusionPatternNode::pattern |
The dataflow pattern that will be used to match expression in the DataflowBlock. All the call nodes covered by the pattern will be extracted into the fused function.