|
docc 0.8.3 (0d44999b)
C++ API Reference
|
Materialize compact GPU reduction partials and their SDFG accesses. More...
#include <sdfg/passes/offloading/reduction_shared_memory_delinearization.h>
Public Member Functions | |
| std::string | name () override |
| bool | run_pass (builder::StructuredSDFGBuilder &builder, analysis::AnalysisManager &analysis_manager) override |
| Validate ownership and placement, then materialize pending GPU reductions. | |
| 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 |
Materialize compact GPU reduction partials and their SDFG accesses.
Uses ReductionBufferAnalysis to declare private/shared arrays, record schedule buffer references, and pack body memlets while retaining original writeback indices. Initialization, combination, and publication remain in GPU codegen. Existing valid materializations are checked and left unchanged.
|
overridevirtual |
Implements sdfg::passes::Pass.
|
overridevirtual |
Validate ownership and placement, then materialize pending GPU reductions.
Invalidates all analyses after rewriting the graph.
| InvalidSDFGException | for unsupported footprints or incompatible buffer declarations/ownership. |
Reimplemented from sdfg::passes::Pass.