Go to the source code of this file.
Classes | |
struct | to_schedule |
Functions | |
void | prepare_clone (struct dfg_msu *msu) |
Find an ID and clean up data structures for an MSU. More... | |
struct dfg_msu * | clone_msu (int msu_id) |
Clone a msu of given ID. More... | |
int | unclone_msu (int msu_id) |
int | fix_all_route_ranges (struct dedos_dfg *dfg) |
int | schedule_msu (struct dfg_msu *msu, struct dfg_runtime *rt, struct dfg_msu **new_msus) |
Tries to place an MSU on a given runtime. More... | |
int | place_on_runtime (struct dfg_runtime *rt, struct dfg_msu *msu) |
Find a core on which to spawn a new thread for an MSU. More... | |
int | allocate (struct to_schedule *ts) |
int | init_scheduler (const char *policy) |
struct dfg_thread * | find_thread (struct dfg_msu *msu, struct dfg_runtime *runtime) |
uint64_t | compute_out_of_cut_bw (struct dfg_msu *msu, struct cut *c, const char *direction) |
int | greedy_policy (struct to_schedule *ts, struct dedos_dfg *dfg) |
int | set_edges (struct to_schedule *ts, struct dedos_dfg *dfg) |
int | set_msu_deadlines (struct to_schedule *ts, struct dedos_dfg *dfg) |
Variables | |
int(* | policy )(struct to_schedule *ts, struct dedos_dfg *dfg) |
int allocate | ( | struct to_schedule * | ts | ) |
struct dfg_msu* clone_msu | ( | int | msu_id | ) |
Clone a msu of given ID.
msu_id | id of the MSU to clone |
Definition at line 619 of file scheduling.c.
struct dfg_thread* find_thread | ( | struct dfg_msu * | msu, |
struct dfg_runtime * | runtime | ||
) |
int fix_all_route_ranges | ( | struct dedos_dfg * | dfg | ) |
Definition at line 179 of file scheduling.c.
int greedy_policy | ( | struct to_schedule * | ts, |
struct dedos_dfg * | dfg | ||
) |
int init_scheduler | ( | const char * | policy | ) |
int place_on_runtime | ( | struct dfg_runtime * | rt, |
struct dfg_msu * | msu | ||
) |
Find a core on which to spawn a new thread for an MSU.
dfg_runtime | the target runtime |
struct | dfg_msu_msu: the target MSU |
Definition at line 317 of file scheduling.c.
void prepare_clone | ( | struct dfg_msu * | msu | ) |
Find an ID and clean up data structures for an MSU.
dfg_msu | msu: target MSU |
Definition at line 260 of file scheduling.c.
int schedule_msu | ( | struct dfg_msu * | msu, |
struct dfg_runtime * | rt, | ||
struct dfg_msu ** | new_msus | ||
) |
Tries to place an MSU on a given runtime.
Will wire the MSU with all upstream and downstream MSU, enforcing locality constraints. Also, will spawn any missing dependency.
struct | dfg_msu msu: the target MSU |
struct | dfg_runtime: the target runtime |
Definition at line 710 of file scheduling.c.
int set_edges | ( | struct to_schedule * | ts, |
struct dedos_dfg * | dfg | ||
) |
int set_msu_deadlines | ( | struct to_schedule * | ts, |
struct dedos_dfg * | dfg | ||
) |
int unclone_msu | ( | int | msu_id | ) |
Definition at line 566 of file scheduling.c.
int(* policy)(struct to_schedule *ts, struct dedos_dfg *dfg) |
Definition at line 39 of file scheduling.h.