tvm
|
Managed reference to SpaceGeneratorNode. More...
#include <space_generator.h>
Public Types | |
using | FInitializeWithTuneContext = runtime::TypedPackedFunc< void(const TuneContext &)> |
The function type of InitializeWithTuneContext method. More... | |
using | FGenerateDesignSpace = runtime::TypedPackedFunc< Array< tir::Schedule >(const IRModule &)> |
The function type of GenerateDesignSpace method. More... | |
using | FClone = runtime::TypedPackedFunc< SpaceGenerator()> |
The function type of Clone method. More... | |
![]() | |
using | ContainerType = Object |
type indicate the container type. More... | |
Public Member Functions | |
TVM_DEFINE_MUTABLE_NOTNULLABLE_OBJECT_REF_METHODS (SpaceGenerator, ObjectRef, SpaceGeneratorNode) | |
![]() | |
ObjectRef ()=default | |
default constructor More... | |
ObjectRef (ObjectPtr< Object > data) | |
Constructor from existing object ptr. More... | |
bool | same_as (const ObjectRef &other) const |
Comparator. More... | |
bool | operator== (const ObjectRef &other) const |
Comparator. More... | |
bool | operator!= (const ObjectRef &other) const |
Comparator. More... | |
bool | operator< (const ObjectRef &other) const |
Comparator. More... | |
bool | defined () const |
const Object * | get () const |
const Object * | operator-> () const |
bool | unique () const |
int | use_count () const |
template<typename ObjectType > | |
const ObjectType * | as () const |
Try to downcast the internal Object to a raw pointer of a corresponding type. More... | |
Static Public Member Functions | |
static SpaceGenerator | PySpaceGenerator (FInitializeWithTuneContext f_initialize_with_tune_context, FGenerateDesignSpace f_generate_design_space, FClone f_clone) |
Create a design space generator with customized methods on the python-side. More... | |
static SpaceGenerator | ScheduleFn (PackedFunc schedule_fn) |
Create a design space generator with customized schedule function. More... | |
static SpaceGenerator | SpaceGeneratorUnion (Array< SpaceGenerator, void > space_generators) |
Create a design space generator that is union of multiple design space generators. More... | |
static SpaceGenerator | PostOrderApply (runtime::PackedFunc f_block_filter=nullptr) |
Create a design space generator that generates design spaces by applying schedule rules to blocks in post-DFS order. More... | |
Protected Member Functions | |
SpaceGenerator ()=default | |
![]() | |
Object * | get_mutable () const |
Additional Inherited Members | |
![]() | |
static constexpr bool | _type_is_nullable = true |
![]() | |
template<typename T > | |
static T | DowncastNoCheck (ObjectRef ref) |
Internal helper function downcast a ref without check. More... | |
static void | FFIClearAfterMove (ObjectRef *ref) |
Clear the object ref data field without DecRef after we successfully moved the field. More... | |
template<typename ObjectType > | |
static ObjectPtr< ObjectType > | GetDataPtr (const ObjectRef &ref) |
Internal helper function get data_ as ObjectPtr of ObjectType. More... | |
![]() | |
ObjectPtr< Object > | data_ |
Internal pointer that backs the reference. More... | |
Managed reference to SpaceGeneratorNode.
The function type of Clone
method.
using tvm::meta_schedule::SpaceGenerator::FGenerateDesignSpace = runtime::TypedPackedFunc<Array<tir::Schedule>(const IRModule&)> |
The function type of GenerateDesignSpace
method.
mod | The module used for design space generation. |
using tvm::meta_schedule::SpaceGenerator::FInitializeWithTuneContext = runtime::TypedPackedFunc<void(const TuneContext&)> |
The function type of InitializeWithTuneContext
method.
context | The tuning context for initialization. |
|
protecteddefault |
|
static |
Create a design space generator that generates design spaces by applying schedule rules to blocks in post-DFS order.
|
static |
Create a design space generator with customized methods on the python-side.
f_initialize_with_tune_context | The packed function of InitializeWithTuneContext . |
f_generate_design_space | The packed function of GenerateDesignSpace . |
f_clone | The packed function of Clone . |
|
static |
Create a design space generator with customized schedule function.
schedule_fn | The schedule function, which can have the following signatures: 1) void(Schedule) 2) Schedule(Schedule) 3) Array<Schedule>(Schedule) |
|
static |
Create a design space generator that is union of multiple design space generators.
space_generators | An array of design space generators to be unioned. |
tvm::meta_schedule::SpaceGenerator::TVM_DEFINE_MUTABLE_NOTNULLABLE_OBJECT_REF_METHODS | ( | SpaceGenerator | , |
ObjectRef | , | ||
SpaceGeneratorNode | |||
) |