tvm
Public Member Functions | Public Attributes | Static Public Attributes | List of all members
tvm::relax::TraceNode Class Reference

Trace manages history of optimization decisions. More...

#include <tuning_api.h>

Inheritance diagram for tvm::relax::TraceNode:
Collaboration diagram for tvm::relax::TraceNode:

Public Member Functions

virtual ~TraceNode ()=default
 The default destructor. More...
 
void VisitAttrs (tvm::AttrVisitor *v)
 
bool Verify () const
 Verify current decision history. More...
 
IRModule Add (Knob knob, String decision)
 Add a knob and its decision to the current trace. More...
 
ObjectRef AsJSON (bool include_in_mod=true) const
 Serialize Trace as a JSON-style object. More...
 
void SetPerf (double _perf)
 Set the performance. More...
 
void SetOutMod (IRModule mod_)
 Set output module. More...
 
 TVM_DECLARE_BASE_OBJECT_INFO (TraceNode, 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)
 
Objectoperator= (const Object &other)
 
Objectoperator= (Object &&other)
 

Public Attributes

IRModule in_mod
 Input IRModule. More...
 
IRModule out_mod
 Output IRModule. More...
 
Array< Knobknobs
 Knobs that are applied so far. More...
 
Array< Stringdecisions
 Decisions made for the knobs. More...
 
double perf = -1
 Performance of out_mod. More...
 
int size = 0
 Length of the decision history. More...
 

Static Public Attributes

static constexpr const char * _type_key = "relax.tuning_api.Trace"
 
- 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...
 

Detailed Description

Trace manages history of optimization decisions.

Constructor & Destructor Documentation

◆ ~TraceNode()

virtual tvm::relax::TraceNode::~TraceNode ( )
virtualdefault

The default destructor.

Member Function Documentation

◆ Add()

IRModule tvm::relax::TraceNode::Add ( Knob  knob,
String  decision 
)
inline

Add a knob and its decision to the current trace.

◆ AsJSON()

ObjectRef tvm::relax::TraceNode::AsJSON ( bool  include_in_mod = true) const

Serialize Trace as a JSON-style object.

Parameters
include_in_modBoolean config to include input IRModule in the output.
Returns
The JSON-style object

◆ SetOutMod()

void tvm::relax::TraceNode::SetOutMod ( IRModule  mod_)
inline

Set output module.

◆ SetPerf()

void tvm::relax::TraceNode::SetPerf ( double  _perf)
inline

Set the performance.

◆ TVM_DECLARE_BASE_OBJECT_INFO()

tvm::relax::TraceNode::TVM_DECLARE_BASE_OBJECT_INFO ( TraceNode  ,
Object   
)

◆ Verify()

bool tvm::relax::TraceNode::Verify ( ) const
inline

Verify current decision history.

◆ VisitAttrs()

void tvm::relax::TraceNode::VisitAttrs ( tvm::AttrVisitor v)
inline

Member Data Documentation

◆ _type_key

constexpr const char* tvm::relax::TraceNode::_type_key = "relax.tuning_api.Trace"
staticconstexpr

◆ decisions

Array<String> tvm::relax::TraceNode::decisions

Decisions made for the knobs.

◆ in_mod

IRModule tvm::relax::TraceNode::in_mod

Input IRModule.

◆ knobs

Array<Knob> tvm::relax::TraceNode::knobs

Knobs that are applied so far.

◆ out_mod

IRModule tvm::relax::TraceNode::out_mod
mutable

Output IRModule.

◆ perf

double tvm::relax::TraceNode::perf = -1
mutable

Performance of out_mod.

◆ size

int tvm::relax::TraceNode::size = 0
mutable

Length of the decision history.


The documentation for this class was generated from the following file: