Class TileLayout#

Inheritance Relationships#

Base Type#

Class Documentation#

class TileLayout : public tvm::tirx::Layout#

Public Types

using ContainerType = TileLayoutObj#

Public Functions

inline explicit TileLayout(ffi::Array<Iter> shard, ffi::Array<Iter> replica, ffi::Map<Axis, PrimExpr> offset)#
inline ffi::Array<PrimExpr> GetShardShape() const#

Get the shape of the shard.

bool IsContiguous(ffi::Optional<sym::Analyzer> analyzer = std::nullopt) const#

Whether the tile describes contiguous row-major memory strides.

Memory-axis origins do not affect this predicate. Replicas and non-memory axes are rejected; unit extents may have arbitrary strides. Deep equality is tried first, reusing the supplied analyzer or lazily creating one for proof.

inline bool IsTrivial() const#

Is the layout trivial (pure memory, identical mapping).

inline bool HasThreadAxis() const#

Has Thread Axis.

ffi::Optional<Tuple<ThreadScope, ThreadScope>> GetScope() const#

Get the scope pair of the layout.

inline explicit TileLayout(::tvm::ffi::UnsafeInit tag)#
inline __PtrType operator->() const#
inline __PtrType get() const#
inline TileLayoutObj *CopyOnWrite()#

Public Static Functions

static TileLayout DefaultLayout(ffi::Array<PrimExpr> shape)#

Get the default layout for the shape.