tvm
|
A block is a basic schedule unit in TIR. More...
#include <stmt.h>
Public Member Functions | |
TVM_DECLARE_FINAL_OBJECT_INFO (BlockNode, StmtNode) | |
![]() | |
StmtNode ()=default | |
StmtNode (Span span) | |
TVM_OBJECT_ENABLE_SCRIPT_PRINTER () | |
TVM_DECLARE_BASE_OBJECT_INFO (StmtNode, Object) | |
Static Public Member Functions | |
static void | RegisterReflection () |
![]() | |
static void | RegisterReflection () |
Public Attributes | |
Array< IterVar > | iter_vars |
The variables of the block. More... | |
Array< BufferRegion > | reads |
The read buffer regions of the block. More... | |
Array< BufferRegion > | writes |
The write buffer regions of the block. More... | |
String | name_hint |
The name_hint of the block. More... | |
Array< Buffer > | alloc_buffers |
The buffer allocated in the block. More... | |
Array< MatchBufferRegion > | match_buffers |
The match buffer regions. More... | |
Map< String, ffi::Any > | annotations |
The annotation of the block. More... | |
Optional< Stmt > | init |
The init statement is executed during the first iteration of reduction loops in a reduction block. The optional init field allows us to represent initialization and reduction update in a single block and transform them collectively. We also provide primitives to decompose the init into a separate block during scheduling. Init field is std::nullopt if there is no reduction iter_vars. More... | |
Stmt | body |
The body of the block. More... | |
![]() | |
Span | span |
Span that points to the original source code. Reserved debug information. More... | |
Static Public Attributes | |
static constexpr const char * | _type_key = "tir.Block" |
![]() | |
static constexpr const char * | _type_key = "tir.Stmt" |
static constexpr TVMFFISEqHashKind | _type_s_eq_hash_kind = kTVMFFISEqHashKindTreeNode |
static constexpr const uint32_t | _type_child_slots = 15 |
A block is a basic schedule unit in TIR.
|
inlinestatic |
|
staticconstexpr |
Array<Buffer> tvm::tir::BlockNode::alloc_buffers |
The buffer allocated in the block.
Map<String, ffi::Any> tvm::tir::BlockNode::annotations |
The annotation of the block.
Stmt tvm::tir::BlockNode::body |
The body of the block.
Optional<Stmt> tvm::tir::BlockNode::init |
The init statement is executed during the first iteration of reduction loops in a reduction block. The optional init field allows us to represent initialization and reduction update in a single block and transform them collectively. We also provide primitives to decompose the init into a separate block during scheduling. Init field is std::nullopt
if there is no reduction iter_vars.
Array<IterVar> tvm::tir::BlockNode::iter_vars |
The variables of the block.
Array<MatchBufferRegion> tvm::tir::BlockNode::match_buffers |
The match buffer regions.
String tvm::tir::BlockNode::name_hint |
The name_hint of the block.
Array<BufferRegion> tvm::tir::BlockNode::reads |
The read buffer regions of the block.
Array<BufferRegion> tvm::tir::BlockNode::writes |
The write buffer regions of the block.