#include <sdfg/passes/scheduler/vectorize_scheduler.h>
|
| SchedulerAction | find (builder::StructuredSDFGBuilder &builder, analysis::AnalysisManager &analysis_manager, structured_control_flow::StructuredLoop &loop, bool offload_unknown_sizes=false) override |
| | Phase 1: Determine the action for a loop during loop discovery.
|
| SchedulerAction | find (builder::StructuredSDFGBuilder &builder, analysis::AnalysisManager &analysis_manager, structured_control_flow::While &loop, bool offload_unknown_sizes=false) override |
| bool | can_apply_schedule (builder::StructuredSDFGBuilder &builder, analysis::AnalysisManager &analysis_manager, structured_control_flow::StructuredLoop &loop, bool offload_unknown_sizes=false) override |
| | Check if the scheduling transform can be applied to a loop.
|
| void | apply_schedule (builder::StructuredSDFGBuilder &builder, analysis::AnalysisManager &analysis_manager, structured_control_flow::StructuredLoop &loop, bool offload_unknown_sizes=false) override |
| | Apply the scheduling transform to a single loop.
|
| std::unordered_set< ScheduleTypeCategory > | compatible_types () override |
| virtual | ~LoopScheduler ()=default |
| virtual void | pre_schedule (builder::StructuredSDFGBuilder &builder, analysis::AnalysisManager &analysis_manager, std::vector< structured_control_flow::StructuredLoop * > &applicable_loops) |
| | Pre-scheduling phase: collapse and cleanup on the applicable loops.
|
| virtual bool | post_schedule (builder::StructuredSDFGBuilder &builder, analysis::AnalysisManager &analysis_manager, std::vector< structured_control_flow::StructuredLoop * > &scheduled_loops) |
| | Post-scheduling phase: additional transforms on the scheduled loops.
|
| virtual void | set_report (PassReportConsumer *report) |
| virtual void | set_recorder (transformations::Recorder *recorder) |
| | Attach an optional Recorder that captures each scheduling transform applied via apply_schedule as a replayable descriptor.
|
◆ apply_schedule()
◆ can_apply_schedule()
Check if the scheduling transform can be applied to a loop.
Called after pre_schedule. Used to filter the applicable loops before applying.
Implements sdfg::passes::scheduler::LoopScheduler.
◆ compatible_types()
| std::unordered_set< ScheduleTypeCategory > sdfg::passes::scheduler::VectorizeScheduler::compatible_types |
( |
| ) |
|
|
overridevirtual |
◆ find() [1/2]
Phase 1: Determine the action for a loop during loop discovery.
Returns NEXT if the loop should be scheduled (added to the applicable set), CHILDREN if the scheduler should descend into child loops instead, or SKIP if the loop already carries a non-None schedule and must be left untouched (neither scheduled nor traversed into).
Implements sdfg::passes::scheduler::LoopScheduler.
◆ find() [2/2]
◆ target()
| std::string sdfg::passes::scheduler::VectorizeScheduler::target |
( |
| ) |
|
|
inlinestatic |
The documentation for this class was generated from the following file: