tvm
Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | List of all members
tvm::tir::LayoutNode Class Reference

Layout is to describe how data is organized within an N-dimention tensor. It is composed of upper cases, lower cases and numbers, where upper case indicates a primal axis and the corresponding lower case with factor size indicates the subordinate axis. For example, NCHW16c can describe a 5-D tensor of [batch_size, channel, height, width, channel_block]. Here subordinate axis channel_block=16 is the factor size of the primal axis C (channel). Layout for scalar is defined, while both its name and axes have size 0. More...

#include <data_layout.h>

Inheritance diagram for tvm::tir::LayoutNode:
Collaboration diagram for tvm::tir::LayoutNode:

Public Member Functions

 TVM_DECLARE_FINAL_OBJECT_INFO (LayoutNode, Object)
 

Static Public Member Functions

static void RegisterReflection ()
 

Public Attributes

String name
 string representation of layout, "" for scalar. More...
 
Array< tir::IterVaraxes
 specify each axis of the layout, in which the variable name is the name of the axis. The IterVar's extent indicates the size of the axis, it is a variable for a primal axis, but a constant for a subordinate axis. Empty for scalar's layout. More...
 

Static Public Attributes

static constexpr const char * _type_key = "tir.Layout"
 

Detailed Description

Layout is to describe how data is organized within an N-dimention tensor. It is composed of upper cases, lower cases and numbers, where upper case indicates a primal axis and the corresponding lower case with factor size indicates the subordinate axis. For example, NCHW16c can describe a 5-D tensor of [batch_size, channel, height, width, channel_block]. Here subordinate axis channel_block=16 is the factor size of the primal axis C (channel). Layout for scalar is defined, while both its name and axes have size 0.

Member Function Documentation

◆ RegisterReflection()

static void tvm::tir::LayoutNode::RegisterReflection ( )
inlinestatic

◆ TVM_DECLARE_FINAL_OBJECT_INFO()

tvm::tir::LayoutNode::TVM_DECLARE_FINAL_OBJECT_INFO ( LayoutNode  ,
Object   
)

Member Data Documentation

◆ _type_key

constexpr const char* tvm::tir::LayoutNode::_type_key = "tir.Layout"
staticconstexpr

◆ axes

Array<tir::IterVar> tvm::tir::LayoutNode::axes

specify each axis of the layout, in which the variable name is the name of the axis. The IterVar's extent indicates the size of the axis, it is a variable for a primal axis, but a constant for a subordinate axis. Empty for scalar's layout.

◆ name

String tvm::tir::LayoutNode::name

string representation of layout, "" for scalar.


The documentation for this class was generated from the following file: