19 #ifndef TVM_META_SCHEDULE_SEARCH_STRATEGY_H_ 20 #define TVM_META_SCHEDULE_SEARCH_STRATEGY_H_ 27 namespace meta_schedule {
41 v->Visit(
"sch", &sch);
42 v->Visit(
"args_info", &args_info);
45 static constexpr
const char*
_type_key =
"meta_schedule.MeasureCandidate";
110 virtual void InitializeWithTuneContext(
const TuneContext& tune_context) = 0;
126 virtual void PostTuning() = 0;
140 static constexpr
const char*
_type_key =
"meta_schedule.SearchStrategy";
190 ICHECK(f_initialize_with_tune_context !=
nullptr)
191 <<
"PySearchStrategy's InitializeWithTuneContext method not implemented!";
192 this->f_initialize_with_tune_context(context);
196 ICHECK(f_pre_tuning !=
nullptr) <<
"PySearchStrategy's PreTuning method not implemented!";
197 this->f_pre_tuning(design_spaces);
201 ICHECK(f_post_tuning !=
nullptr) <<
"PySearchStrategy's PostTuning method not implemented!";
202 this->f_post_tuning();
206 ICHECK(f_generate_measure_candidates !=
nullptr)
207 <<
"PySearchStrategy's GenerateMeasureCandidates method not implemented!";
208 return this->f_generate_measure_candidates();
212 ICHECK(f_notify_runner_results !=
nullptr)
213 <<
"PySearchStrategy's NotifyRunnerResults method not implemented!";
214 this->f_notify_runner_results(results);
217 static constexpr
const char*
_type_key =
"meta_schedule.PySearchStrategy";
248 TVM_DLL
static SearchStrategy ReplayTrace(
int num_trials_per_iter,
int num_trials_total);
256 #endif // TVM_META_SCHEDULE_SEARCH_STRATEGY_H_
Performance counters for profiling via the PAPI library.
Definition: analyzer.h:36
base class of all object containers.
Definition: object.h:165
#define TVM_DEFINE_MUTABLE_OBJECT_REF_METHODS(TypeName, ParentType, ObjectName)
Definition: object.h:737
Managed reference to ScheduleNode.
Definition: schedule.h:461
Managed reference to TuneContextNode.
Definition: tune_context.h:76
Visitor class to get the attributes of an AST/IR node. The content is going to be called for each fie...
Definition: reflection.h:52
Array, container representing a contiguous sequence of ObjectRefs.
Definition: array.h:270
Base class of all object reference.
Definition: object.h:504
Optional container that to represent to a Nullable variant of T.
Definition: optional.h:51
#define TVM_DECLARE_BASE_OBJECT_INFO(TypeName, ParentType)
helper macro to declare a base object type that can be inherited.
Definition: object.h:641
#define TVM_DEFINE_NOTNULLABLE_OBJECT_REF_METHODS(TypeName, ParentType, ObjectName)
Definition: object.h:721