docc 0.8.3 (0d44999b)
C++ API Reference
Loading...
Searching...
No Matches
gpu_offload_map_dispatcher.h
Go to the documentation of this file.
1#pragma once
2
3#include <string>
4#include <vector>
5
11
12namespace sdfg {
13namespace gpu {
14
24protected:
26 codegen::NestedCodeSnippetFactory& kernel_snippet_factory,
27 codegen::PrettyPrinter& kernel_source_stream,
28 codegen::PrettyPrinter& kernel_header_stream,
29 codegen::LanguageExtension& kernel_lang_ext,
30 symbolic::Symbol indvar,
31 std::vector<std::string>& scope_variables,
32 symbolic::Expression& num_iterations
33 ) override;
34
35public:
37 codegen::LanguageExtension& language_extension,
39 analysis::AnalysisManager& analysis_manager,
41 codegen::InstrumentationPlan& instrumentation_plan,
42 codegen::ArgCapturePlan& arg_capture_plan,
43 std::unique_ptr<GPUOffloadDispatcherStrategy> strategy
44 );
45};
46
47} // namespace gpu
48} // namespace sdfg
Definition structured_sdfg.h:30
Definition analysis.h:53
Definition arg_capture_plan.h:36
Definition instrumentation_plan.h:26
Definition language_extension.h:39
Used when we need to dispatch main SDFG elements into a subset of files (like offloaded kernels).
Definition code_snippet_factory.h:150
Definition utils.h:16
GPUOffloadBaseDispatcher(codegen::LanguageExtension &language_extension, StructuredSDFG &sdfg, analysis::AnalysisManager &analysis_manager, structured_control_flow::StructuredLoop &node, codegen::InstrumentationPlan &instrumentation_plan, codegen::ArgCapturePlan &arg_capture_plan, std::unique_ptr< GPUOffloadDispatcherStrategy > strategy)
void dispatch_kernel_body(codegen::NestedCodeSnippetFactory &kernel_snippet_factory, codegen::PrettyPrinter &kernel_source_stream, codegen::PrettyPrinter &kernel_header_stream, codegen::LanguageExtension &kernel_lang_ext, symbolic::Symbol indvar, std::vector< std::string > &scope_variables, symbolic::Expression &num_iterations) override
GPUOffloadMapDispatcher(codegen::LanguageExtension &language_extension, StructuredSDFG &sdfg, analysis::AnalysisManager &analysis_manager, structured_control_flow::Map &node, codegen::InstrumentationPlan &instrumentation_plan, codegen::ArgCapturePlan &arg_capture_plan, std::unique_ptr< GPUOffloadDispatcherStrategy > strategy)
Represents a parallel map loop with configurable scheduling.
Definition map.h:47
SymEngine::RCP< const SymEngine::Basic > Expression
Reference-counted pointer to a symbolic expression (SymEngine Basic).
Definition symbolic.h:83
SymEngine::RCP< const SymEngine::Symbol > Symbol
Reference-counted pointer to a SymEngine Symbol.
Definition symbolic.h:71
Definition cuda_arch.h:11
Definition analysis.h:7
Symbolic system for integer-based symbol analysis.