tvm
Classes | Namespaces
data_layout.h File Reference

SLayout expression to describe the data organization of a tensor. And SBijectiveLayout to mapping two data layouts between each other. More...

#include <tvm/ffi/reflection/registry.h>
#include <tvm/tirx/expr.h>
#include <tvm/tirx/op.h>
#include <algorithm>
#include <sstream>
#include <string>
#include <utility>
#include <vector>
#include "tvm/tirx/var.h"
Include dependency graph for data_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::SLayoutAxis
 
class  tvm::tirx::SLayoutNode
 SLayout 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). SLayout for scalar is defined, while both its name and axes have size 0. More...
 
class  tvm::tirx::SLayout
 Managed reference to SLayoutNode. More...
 
class  tvm::tirx::SBijectiveLayoutNode
 
class  tvm::tirx::SBijectiveLayout
 Bijective function mapping for data layout transformation. Given two SLayout, SBijectiveLayout 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...
 

Namespaces

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

Detailed Description

SLayout expression to describe the data organization of a tensor. And SBijectiveLayout to mapping two data layouts between each other.