docc 0.8.3 (0d44999b)
C++ API Reference
Loading...
Searching...
No Matches
gpu_nested_parallelization_pass.h
Go to the documentation of this file.
1#pragma once
2
3#include <vector>
4#include "sdfg/passes/pass.h"
6
7namespace sdfg {
8namespace passes {
9
10enum class GPUTarget {
13};
14
24private:
25 const std::vector<structured_control_flow::StructuredLoop*>& loops_;
26 GPUTarget target_;
27 size_t block_size_;
28
29public:
31 const std::vector<structured_control_flow::StructuredLoop*>& loops, GPUTarget target, size_t block_size
32 );
33 ~GPUNestedParallelizationPass() override = default;
34
36
37 std::string name() override {
38 return "GPUNestedParallelizationPass";
39 }
40};
41
42} // namespace passes
43} // 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
std::string name() override
Definition gpu_nested_parallelization_pass.h:37
bool run_pass(builder::StructuredSDFGBuilder &builder, analysis::AnalysisManager &analysis_manager) override
GPUNestedParallelizationPass(const std::vector< structured_control_flow::StructuredLoop * > &loops, GPUTarget target, size_t block_size)
Definition function_builder.h:10
Definition approximate_math.h:12
GPUTarget
Definition gpu_nested_parallelization_pass.h:10
@ ROCM
Definition gpu_nested_parallelization_pass.h:12
@ CUDA
Definition gpu_nested_parallelization_pass.h:11
Definition analysis.h:7