Loading...
Searching...
No Matches
sc_hypervisor_policy.h File Reference
`#include <sc_hypervisor.h>`

Go to the source code of this file.

## Data Structures

struct | types_of_workers
struct | sc_hypervisor_policy_task_pool

## Macros

#define | HYPERVISOR_REDIM_SAMPLE
#define | HYPERVISOR_START_REDIM_SAMPLE
#define | SC_NOTHING
#define | SC_IDLE
#define | SC_SPEED

## Functions

void | sc_hypervisor_policy_add_task_to_pool (struct starpu_codelet *cl, unsigned sched_ctx, uint32_t footprint, struct sc_hypervisor_policy_task_pool **task_pools, size_t data_size)
void | sc_hypervisor_policy_remove_task_from_pool (struct starpu_task *task, uint32_t footprint, struct sc_hypervisor_policy_task_pool **task_pools)
struct sc_hypervisor_policy_task_pool * | sc_hypervisor_policy_clone_task_pool (struct sc_hypervisor_policy_task_pool *tp)
void | sc_hypervisor_get_tasks_times (int nw, int nt, double times[nw][nt], int *workers, unsigned size_ctxs, struct sc_hypervisor_policy_task_pool *task_pools)
unsigned | sc_hypervisor_find_lowest_prio_sched_ctx (unsigned req_sched_ctx, int nworkers_to_move)
int * | sc_hypervisor_get_idlest_workers (unsigned sched_ctx, int *nworkers, enum starpu_worker_archtype arch)
int * | sc_hypervisor_get_idlest_workers_in_list (int *start, int *workers, int nall_workers, int *nworkers, enum starpu_worker_archtype arch)
int | sc_hypervisor_get_movable_nworkers (struct sc_hypervisor_policy_config *config, unsigned sched_ctx, enum starpu_worker_archtype arch)
int | sc_hypervisor_compute_nworkers_to_move (unsigned req_sched_ctx)
unsigned | sc_hypervisor_policy_resize (unsigned sender_sched_ctx, unsigned receiver_sched_ctx, unsigned force_resize, unsigned now)
unsigned | sc_hypervisor_policy_resize_to_unknown_receiver (unsigned sender_sched_ctx, unsigned now)
double | sc_hypervisor_get_ctx_speed (struct sc_hypervisor_wrapper *sc_w)
double | sc_hypervisor_get_slowest_ctx_exec_time (void)
double | sc_hypervisor_get_fastest_ctx_exec_time (void)
double | sc_hypervisor_get_speed_per_worker (struct sc_hypervisor_wrapper *sc_w, unsigned worker)
double | sc_hypervisor_get_speed_per_worker_type (struct sc_hypervisor_wrapper *sc_w, enum starpu_worker_archtype arch)
double | sc_hypervisor_get_ref_speed_per_worker_type (struct sc_hypervisor_wrapper *sc_w, enum starpu_worker_archtype arch)
double | sc_hypervisor_get_avg_speed (enum starpu_worker_archtype arch)
void | sc_hypervisor_check_if_consider_max (struct types_of_workers *tw)
void | sc_hypervisor_group_workers_by_type (struct types_of_workers *tw, int *total_nw)
enum starpu_worker_archtype | sc_hypervisor_get_arch_for_index (unsigned w, struct types_of_workers *tw)
unsigned | sc_hypervisor_get_index_for_arch (enum starpu_worker_archtype arch, struct types_of_workers *tw)
unsigned | sc_hypervisor_criteria_fulfilled (unsigned sched_ctx, int worker)
unsigned | sc_hypervisor_check_idle (unsigned sched_ctx, int worker)
unsigned | sc_hypervisor_check_speed_gap_btw_ctxs (unsigned *sched_ctxs, int nsched_ctxs, int *workers, int nworkers)
unsigned | sc_hypervisor_check_speed_gap_btw_ctxs_on_level (int level, int *workers_in, int nworkers_in, unsigned father_sched_ctx_id, unsigned **sched_ctxs, int *nsched_ctxs)
unsigned | sc_hypervisor_get_resize_criteria (void)
struct types_of_workers * | sc_hypervisor_get_types_of_workers (int *workers, unsigned nworkers)