Module tange::scheduler

source ·
Expand description

Contains Scheduler trait definition and implementations Contains all the runtimes scheduling Graphs for execution.

Structs

GreedyScheduler is the recommend scheduler for Tange-Core. After computing the DAG from the Graph, it uses a priority heap to determine which task to execute next, biasing toward reduction. That is, joins are preferred over an apply since it reduces the number of thunks by one. Inputs are preferred last.
LeveledScheduler computes sets of mutually exclusive tasks that can be run concurrently. Unlike GreedyScheduler, which will immediately consume the next available task regardless of level, LeveledScheduler will wait for an entire level to finish computation before moving to the next one.

Traits

Defines the Scheduler object. Schedulers take in Graphs and return the result of their computation.