tvm
|
Bijective function mapping for data layout transformation. Given two Layout, BijectiveLayout build and store the mapping rules, provides API to transform N-dimention tensor from the source indices (i0, i1, .., im) to the destination indices (j0, j1, .., jm). More...
#include <data_layout.h>
Public Member Functions | |
BijectiveLayout (Layout src_layout, Layout dst_layout) | |
The constructor. More... | |
Array< PrimExpr > | ForwardShape (const Array< PrimExpr > &shape) const |
Array< PrimExpr > | BackwardShape (const Array< PrimExpr > &dst_shape) const |
Array< PrimExpr > | ForwardIndex (const Array< PrimExpr > &index) const |
Array< PrimExpr > | BackwardIndex (const Array< PrimExpr > &dst_index) const |
TVM_DEFINE_OBJECT_REF_METHODS (BijectiveLayout, ObjectRef, BijectiveLayoutNode) | |
Public Member Functions inherited from tvm::runtime::ObjectRef | |
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 , typename = std::enable_if_t<std::is_base_of_v<Object, ObjectType>>> | |
const ObjectType * | as () const |
Try to downcast the internal Object to a raw pointer of a corresponding type. More... | |
template<typename ObjectRefType , typename = std::enable_if_t<std::is_base_of_v<ObjectRef, ObjectRefType>>> | |
Optional< ObjectRefType > | as () const |
Try to downcast the ObjectRef to a Optional<T> of the requested type. More... | |
Additional Inherited Members | |
Public Types inherited from tvm::runtime::ObjectRef | |
using | ContainerType = Object |
type indicate the container type. More... | |
Static Public Attributes inherited from tvm::runtime::ObjectRef | |
static constexpr bool | _type_is_nullable = true |
Protected Member Functions inherited from tvm::runtime::ObjectRef | |
Object * | get_mutable () const |
Static Protected Member Functions inherited from tvm::runtime::ObjectRef | |
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... | |
Protected Attributes inherited from tvm::runtime::ObjectRef | |
ObjectPtr< Object > | data_ |
Internal pointer that backs the reference. More... | |
Bijective function mapping for data layout transformation. Given two Layout, BijectiveLayout build and store the mapping rules, provides API to transform N-dimention tensor from the source indices (i0, i1, .., im) to the destination indices (j0, j1, .., jm).
The constructor.
src_layout | The source layout |
dst_layout | The destination layout |
Array<PrimExpr> tvm::tir::BijectiveLayout::BackwardIndex | ( | const Array< PrimExpr > & | dst_index | ) | const |
Array<PrimExpr> tvm::tir::BijectiveLayout::BackwardShape | ( | const Array< PrimExpr > & | dst_shape | ) | const |
tvm::tir::BijectiveLayout::TVM_DEFINE_OBJECT_REF_METHODS | ( | BijectiveLayout | , |
ObjectRef | , | ||
BijectiveLayoutNode | |||
) |