tvm
|
Managed reference to AttachMapNode. More...
#include <loop_state.h>
Public Member Functions | |
void | SetComputeAtIter (int stage_id, int target_stage_id, int target_iter_id) |
Process the stage/iterator mapping after compute at. More... | |
void | DeleteStage (int stage_id) |
Delete the entry of a specific stage. This is a public wrapper of DeleteStageEntry . More... | |
void | UpdateIters (const std::vector< IterKey > &original_iters, const std::vector< IterKey > &new_iters) |
Find the relations of original iterators in AttachMap, and update them with the new iterators. Both stage_to_attach_iter and iter_to_attached_stages will be updated. More... | |
AttachMap | ApplyStageIdOffset (int start_id, int offset=1) const |
Traverse through stage_to_attach_iter and iter_to_attached_stages map, add offset to stage indexes that are larger than the start_id. Used for steps that insert new stages to ComputeDAG (e.g., CacheRead/CacheWrite step). More... | |
TVM_DEFINE_OBJECT_REF_METHODS (AttachMap, ObjectRef, AttachMapNode) | |
TVM_DEFINE_OBJECT_REF_COW_METHOD (AttachMapNode) | |
![]() | |
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... | |
Additional Inherited Members | |
![]() | |
using | ContainerType = Object |
type indicate the container type. More... | |
![]() | |
static constexpr bool | _type_is_nullable = true |
![]() | |
Object * | get_mutable () const |
![]() | |
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 AttachMapNode.
AttachMap tvm::auto_scheduler::AttachMap::ApplyStageIdOffset | ( | int | start_id, |
int | offset = 1 |
||
) | const |
Traverse through stage_to_attach_iter
and iter_to_attached_stages
map, add offset to stage indexes that are larger than the start_id. Used for steps that insert new stages to ComputeDAG (e.g., CacheRead/CacheWrite step).
start_id | The index threshold. This function only adds offset for stages with indices larger then this threshold. |
offset | The index offset to be added to the stage index. |
void tvm::auto_scheduler::AttachMap::DeleteStage | ( | int | stage_id | ) |
Delete the entry of a specific stage. This is a public wrapper of DeleteStageEntry
.
stage_id | The index of the stage to be deleted. |
void tvm::auto_scheduler::AttachMap::SetComputeAtIter | ( | int | stage_id, |
int | target_stage_id, | ||
int | target_iter_id | ||
) |
Process the stage/iterator mapping after compute at.
stage_id | The index of the source stage of computed at. |
target_stage_id | The index of stage that this step will compute at to. |
target_iter_id | The index of target iterator in the target stage. |
tvm::auto_scheduler::AttachMap::TVM_DEFINE_OBJECT_REF_COW_METHOD | ( | AttachMapNode | ) |
tvm::auto_scheduler::AttachMap::TVM_DEFINE_OBJECT_REF_METHODS | ( | AttachMap | , |
ObjectRef | , | ||
AttachMapNode | |||
) |
void tvm::auto_scheduler::AttachMap::UpdateIters | ( | const std::vector< IterKey > & | original_iters, |
const std::vector< IterKey > & | new_iters | ||
) |
Find the relations of original iterators in AttachMap, and update them with the new iterators. Both stage_to_attach_iter
and iter_to_attached_stages
will be updated.
original_iters | The original IterKey. |
new_iters | The new IterKey for replacing the old ones. |