Loading...
Searching...
No Matches
AutoSchedule.h
Go to the documentation of this file.
#ifndef AUTO_SCHEDULE_H
#define AUTO_SCHEDULE_H
#include <random>
#include <vector>
#include "CostModel.h"
#include "Featurization.h"
#include "FunctionDAG.h"
#include "Halide.h"
#include "PerfectHashMap.h"
#include "SearchSpace.h"
#include "State.h"
namespace Halide {
namespace Internal {
namespace Autoscheduler {
typedef PerfectHashMap<FunctionDAG::Node::Stage, ScheduleFeatures> StageMapOfScheduleFeatures;
void find_and_apply_schedule(FunctionDAG &dag,
const std::vector<Function> &outputs,
const Anderson2021Params &params,
const Target &target,
CostModel *cost_model,
int beam_size,
StageMapOfScheduleFeatures *schedule_features);
} // namespace Autoscheduler
} // namespace Internal
} // namespace Halide
#endif // AUTO_SCHEDULE_H
PerfectHashMap.h
SearchSpace.h
CostModel.h
Featurization.h
FunctionDAG.h
State.h
Halide::CostModel
Definition CostModel.h:61
Halide::Internal::Autoscheduler
Definition AutoSchedule.h:10
Halide::Internal::Autoscheduler::find_and_apply_schedule
void find_and_apply_schedule(FunctionDAG &dag, const std::vector< Function > &outputs, const Adams2019Params &params, CostModel *cost_model, int beam_size, StageMapOfScheduleFeatures *schedule_features)
Halide::Internal::Autoscheduler::StageMapOfScheduleFeatures
PerfectHashMap< FunctionDAG::Node::Stage, ScheduleFeatures > StageMapOfScheduleFeatures
Definition AutoSchedule.h:12
Halide::Internal
Definition AbstractGenerator.h:24
Halide
This file defines the class FunctionDAG, which is our representation of a Halide pipeline,...
Definition AbstractGenerator.h:19
Halide::Internal::Autoscheduler::Anderson2021Params
Definition CostModel.h:18
Halide::Internal::Autoscheduler::FunctionDAG
Definition FunctionDAG.h:367
Halide::Target
A struct representing a target machine and os to generate code for.
Definition Target.h:19