Halide 19.0.0
Halide compiler and libraries
Loading...
Searching...
No Matches
AutoSchedule.h
Go to the documentation of this file.
1#ifndef AUTO_SCHEDULE_H
2#define AUTO_SCHEDULE_H
3
4#include <random>
5#include <vector>
6
7#include "CostModel.h"
8#include "Featurization.h"
9#include "FunctionDAG.h"
10#include "Halide.h"
11#include "PerfectHashMap.h"
12#include "SearchSpace.h"
13#include "State.h"
14
15namespace Halide {
16namespace Internal {
17namespace Autoscheduler {
18
20
22 const std::vector<Function> &outputs,
23 const Anderson2021Params &params,
24 const Target &target,
25 CostModel *cost_model,
26 int beam_size,
27 StageMapOfScheduleFeatures *schedule_features);
28
29} // namespace Autoscheduler
30} // namespace Internal
31} // namespace Halide
32
33#endif // AUTO_SCHEDULE_H
void find_and_apply_schedule(FunctionDAG &dag, const std::vector< Function > &outputs, const Adams2019Params &params, CostModel *cost_model, int beam_size, StageMapOfScheduleFeatures *schedule_features)
PerfectHashMap< FunctionDAG::Node::Stage, ScheduleFeatures > StageMapOfScheduleFeatures
This file defines the class FunctionDAG, which is our representation of a Halide pipeline,...
@ Internal
Not visible externally, similar to 'static' linkage in C.
A struct representing a target machine and os to generate code for.
Definition Target.h:19