tvm
Typedefs | Functions
tvm::tir::usmp::transform Namespace Reference

Typedefs

using Pass = tvm::transform::Pass
 

Functions

Pass ConvertPoolAllocationsToOffsets (const Map< tir::Stmt, PoolAllocation > &pool_allocations, Bool emit_tvmscript_printable=Bool(false))
 Convert the analyzed PoolAllocation to offsets from pool variables. More...
 
Pass AssignPoolInfo ()
 Assign PoolInfo objects to tir.allocate nodes depending on the PrimFunc's target. More...
 
Pass CreateAllocatesForIO ()
 This pass creates Allocate nodes for I/O tensors. More...
 

Typedef Documentation

◆ Pass

Function Documentation

◆ AssignPoolInfo()

Pass tvm::tir::usmp::transform::AssignPoolInfo ( )

Assign PoolInfo objects to tir.allocate nodes depending on the PrimFunc's target.

This pass would assign default PoolInfo objects to allocate nodes that are not otherwise annotated, depending on pool info supplied for each target.

Returns
the pass

◆ ConvertPoolAllocationsToOffsets()

Pass tvm::tir::usmp::transform::ConvertPoolAllocationsToOffsets ( const Map< tir::Stmt, PoolAllocation > &  pool_allocations,
Bool  emit_tvmscript_printable = Bool(false) 
)

Convert the analyzed PoolAllocation to offsets from pool variables.

This pass would convert the main function to accept pool variables as an input that get passed onto the operator PrimFuncs. Furthermore, the static allocations will be converted to offsets within the pool variable.

Returns
the pass

◆ CreateAllocatesForIO()

Pass tvm::tir::usmp::transform::CreateAllocatesForIO ( )

This pass creates Allocate nodes for I/O tensors.

If the user wants to place the I/O tensors in the workspace, this pass is required to be run. In doing so, it will create Allocate nodes for I/O tensors to be planned, and be removed from function arguments.

Returns
the pass