|
StarPU Handbook - StarPU Language Bindings
|
This is the interface for the heteroprio scheduler. More...
Macros | |
| #define | STARPU_HETEROPRIO_MAX_PREFETCH |
| #define | STARPU_AUTOHETEROPRIO_PRIORITY_ORDERING_POLICY_COUNT |
Enumerations | |
| enum | starpu_autoheteroprio_priority_ordering_policy { STARPU_HETEROPRIO_NOD_TIME_COMBINATION , STARPU_HETEROPRIO_BEST_NODS_SCORE , STARPU_HETEROPRIO_BEST_NODS , STARPU_HETEROPRIO_URT_PURE , STARPU_HETEROPRIO_URT , STARPU_HETEROPRIO_URT_2 , STARPU_HETEROPRIO_URT_DOT_DIFF_PURE , STARPU_HETEROPRIO_URT_DOT_DIFF_PURE_2 , STARPU_HETEROPRIO_URT_DOT_REL_DIFF_PURE , STARPU_HETEROPRIO_URT_DOT_REL_DIFF_PURE_2 , STARPU_HETEROPRIO_URT_DOT_DIFF_2 , STARPU_HETEROPRIO_URT_DOT_DIFF_3 , STARPU_HETEROPRIO_URT_DOT_DIFF_4 , STARPU_HETEROPRIO_URT_DOT_DIFF_5 , STARPU_HETEROPRIO_URT_DOT_DIFF_6 , STARPU_HETEROPRIO_URT_DOT_DIFF_7 , STARPU_HETEROPRIO_URT_DOT_DIFF_8 , STARPU_HETEROPRIO_URT_DOT_DIFF_9 , STARPU_HETEROPRIO_URT_DOT_DIFF_10 , STARPU_HETEROPRIO_URT_DOT_DIFF_11 , STARPU_HETEROPRIO_URTS_PER_SECONDS , STARPU_HETEROPRIO_URTS_PER_SECONDS_2 , STARPU_HETEROPRIO_URTS_PER_SECONDS_DIFF , STARPU_HETEROPRIO_URTS_TIME_RELEASED_DIFF , STARPU_HETEROPRIO_URTS_TIME_COMBINATION , STARPU_HETEROPRIO_NODS_PER_SECOND , STARPU_HETEROPRIO_NODS_TIME_RELEASED , STARPU_HETEROPRIO_NODS_TIME_RELEASED_DIFF } |
Functions | |
| void | starpu_heteroprio_set_use_locality (unsigned sched_ctx_id, unsigned use_locality) |
| void | starpu_heteroprio_set_nb_prios (unsigned sched_ctx_id, enum starpu_worker_archtype arch, unsigned max_prio) |
| void | starpu_heteroprio_set_mapping (unsigned sched_ctx_id, enum starpu_worker_archtype arch, unsigned source_prio, unsigned dest_bucket_id) |
| void | starpu_heteroprio_set_faster_arch (unsigned sched_ctx_id, enum starpu_worker_archtype arch, unsigned bucket_id) |
| void | starpu_heteroprio_set_arch_slow_factor (unsigned sched_ctx_id, enum starpu_worker_archtype arch, unsigned bucket_id, float slow_factor) |
| void | starpu_heteroprio_map_wgroup_memory_nodes (unsigned sched_ctx_id) |
| void | starpu_heteroprio_print_wgroups (FILE *stream, unsigned sched_ctx_id) |
Variables | |
| static const char | starpu_autoheteroprio_priority_ordering_policy_names [STARPU_AUTOHETEROPRIO_PRIORITY_ORDERING_POLICY_COUNT][64] |
This is the interface for the heteroprio scheduler.
| void starpu_heteroprio_set_use_locality | ( | unsigned | sched_ctx_id, |
| unsigned | use_locality | ||
| ) |
Set if heteroprio should use data locality or not
| void starpu_heteroprio_set_nb_prios | ( | unsigned | sched_ctx_id, |
| enum starpu_worker_archtype | arch, | ||
| unsigned | max_prio | ||
| ) |
Tell how many prio there are for a given arch
| void starpu_heteroprio_set_mapping | ( | unsigned | sched_ctx_id, |
| enum starpu_worker_archtype | arch, | ||
| unsigned | source_prio, | ||
| unsigned | dest_bucket_id | ||
| ) |
Set the mapping for a given arch prio=>bucket
| void starpu_heteroprio_set_faster_arch | ( | unsigned | sched_ctx_id, |
| enum starpu_worker_archtype | arch, | ||
| unsigned | bucket_id | ||
| ) |
Tell which arch is the faster for the tasks of a bucket (optional)
| void starpu_heteroprio_set_arch_slow_factor | ( | unsigned | sched_ctx_id, |
| enum starpu_worker_archtype | arch, | ||
| unsigned | bucket_id, | ||
| float | slow_factor | ||
| ) |
Tell how slow is a arch for the tasks of a bucket (optional)
| void starpu_heteroprio_map_wgroup_memory_nodes | ( | unsigned | sched_ctx_id | ) |
One memory node will be one wgroup
| void starpu_heteroprio_print_wgroups | ( | FILE * | stream, |
| unsigned | sched_ctx_id | ||
| ) |
Print the current setup groups