Managed reference to TaskSchedulerNode.
More...
#include <task_scheduler.h>
|
static TaskScheduler | RoundRobin (Array< TuneContext > tasks, Builder builder, Runner runner, Optional< Database > database, Optional< CostModel > cost_model, Optional< Array< MeasureCallback >> measure_callbacks, int max_trials, PackedFunc logging_func) |
| Create a task scheduler that fetches tasks in a round-robin fashion. More...
|
|
static TaskScheduler | GradientBased (Array< TuneContext > tasks, Array< FloatImm > task_weights, Builder builder, Runner runner, Optional< Database > database, Optional< CostModel > cost_model, Optional< Array< MeasureCallback >> measure_callbacks, int max_trials, PackedFunc logging_func, double alpha, int window_size, support::LinearCongruentialEngine::TRandState seed) |
| Create a task scheduler that fetches tasks in a gradient based fashion. More...
|
|
static TaskScheduler | PyTaskScheduler (Array< TuneContext > tasks, Builder builder, Runner runner, Optional< Database > database, Optional< CostModel > cost_model, Optional< Array< MeasureCallback >> measure_callbacks, int max_trials, PackedFunc logging_func, PyTaskSchedulerNode::FTune f_tune, PyTaskSchedulerNode::FInitializeTask f_initialize_task, PyTaskSchedulerNode::FTouchTask f_touch_task, PyTaskSchedulerNode::FJoinRunningTask f_join_running_task, PyTaskSchedulerNode::FNextTaskId f_next_task_id) |
| Create a task scheduler with customized methods on the python-side. More...
|
|
◆ GradientBased()
static TaskScheduler tvm::meta_schedule::TaskScheduler::GradientBased |
( |
Array< TuneContext > |
tasks, |
|
|
Array< FloatImm > |
task_weights, |
|
|
Builder |
builder, |
|
|
Runner |
runner, |
|
|
Optional< Database > |
database, |
|
|
Optional< CostModel > |
cost_model, |
|
|
Optional< Array< MeasureCallback >> |
measure_callbacks, |
|
|
int |
max_trials, |
|
|
PackedFunc |
logging_func, |
|
|
double |
alpha, |
|
|
int |
window_size, |
|
|
support::LinearCongruentialEngine::TRandState |
seed |
|
) |
| |
|
static |
Create a task scheduler that fetches tasks in a gradient based fashion.
- Parameters
-
tasks | The tasks to be tuned. |
task_weights | The weights of each task. |
builder | The builder of the scheduler. |
runner | The runner of the scheduler. |
database | The database of the scheduler. |
max_trials | The maximum number of trials. |
cost_model | The cost model of the scheduler. |
measure_callbacks | The measure callbacks of the scheduler. |
logging_func | The tuning task's logging function. |
alpha | The parameter alpha to control gradient computation. |
window_size | The parameter to control backward window size. |
seed | The random seed. |
- Returns
- The task scheduler created.
◆ PyTaskScheduler()
static TaskScheduler tvm::meta_schedule::TaskScheduler::PyTaskScheduler |
( |
Array< TuneContext > |
tasks, |
|
|
Builder |
builder, |
|
|
Runner |
runner, |
|
|
Optional< Database > |
database, |
|
|
Optional< CostModel > |
cost_model, |
|
|
Optional< Array< MeasureCallback >> |
measure_callbacks, |
|
|
int |
max_trials, |
|
|
PackedFunc |
logging_func, |
|
|
PyTaskSchedulerNode::FTune |
f_tune, |
|
|
PyTaskSchedulerNode::FInitializeTask |
f_initialize_task, |
|
|
PyTaskSchedulerNode::FTouchTask |
f_touch_task, |
|
|
PyTaskSchedulerNode::FJoinRunningTask |
f_join_running_task, |
|
|
PyTaskSchedulerNode::FNextTaskId |
f_next_task_id |
|
) |
| |
|
static |
Create a task scheduler with customized methods on the python-side.
- Parameters
-
tasks | The tasks to be tuned. |
builder | The builder of the scheduler. |
runner | The runner of the scheduler. |
database | The database of the scheduler. |
max_trials | The maximum number of trials. |
cost_model | The cost model of the scheduler. |
measure_callbacks | The measure callbacks of the scheduler. |
logging_func | The tuning task's logging function. |
f_tune | The packed function of Tune . |
f_initialize_task | The packed function of InitializeTask . |
f_touch_task | The packed function of TouchTask . |
f_join_running_task | The packed function of JoinRunningTask . |
f_next_task_id | The packed function of NextTaskId . |
- Returns
- The task scheduler created.
◆ RoundRobin()
Create a task scheduler that fetches tasks in a round-robin fashion.
- Parameters
-
tasks | The tasks to be tuned. |
builder | The builder of the scheduler. |
runner | The runner of the scheduler. |
database | The database of the scheduler. |
max_trials | The maximum number of trials. |
cost_model | The cost model of the scheduler. |
measure_callbacks | The measure callbacks of the scheduler. |
logging_func | The tuning task's logging function. |
- Returns
- The task scheduler created.
◆ TVM_DEFINE_MUTABLE_NOTNULLABLE_OBJECT_REF_METHODS()
The documentation for this class was generated from the following file: