tvm
Classes | Namespaces | Macros | Typedefs | Variables
layout.h File Reference

Definition of layout. More...

#include <tvm/ffi/container/array.h>
#include <tvm/ffi/container/tuple.h>
#include <tvm/ffi/function.h>
#include <tvm/ffi/object.h>
#include <tvm/ir/attr_registry_map.h>
#include <tvm/ir/module.h>
#include <tvm/tirx/exec_scope.h>
#include <tvm/tirx/var.h>
Include dependency graph for layout.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  tvm::tirx::LayoutNode
 
class  tvm::tirx::Layout
 
class  tvm::tirx::AxisNode
 
class  tvm::tirx::Axis
 
class  tvm::tirx::AxisRegEntry
 
class  tvm::tirx::AxisAttrMap< ValueType >
 
class  tvm::tirx::IterNode
 
class  tvm::tirx::Iter
 
class  tvm::tirx::TileLayoutNode
 
class  tvm::tirx::TileLayout
 
class  tvm::tirx::SwizzleLayoutNode
 
class  tvm::tirx::SwizzleLayout
 
class  tvm::tirx::ComposeLayoutNode
 
class  tvm::tirx::ComposeLayout
 

Namespaces

 tvm
 An object that builds and maintains block scope and StmtSref mapping for Dependence analysis.
 
 tvm::tirx
 

Macros

#define TVM_STR_CONCAT_(__x, __y)   __x##__y
 
#define TVM_STR_CONCAT(__x, __y)   TVM_STR_CONCAT_(__x, __y)
 
#define TVM_AXIS_REGISTER_VAR_DEF   [[maybe_unused]] static ::tvm::tirx::AxisRegEntry& __make_##Axis
 
#define TVM_REGISTER_AXIS(AxisName)
 

Typedefs

using tvm::tirx::FAxisFuser = ffi::TypedFunction< ffi::Optional< Iter >(Target, ffi::String, ffi::String, Iter)>
 
using tvm::tirx::FAxisSplitter = ffi::TypedFunction< ffi::Array< Iter, void >(Target, ffi::String, Iter)>
 
using tvm::tirx::AxisRegistry = AttrRegistry< AxisRegEntry, Axis >
 

Variables

constexpr int tvm::tirx::kPSUMMaxElemPerBank = 512
 
constexpr int tvm::tirx::kPSUMBankNum = 8
 

Detailed Description

Definition of layout.

Macro Definition Documentation

◆ TVM_AXIS_REGISTER_VAR_DEF

#define TVM_AXIS_REGISTER_VAR_DEF   [[maybe_unused]] static ::tvm::tirx::AxisRegEntry& __make_##Axis

◆ TVM_REGISTER_AXIS

#define TVM_REGISTER_AXIS (   AxisName)
Value:
static AxisRegEntry & RegisterOrGet(const ffi::String &name)
Register or get the axis entry by name.
#define TVM_STR_CONCAT(__x, __y)
Definition: layout.h:277
#define TVM_AXIS_REGISTER_VAR_DEF
Definition: layout.h:281

◆ TVM_STR_CONCAT

#define TVM_STR_CONCAT (   __x,
  __y 
)    TVM_STR_CONCAT_(__x, __y)

◆ TVM_STR_CONCAT_

#define TVM_STR_CONCAT_ (   __x,
  __y 
)    __x##__y