HPCToolkit
metrics.h File Reference
#include <sys/types.h>
#include <stdbool.h>
#include <lib/prof-lean/hpcio.h>
#include <lib/prof-lean/hpcfmt.h>
#include <lib/prof-lean/hpcrun-fmt.h>
#include <stdlib.h>
#include <assert.h>
Include dependency graph for metrics.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  metric_proc_map_t
 

Typedefs

typedef hpcrun_metricVal_t cct_metric_data_t
 
typedef struct metric_set_t metric_set_t
 
typedef void metric_upd_proc_t(int metric_id, metric_set_t *set, cct_metric_data_t datum)
 
typedef cct_metric_data_t(* metric_bin_fn) (cct_metric_data_t v1, cct_metric_data_t v2)
 
typedef struct metric_proc_map_t metric_proc_map_t
 
typedef struct kind_info_t kind_info_t
 

Functions

kind_info_thpcrun_metrics_new_kind ()
 
bool hpcrun_metrics_finalized (void)
 
void hpcrun_finalize_metrics (void)
 
void hpcrun_pre_allocate_metrics (size_t num)
 
int hpcrun_get_num_metrics (void)
 
metric_desc_thpcrun_id2metric (int id)
 
metric_list_thpcrun_get_metric_data (void)
 
metric_desc_p_tbl_t * hpcrun_get_metric_tbl (void)
 
metric_upd_proc_thpcrun_get_metric_proc (int metric_id)
 
int hpcrun_new_metric (void)
 
metric_desc_thpcrun_set_metric_info_w_fn (int metric_id, const char *name, MetricFlags_ValFmt_t valFmt, size_t period, metric_upd_proc_t upd_fn, metric_desc_properties_t prop)
 
metric_desc_thpcrun_set_metric_and_attributes (int metric_id, const char *name, MetricFlags_ValFmt_t valFmt, size_t period, metric_desc_properties_t prop, uint8_t show, uint8_t show_percent)
 
metric_desc_thpcrun_set_metric_info_and_period (int metric_id, const char *name, MetricFlags_ValFmt_t valFmt, size_t period, metric_desc_properties_t prop)
 
metric_desc_thpcrun_set_metric_info (int metric_id, const char *name)
 
void hpcrun_set_metric_name (int metric_id, char *name)
 
metric_set_thpcrun_metric_set_new (void)
 
cct_metric_data_thpcrun_metric_set_loc (metric_set_t *s, int id)
 
void hpcrun_metric_std_set (int metric_id, metric_set_t *set, hpcrun_metricVal_t value)
 
void hpcrun_metric_std_inc (int metric_id, metric_set_t *set, hpcrun_metricVal_t incr)
 
void hpcrun_metric_std_min (int metric_id, metric_set_t *set, hpcrun_metricVal_t val)
 
void hpcrun_metric_std_max (int metric_id, metric_set_t *set, hpcrun_metricVal_t val)
 
void hpcrun_metric_set_dense_copy (cct_metric_data_t *dest, metric_set_t *set, int num_metrics)
 

Typedef Documentation

◆ cct_metric_data_t

Definition at line 73 of file metrics.h.

◆ kind_info_t

typedef struct kind_info_t kind_info_t

Definition at line 112 of file metrics.h.

◆ metric_bin_fn

typedef cct_metric_data_t(* metric_bin_fn) (cct_metric_data_t v1, cct_metric_data_t v2)

Definition at line 81 of file metrics.h.

◆ metric_proc_map_t

◆ metric_set_t

typedef struct metric_set_t metric_set_t

Definition at line 77 of file metrics.h.

◆ metric_upd_proc_t

typedef void metric_upd_proc_t(int metric_id, metric_set_t *set, cct_metric_data_t datum)

Definition at line 79 of file metrics.h.

Function Documentation

◆ hpcrun_finalize_metrics()

void hpcrun_finalize_metrics ( void  )

Definition at line 245 of file metrics.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ hpcrun_get_metric_data()

metric_list_t* hpcrun_get_metric_data ( void  )

