Loading...
Searching...
No Matches
starpu_perf_steering.h
Go to the documentation of this file.
/* StarPU --- Runtime system for heterogeneous multicore architectures.
*
* Copyright (C) 2019-2025 University of Bordeaux, CNRS (LaBRI UMR 5800), Inria
*
* StarPU is free software; you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation; either version 2.1 of the License, or (at
* your option) any later version.
*
* StarPU is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
*
* See the GNU Lesser General Public License in COPYING.LGPL for more details.
*/
#include <starpu.h>
#ifndef __STARPU_PERF_STEERING_H__
#define __STARPU_PERF_STEERING_H__
#ifdef __cplusplus
extern "C" {
#endif
enum starpu_perf_knob_scope
{
starpu_perf_knob_scope_undefined = 0,
starpu_perf_knob_scope_global = 1,
starpu_perf_knob_scope_per_worker = 3,
starpu_perf_knob_scope_per_scheduler = 5
};
enum starpu_perf_knob_type
{
starpu_perf_knob_type_undefined = 0,
starpu_perf_knob_type_int32 = 1,
starpu_perf_knob_type_int64 = 2,
starpu_perf_knob_type_float = 3,
starpu_perf_knob_type_double = 4
};
int starpu_perf_knob_scope_name_to_id(const char *name);
const char *starpu_perf_knob_scope_id_to_name(enum starpu_perf_knob_scope scope);
int starpu_perf_knob_type_name_to_id(const char *name);
const char *starpu_perf_knob_type_id_to_name(enum starpu_perf_knob_type type);
int starpu_perf_knob_nb(enum starpu_perf_knob_scope scope);
int starpu_perf_knob_name_to_id(enum starpu_perf_knob_scope scope, const char *name);
int starpu_perf_knob_nth_to_id(enum starpu_perf_knob_scope scope, int nth);
const char *starpu_perf_knob_id_to_name(int id);
int starpu_perf_knob_get_type_id(int id);
const char *starpu_perf_knob_get_help_string(int id);
void starpu_perf_knob_list_avail(enum starpu_perf_knob_scope scope);
void starpu_perf_knob_list_all_avail(void);
int32_t starpu_perf_knob_get_global_int32_value(const int knob_id);
int64_t starpu_perf_knob_get_global_int64_value(const int knob_id);
float starpu_perf_knob_get_global_float_value(const int knob_id);
double starpu_perf_knob_get_global_double_value(const int knob_id);
void starpu_perf_knob_set_global_int32_value(const int knob_id, int32_t new_value);
void starpu_perf_knob_set_global_int64_value(const int knob_id, int64_t new_value);
void starpu_perf_knob_set_global_float_value(const int knob_id, float new_value);
void starpu_perf_knob_set_global_double_value(const int knob_id, double new_value);
int32_t starpu_perf_knob_get_per_worker_int32_value(const int knob_id, unsigned workerid);
int64_t starpu_perf_knob_get_per_worker_int64_value(const int knob_id, unsigned workerid);
float starpu_perf_knob_get_per_worker_float_value(const int knob_id, unsigned workerid);
double starpu_perf_knob_get_per_worker_double_value(const int knob_id, unsigned workerid);
void starpu_perf_knob_set_per_worker_int32_value(const int knob_id, unsigned workerid, int32_t new_value);
void starpu_perf_knob_set_per_worker_int64_value(const int knob_id, unsigned workerid, int64_t new_value);
void starpu_perf_knob_set_per_worker_float_value(const int knob_id, unsigned workerid, float new_value);
void starpu_perf_knob_set_per_worker_double_value(const int knob_id, unsigned workerid, double new_value);
int32_t starpu_perf_knob_get_per_scheduler_int32_value(const int knob_id, const char *sched_policy_name);
int64_t starpu_perf_knob_get_per_scheduler_int64_value(const int knob_id, const char *sched_policy_name);
float starpu_perf_knob_get_per_scheduler_float_value(const int knob_id, const char *sched_policy_name);
double starpu_perf_knob_get_per_scheduler_double_value(const int knob_id, const char *sched_policy_name);
void starpu_perf_knob_set_per_scheduler_int32_value(const int knob_id, const char *sched_policy_name, int32_t new_value);
void starpu_perf_knob_set_per_scheduler_int64_value(const int knob_id, const char *sched_policy_name, int64_t new_value);
void starpu_perf_knob_set_per_scheduler_float_value(const int knob_id, const char *sched_policy_name, float new_value);
void starpu_perf_knob_set_per_scheduler_double_value(const int knob_id, const char *sched_policy_name, double new_value);
#ifdef __cplusplus
}
#endif
#endif /* __STARPU_PERF_STEERING_H__ */
starpu_perf_knob_list_all_avail
void starpu_perf_knob_list_all_avail(void)
starpu_perf_knob_get_global_int64_value
int64_t starpu_perf_knob_get_global_int64_value(const int knob_id)
starpu_perf_knob_set_global_float_value
void starpu_perf_knob_set_global_float_value(const int knob_id, float new_value)
starpu_perf_knob_set_per_scheduler_int64_value
void starpu_perf_knob_set_per_scheduler_int64_value(const int knob_id, const char *sched_policy_name, int64_t new_value)
starpu_perf_knob_get_per_scheduler_float_value
float starpu_perf_knob_get_per_scheduler_float_value(const int knob_id, const char *sched_policy_name)
starpu_perf_knob_set_global_int64_value
void starpu_perf_knob_set_global_int64_value(const int knob_id, int64_t new_value)
starpu_perf_knob_get_per_worker_int64_value
int64_t starpu_perf_knob_get_per_worker_int64_value(const int knob_id, unsigned workerid)
starpu_perf_knob_get_per_scheduler_int32_value
int32_t starpu_perf_knob_get_per_scheduler_int32_value(const int knob_id, const char *sched_policy_name)
starpu_perf_knob_get_global_int32_value
int32_t starpu_perf_knob_get_global_int32_value(const int knob_id)
starpu_perf_knob_set_per_worker_double_value
void starpu_perf_knob_set_per_worker_double_value(const int knob_id, unsigned workerid, double new_value)
starpu_perf_knob_get_per_worker_float_value
float starpu_perf_knob_get_per_worker_float_value(const int knob_id, unsigned workerid)
starpu_perf_knob_get_per_worker_double_value
double starpu_perf_knob_get_per_worker_double_value(const int knob_id, unsigned workerid)
starpu_perf_knob_get_help_string
const char * starpu_perf_knob_get_help_string(int id)
starpu_perf_knob_name_to_id
int starpu_perf_knob_name_to_id(enum starpu_perf_knob_scope scope, const char *name)
starpu_perf_knob_get_type_id
int starpu_perf_knob_get_type_id(int id)
starpu_perf_knob_set_global_int32_value
void starpu_perf_knob_set_global_int32_value(const int knob_id, int32_t new_value)
starpu_perf_knob_set_per_worker_int64_value
void starpu_perf_knob_set_per_worker_int64_value(const int knob_id, unsigned workerid, int64_t new_value)
starpu_perf_knob_set_per_scheduler_int32_value
void starpu_perf_knob_set_per_scheduler_int32_value(const int knob_id, const char *sched_policy_name, int32_t new_value)
starpu_perf_knob_nth_to_id
int starpu_perf_knob_nth_to_id(enum starpu_perf_knob_scope scope, int nth)
starpu_perf_knob_scope_id_to_name
const char * starpu_perf_knob_scope_id_to_name(enum starpu_perf_knob_scope scope)
starpu_perf_knob_set_per_worker_int32_value
void starpu_perf_knob_set_per_worker_int32_value(const int knob_id, unsigned workerid, int32_t new_value)
starpu_perf_knob_type_id_to_name
const char * starpu_perf_knob_type_id_to_name(enum starpu_perf_knob_type type)
starpu_perf_knob_scope_name_to_id
int starpu_perf_knob_scope_name_to_id(const char *name)
starpu_perf_knob_get_global_double_value
double starpu_perf_knob_get_global_double_value(const int knob_id)
starpu_perf_knob_set_global_double_value
void starpu_perf_knob_set_global_double_value(const int knob_id, double new_value)
starpu_perf_knob_set_per_scheduler_double_value
void starpu_perf_knob_set_per_scheduler_double_value(const int knob_id, const char *sched_policy_name, double new_value)
starpu_perf_knob_list_avail
void starpu_perf_knob_list_avail(enum starpu_perf_knob_scope scope)
starpu_perf_knob_get_per_scheduler_int64_value
int64_t starpu_perf_knob_get_per_scheduler_int64_value(const int knob_id, const char *sched_policy_name)
starpu_perf_knob_scope
starpu_perf_knob_scope
Definition starpu_perf_steering.h:42
starpu_perf_knob_set_per_scheduler_float_value
void starpu_perf_knob_set_per_scheduler_float_value(const int knob_id, const char *sched_policy_name, float new_value)
starpu_perf_knob_set_per_worker_float_value
void starpu_perf_knob_set_per_worker_float_value(const int knob_id, unsigned workerid, float new_value)
starpu_perf_knob_type
starpu_perf_knob_type
Definition starpu_perf_steering.h:53
starpu_perf_knob_get_per_scheduler_double_value
double starpu_perf_knob_get_per_scheduler_double_value(const int knob_id, const char *sched_policy_name)
starpu_perf_knob_get_global_float_value
float starpu_perf_knob_get_global_float_value(const int knob_id)
starpu_perf_knob_get_per_worker_int32_value
int32_t starpu_perf_knob_get_per_worker_int32_value(const int knob_id, unsigned workerid)
starpu_perf_knob_nb
int starpu_perf_knob_nb(enum starpu_perf_knob_scope scope)
starpu_perf_knob_id_to_name
const char * starpu_perf_knob_id_to_name(int id)
starpu_perf_knob_type_name_to_id
int starpu_perf_knob_type_name_to_id(const char *name)
starpu_perf_knob_scope_per_worker
@ starpu_perf_knob_scope_per_worker
Definition starpu_perf_steering.h:45
starpu_perf_knob_scope_undefined
@ starpu_perf_knob_scope_undefined
Definition starpu_perf_steering.h:43
starpu_perf_knob_scope_global
@ starpu_perf_knob_scope_global
Definition starpu_perf_steering.h:44
starpu_perf_knob_scope_per_scheduler
@ starpu_perf_knob_scope_per_scheduler
Definition starpu_perf_steering.h:46
starpu_perf_knob_type_int32
@ starpu_perf_knob_type_int32
Definition starpu_perf_steering.h:55
starpu_perf_knob_type_float
@ starpu_perf_knob_type_float
Definition starpu_perf_steering.h:57
starpu_perf_knob_type_double
@ starpu_perf_knob_type_double
Definition starpu_perf_steering.h:58
starpu_perf_knob_type_int64
@ starpu_perf_knob_type_int64
Definition starpu_perf_steering.h:56
starpu_perf_knob_type_undefined
@ starpu_perf_knob_type_undefined
Definition starpu_perf_steering.h:54
starpu.h