tvm
Classes | Namespaces
data_layout.h File Reference

Layout expression to describe the data organization of a tensor. And BijectiveLayout 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::LayoutAxis
 
class  tvm::tirx::LayoutNode
 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...
 
class  tvm::tirx::Layout
 Managed reference to LayoutNode. More...
 
class  tvm::tirx::BijectiveLayoutNode
 
class  tvm::tirx::BijectiveLayout
 Bijective function mapping for data layout transformation. Given two Layout, BijectiveLayout 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

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