update PAPI support. other process and child process monitoring.

This commit is contained in:
Ken Sato
2016-04-26 19:01:47 +09:00
parent 921280f85c
commit 130b1f4327
7 changed files with 259 additions and 88 deletions

View File

@ -58,8 +58,7 @@ int ihk_mc_perfctr_set(int counter, unsigned long value);
int ihk_mc_perfctr_read_mask(unsigned long counter_mask, unsigned long *value);
unsigned long ihk_mc_perfctr_read(int counter);
unsigned long ihk_mc_perfctr_read_msr(int counter);
int ihk_mc_perfctr_alloc_counter();
void ihk_mc_perfctr_release_counter(int counter);
int ihk_mc_perfctr_alloc_counter(unsigned long pmc_status);
#endif

View File

@ -214,16 +214,20 @@ struct perf_event_attr {
#endif
};
struct mc_perf_event {
struct perf_event_attr attr;
int cpu_id;
int counter;
int counter_id; // counter_id
unsigned long count; // counter_value
unsigned long child_count_total; // child_counter_value
unsigned long pmc_status;
unsigned long sample_freq;
struct mc_perf_event *parent;
struct mc_perf_event *group_leader;
struct list_head sibling_list;
int nr_siblings;
int pid;
struct list_head group_entry;
};