docc 0.8.3 (0d44999b)
C++ API Reference
Loading...
Searching...
No Matches
gpu_offload_nested_loop.h
Go to the documentation of this file.
1#pragma once
2
9
10namespace sdfg {
11namespace transformations {
12
13template<typename GPUType>
15 gpu::TargetLevel target_level_;
17 symbolic::Integer parallel_size_;
18
19public:
22 );
23
24 virtual std::string name() const override;
25
26 virtual bool
28
29 virtual void apply(builder::StructuredSDFGBuilder& builder, analysis::AnalysisManager& analysis_manager) override;
30
31 virtual void to_json(nlohmann::json& j) const override;
32
34};
35
36
37} // namespace transformations
38} // namespace sdfg
Definition analysis.h:53
Note: Even though the class references unique_ptr, it will never delete an SDFG it has a reference to...
Definition structured_sdfg_builder.h:44
Base class for structured loop constructs.
Definition structured_loop.h:244
virtual std::string name() const override
Get the name of this transformation.
virtual bool can_be_applied(builder::StructuredSDFGBuilder &builder, analysis::AnalysisManager &analysis_manager) override
Check if this transformation can be safely applied.
virtual void apply(builder::StructuredSDFGBuilder &builder, analysis::AnalysisManager &analysis_manager) override
Apply this transformation to the SDFG.
GPUOffloadNestedLoop(structured_control_flow::StructuredLoop &loop, gpu::TargetLevel target_level, symbolic::Integer parallel_size)
virtual void to_json(nlohmann::json &j) const override
Serialize this transformation to JSON.
static GPUOffloadNestedLoop< GPUType > from_json(builder::StructuredSDFGBuilder &builder, const nlohmann::json &j)
Base class for all SDFG transformations.
Definition transformation.h:25
SymEngine::RCP< const SymEngine::Integer > Integer
Reference-counted pointer to a SymEngine Integer constant.
Definition symbolic.h:77
Definition function_builder.h:10
TargetLevel
Definition gpu_offload_schedule_type.h:13
Definition loop_parallelization.h:8
Definition analysis.h:7
Symbolic system for integer-based symbol analysis.