Definition at line 271 of file metrics.c.

◆ hpcrun_get_metric_proc()

metric_upd_proc_t* hpcrun_get_metric_proc ( int  metric_id)

Definition at line 281 of file metrics.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ hpcrun_get_metric_tbl()

metric_desc_p_tbl_t* hpcrun_get_metric_tbl ( void  )

Definition at line 262 of file metrics.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ hpcrun_get_num_metrics()

int hpcrun_get_num_metrics ( void  )

Definition at line 209 of file metrics.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ hpcrun_id2metric()

metric_desc_t* hpcrun_id2metric ( int  id)

Definition at line 251 of file metrics.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ hpcrun_metric_set_dense_copy()

void hpcrun_metric_set_dense_copy ( cct_metric_data_t dest,
metric_set_t set,
int  num_metrics 
)

Definition at line 560 of file metrics.c.

Here is the caller graph for this function:

◆ hpcrun_metric_set_loc()

cct_metric_data_t* hpcrun_metric_set_loc ( metric_set_t s,
int  id 
)

Definition at line 465 of file metrics.c.

Here is the caller graph for this function:

◆ hpcrun_metric_set_new()

metric_set_t* hpcrun_metric_set_new ( void  )

Definition at line 456 of file metrics.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ hpcrun_metric_std_inc()

void hpcrun_metric_std_inc ( int  metric_id,
metric_set_t set,
hpcrun_metricVal_t  incr 
)

Definition at line 534 of file metrics.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ hpcrun_metric_std_max()

void hpcrun_metric_std_max ( int  metric_id,
metric_set_t set,
hpcrun_metricVal_t  val 
)

Definition at line 549 of file metrics.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ hpcrun_metric_std_min()

void hpcrun_metric_std_min ( int  metric_id,
metric_set_t set,
hpcrun_metricVal_t  val 
)

Definition at line 542 of file metrics.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ hpcrun_metric_std_set()

void hpcrun_metric_std_set ( int  metric_id,
metric_set_t set,
hpcrun_metricVal_t  value 
)

Definition at line 525 of file metrics.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ hpcrun_metrics_finalized()

bool hpcrun_metrics_finalized ( void  )

Definition at line 183 of file metrics.c.

◆ hpcrun_metrics_new_kind()

kind_info_t* hpcrun_metrics_new_kind ( )

Definition at line 147 of file metrics.c.

Here is the call graph for this function:

◆ hpcrun_new_metric()

int hpcrun_new_metric ( void  )

Definition at line 333 of file metrics.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ hpcrun_pre_allocate_metrics()

void hpcrun_pre_allocate_metrics ( size_t  num)

Definition at line 190 of file metrics.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ hpcrun_set_metric_and_attributes()

metric_desc_t* hpcrun_set_metric_and_attributes ( int  metric_id,
const char *  name,
MetricFlags_ValFmt_t  valFmt,
size_t  period,
metric_desc_properties_t  prop,
uint8_t  show,
uint8_t  show_percent 
)

Definition at line 397 of file metrics.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ hpcrun_set_metric_info()

metric_desc_t* hpcrun_set_metric_info ( int  metric_id,
const char *  name 
)

Definition at line 423 of file metrics.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ hpcrun_set_metric_info_and_period()

metric_desc_t* hpcrun_set_metric_info_and_period ( int  metric_id,
const char *  name,
MetricFlags_ValFmt_t  valFmt,
size_t  period,
metric_desc_properties_t  prop 
)

Definition at line 411 of file metrics.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ hpcrun_set_metric_info_w_fn()

metric_desc_t* hpcrun_set_metric_info_w_fn ( int  metric_id,
const char *  name,
MetricFlags_ValFmt_t  valFmt,
size_t  period,
metric_upd_proc_t  upd_fn,
metric_desc_properties_t  prop 
)

Definition at line 339 of file metrics.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ hpcrun_set_metric_name()

void hpcrun_set_metric_name ( int  metric_id,
char *  name 
)

Definition at line 439 of file metrics.c.

Here is the call graph for this function: