19 #ifndef TVM_META_SCHEDULE_TASK_SCHEDULER_H_
20 #define TVM_META_SCHEDULE_TASK_SCHEDULER_H_
22 #include <tvm/ffi/container/array.h>
23 #include <tvm/ffi/function.h>
24 #include <tvm/ffi/optional.h>
25 #include <tvm/ffi/reflection/registry.h>
38 namespace meta_schedule {
65 refl::ObjectDef<TaskRecordNode>()
77 static constexpr
const char*
_type_key =
"meta_schedule.TaskRecord";
149 refl::ObjectDef<TaskSchedulerNode>()
181 virtual void Tune(Array<TuneContext> tasks,
182 Array<FloatImm> task_weights,
183 int max_trials_global,
184 int max_trials_per_task,
185 int num_trials_per_iter,
188 Array<MeasureCallback> measure_callbacks,
189 Optional<Database> database,
190 Optional<CostModel> cost_model);
204 static constexpr
const char*
_type_key =
"meta_schedule.TaskScheduler";
224 using FTune = ffi::TypedFunction<void(Array<TuneContext> tasks,
225 Array<FloatImm> task_weights,
226 int max_trials_global,
227 int max_trials_per_task,
228 int num_trials_per_iter,
231 Array<MeasureCallback> measure_callbacks,
232 Optional<Database> database,
233 Optional<CostModel> cost_model)>;
244 refl::ObjectDef<PyTaskSchedulerNode>();
250 int max_trials_per_task,
int num_trials_per_iter,
Builder builder,
Runner runner,
254 static constexpr const
char*
_type_key = "meta_schedule.PyTaskScheduler";
Managed reference class to FloatImmNode.
Definition: expr.h:557
Managed reference to TuneContextNode.
Definition: tune_context.h:98
int64_t TRandState
Definition: random_engine.h:46
Definition: repr_printer.h:91
Performance counters for profiling via the PAPI library.
Definition: analyzer.h:37
A managed object in the TVM runtime.
Random number generator. It provides a generic interface consistent with std::uniform_random_bit_gene...