docc 0.8.3 (0d44999b)
C++ API Reference
Loading...
Searching...
No Matches
sdfg::passes::TensorAllocationSizeInference Class Reference

Records the byte size of pointer containers in their StorageType::allocation_size, derived from the Tensor-typed memlets connecting them to library nodes. More...

#include <sdfg/passes/memory/tensor_allocation_size_inference.h>

Inheritance diagram for sdfg::passes::TensorAllocationSizeInference:
[legend]

Public Member Functions

std::string name () override
bool run_pass (builder::StructuredSDFGBuilder &builder, analysis::AnalysisManager &analysis_manager) override
Public Member Functions inherited from sdfg::passes::Pass
 Pass ()=default
 Pass (const Options &options)
virtual ~Pass ()=default
virtual std::vector< OptionSpec > options ()
bool run (builder::SDFGBuilder &builder, bool create_report=false)
bool run (builder::StructuredSDFGBuilder &builder, analysis::AnalysisManager &analysis_manager, bool create_report=false)
virtual bool run_pass (builder::SDFGBuilder &builder)
virtual void invalidates (analysis::AnalysisManager &analysis_manager, bool applied)

Additional Inherited Members

Protected Member Functions inherited from sdfg::passes::Pass
template<class T>
T option (const OptionKey< T > &key, T fallback=T{}) const

Detailed Description

Records the byte size of pointer containers in their StorageType::allocation_size, derived from the Tensor-typed memlets connecting them to library nodes.

Must run before library node expansion, which drops the tensor layouts. The size is the memory span of the layout (including gaps of non-contiguous layouts); multiple uses are combined with max. Containers are skipped if any use depends on non-argument symbols, and managed allocations are left untouched.

Member Function Documentation

◆ name()

std::string sdfg::passes::TensorAllocationSizeInference::name ( )
inlineoverridevirtual

Implements sdfg::passes::Pass.

◆ run_pass()

bool sdfg::passes::TensorAllocationSizeInference::run_pass ( builder::StructuredSDFGBuilder & builder,
analysis::AnalysisManager & analysis_manager )
overridevirtual

Reimplemented from sdfg::passes::Pass.


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