tvm
Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | List of all members
tvm::te::ScanOpNode Class Reference

Symbolic scan. More...

#include <operation.h>

Inheritance diagram for tvm::te::ScanOpNode:
Collaboration diagram for tvm::te::ScanOpNode:

Public Member Functions

 ScanOpNode ()
 constructor More...
 
int num_outputs () const final
 
DataType output_dtype (size_t i) const final
 Get data type. i-th output tensor. More...
 
Array< PrimExproutput_shape (size_t i) const final
 Get shape of i-th output tensor. More...
 
Array< TensorInputTensors () const final
 List all the input Tensors. More...
 
 TVM_DECLARE_FINAL_OBJECT_INFO (ScanOpNode, OperationNode)
 
- Public Member Functions inherited from tvm::te::OperationNode
virtual ~OperationNode ()
 
 TVM_DECLARE_BASE_OBJECT_INFO (OperationNode, Object)
 

Static Public Member Functions

static void RegisterReflection ()
 
- Static Public Member Functions inherited from tvm::te::OperationNode
static void RegisterReflection ()
 

Public Attributes

IterVar scan_axis
 IterVar to scan over. More...
 
Array< Tensorinit
 the initialization tensors More...
 
Array< Tensorupdate
 the update function represented by tensor More...
 
Array< Tensorstate_placeholder
 The placeholder to refer as states in update. More...
 
Array< Tensorinputs
 the inputs to the scan, these are optionally provided But they can be helpful to provide hints to speedup get of scan body. More...
 
Array< IterVarspatial_axis_
 Spatial axis to indicate spatial dimension of each output. They corresponds to flattened spatial axis of the outputs. More...
 
- Public Attributes inherited from tvm::te::OperationNode
std::string name
 optional name of the operation More...
 
std::string tag
 optional tag of the operation More...
 
Map< String, ffi::Any > attrs
 additional attributes of the operation More...
 

Static Public Attributes

static constexpr const char * _type_key = "te.ScanOp"
 
- Static Public Attributes inherited from tvm::te::OperationNode
static constexpr const char * _type_key = "te.Operation"
 

Detailed Description

Symbolic scan.

Constructor & Destructor Documentation

◆ ScanOpNode()

tvm::te::ScanOpNode::ScanOpNode ( )
inline

constructor

Member Function Documentation

◆ InputTensors()

Array<Tensor> tvm::te::ScanOpNode::InputTensors ( ) const
finalvirtual

List all the input Tensors.

Returns
List of input tensors.

Implements tvm::te::OperationNode.

◆ num_outputs()

int tvm::te::ScanOpNode::num_outputs ( ) const
finalvirtual
Returns
number of outputs

Implements tvm::te::OperationNode.

◆ output_dtype()

DataType tvm::te::ScanOpNode::output_dtype ( size_t  i) const
finalvirtual

Get data type. i-th output tensor.

Parameters
iThe output index.
Returns
type of i-th output.

Implements tvm::te::OperationNode.

◆ output_shape()

Array<PrimExpr> tvm::te::ScanOpNode::output_shape ( size_t  i) const
finalvirtual

Get shape of i-th output tensor.

Parameters
iThe output index.
Returns
shape of i-th output.

Implements tvm::te::OperationNode.

◆ RegisterReflection()

static void tvm::te::ScanOpNode::RegisterReflection ( )
inlinestatic

◆ TVM_DECLARE_FINAL_OBJECT_INFO()

tvm::te::ScanOpNode::TVM_DECLARE_FINAL_OBJECT_INFO ( ScanOpNode  ,
OperationNode   
)

Member Data Documentation

◆ _type_key

constexpr const char* tvm::te::ScanOpNode::_type_key = "te.ScanOp"
staticconstexpr

◆ init

Array<Tensor> tvm::te::ScanOpNode::init

the initialization tensors

◆ inputs

Array<Tensor> tvm::te::ScanOpNode::inputs

the inputs to the scan, these are optionally provided But they can be helpful to provide hints to speedup get of scan body.

◆ scan_axis

IterVar tvm::te::ScanOpNode::scan_axis

IterVar to scan over.

◆ spatial_axis_

Array<IterVar> tvm::te::ScanOpNode::spatial_axis_

Spatial axis to indicate spatial dimension of each output. They corresponds to flattened spatial axis of the outputs.

[output[0].axis[1], output[0].axis[2]... output[k].axis[j]...] These are auxiliary data structure for storing result of bound inference. They do not corresponds to splittable iterations, thus the name comes with underscore.

◆ state_placeholder

Array<Tensor> tvm::te::ScanOpNode::state_placeholder

The placeholder to refer as states in update.

◆ update

Array<Tensor> tvm::te::ScanOpNode::update

the update function represented by tensor


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