StarPU Handbook
Loading...
Searching...
No Matches
Performance Steering Knobs

API to access performance steering counters. More...

API

enum  starpu_perf_knob_scope { starpu_perf_knob_scope_undefined , starpu_perf_knob_scope_global , starpu_perf_knob_scope_per_worker , starpu_perf_knob_scope_per_scheduler }
 
enum  starpu_perf_knob_type {
  starpu_perf_knob_type_undefined , starpu_perf_knob_type_int32 , starpu_perf_knob_type_int64 , starpu_perf_knob_type_float ,
  starpu_perf_knob_type_double
}
 

Scope Related Routines

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)
 

Type Related Routines

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)
 

Performance Steering Knob Related Routines

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)
 

Detailed Description

API to access performance steering counters.

Enumeration Type Documentation

◆ starpu_perf_knob_scope

Enum of all possible performance knob scopes.

Enumerator
starpu_perf_knob_scope_undefined 

undefined scope

starpu_perf_knob_scope_global 

global scope

starpu_perf_knob_scope_per_worker 

per-worker scope

starpu_perf_knob_scope_per_scheduler 

per-scheduler scope

◆ starpu_perf_knob_type

Enum of all possible performance knob value type.

Enumerator
starpu_perf_knob_type_undefined 

undefined value type

starpu_perf_knob_type_int32 

signed 32-bit integer value

starpu_perf_knob_type_int64 

signed 64-bit integer value

starpu_perf_knob_type_float 

32-bit single precision floating-point value

starpu_perf_knob_type_double 

64-bit double precision floating-point value

Function Documentation

◆ starpu_perf_knob_scope_name_to_id()

int starpu_perf_knob_scope_name_to_id ( const char *  name)

Translate scope name constant string to scope id.

◆ starpu_perf_knob_scope_id_to_name()

const char * starpu_perf_knob_scope_id_to_name ( enum starpu_perf_knob_scope  scope)

Translate scope id to scope name constant string.

◆ starpu_perf_knob_type_name_to_id()

int starpu_perf_knob_type_name_to_id ( const char *  name)

Translate type name constant string to type id.

◆ starpu_perf_knob_type_id_to_name()

const char * starpu_perf_knob_type_id_to_name ( enum starpu_perf_knob_type  type)

Translate type id to type name constant string.

◆ starpu_perf_knob_nb()

int starpu_perf_knob_nb ( enum starpu_perf_knob_scope  scope)

Return the number of performance steering knobs for the given scope.

◆ starpu_perf_knob_name_to_id()

int starpu_perf_knob_name_to_id ( enum starpu_perf_knob_scope  scope,
const char *  name 
)

Translate a performance knob name to its id.

◆ starpu_perf_knob_nth_to_id()

int starpu_perf_knob_nth_to_id ( enum starpu_perf_knob_scope  scope,
int  nth 
)

Translate a performance knob name to its id.

◆ starpu_perf_knob_id_to_name()

const char * starpu_perf_knob_id_to_name ( int  id)

Translate a performance knob rank in its scope to its knob id.

◆ starpu_perf_knob_get_type_id()

int starpu_perf_knob_get_type_id ( int  id)

Translate a knob id to its name constant string.

◆ starpu_perf_knob_get_help_string()

const char * starpu_perf_knob_get_help_string ( int  id)

Return the knob's help string.

◆ starpu_perf_knob_list_avail()

void starpu_perf_knob_list_avail ( enum starpu_perf_knob_scope  scope)

Display the list of knobs defined in the given scope.

◆ starpu_perf_knob_list_all_avail()

void starpu_perf_knob_list_all_avail ( void  )

Display the list of knobs defined in all scopes.

◆ starpu_perf_knob_get_global_int32_value()

int32_t starpu_perf_knob_get_global_int32_value ( const int  knob_id)

Get knob value for Global scope.

◆ starpu_perf_knob_get_global_int64_value()

int64_t starpu_perf_knob_get_global_int64_value ( const int  knob_id)

Get knob value for Global scope.

◆ starpu_perf_knob_get_global_float_value()

float starpu_perf_knob_get_global_float_value ( const int  knob_id)

Get knob value for Global scope.

◆ starpu_perf_knob_get_global_double_value()

double starpu_perf_knob_get_global_double_value ( const int  knob_id)

Get knob value for Global scope.

◆ starpu_perf_knob_set_global_int32_value()

void starpu_perf_knob_set_global_int32_value ( const int  knob_id,
int32_t  new_value 
)

Set int32 knob value for Global scope.

◆ starpu_perf_knob_set_global_int64_value()

void starpu_perf_knob_set_global_int64_value ( const int  knob_id,
int64_t  new_value 
)

Set int64 knob value for Global scope.

◆ starpu_perf_knob_set_global_float_value()

void starpu_perf_knob_set_global_float_value ( const int  knob_id,
float  new_value 
)

Set float knob value for Global scope.

◆ starpu_perf_knob_set_global_double_value()

void starpu_perf_knob_set_global_double_value ( const int  knob_id,
double  new_value 
)

Set double knob value for Global scope.

◆ starpu_perf_knob_get_per_worker_int32_value()

int32_t starpu_perf_knob_get_per_worker_int32_value ( const int  knob_id,
unsigned  workerid 
)

Get int32 value for Per_worker scope.

◆ starpu_perf_knob_get_per_worker_int64_value()

int64_t starpu_perf_knob_get_per_worker_int64_value ( const int  knob_id,
unsigned  workerid 
)

Get int64 value for Per_worker scope.

◆ starpu_perf_knob_get_per_worker_float_value()

float starpu_perf_knob_get_per_worker_float_value ( const int  knob_id,
unsigned  workerid 
)

Get float value for Per_worker scope.

◆ starpu_perf_knob_get_per_worker_double_value()

double starpu_perf_knob_get_per_worker_double_value ( const int  knob_id,
unsigned  workerid 
)

Get double value for Per_worker 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 
)

Set int32 value for Per_worker scope.

◆ 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 
)

Set int64 value for Per_worker scope.

◆ 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 
)

Set float value for Per_worker scope.

◆ 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 
)

Set double value for Per_worker scope.

◆ 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 
)

Get int32 value for per_scheduler 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 
)

Get int64 value for per_scheduler scope.

◆ 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 
)

Get float value for per_scheduler scope.

◆ 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 
)

Get double value for per_scheduler scope.

◆ 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 
)

Set int32 value for per_scheduler scope.

◆ 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 
)

Set int64 value for per_scheduler scope.

◆ 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 
)

Set float value for per_scheduler scope.

◆ 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 
)

Set double value for per_scheduler scope.