PAPI
7.1.0.0
Loading...
Searching...
No Matches
perf_event_lib.h
Go to the documentation of this file.
1
/* Various definitions */
2
3
/* This is arbitrary. Typically you can add up to ~1000 before */
4
/* you run out of fds */
5
#define PERF_EVENT_MAX_MPX_COUNTERS 384
6
7
/* We really don't need fancy definitions for these */
8
9
typedef
struct
10
{
11
int
group_leader_fd
;
/* fd of group leader */
12
int
event_fd
;
/* fd of event */
13
int
event_opened
;
/* event successfully opened */
14
int
profiling
;
/* event is profiling */
15
int
sampling
;
/* event is a sampling event */
16
uint32_t
nr_mmap_pages
;
/* number pages in the mmap buffer */
17
void
*
mmap_buf
;
/* used for control/profiling */
18
uint64_t
tail
;
/* current read location in mmap buffer */
19
uint64_t
mask
;
/* mask used for wrapping the pages */
20
int
cpu
;
/* cpu associated with this event */
21
struct
perf_event_attr
attr;
/* perf_event config structure */
22
}
pe_event_info_t
;
23
24
25
typedef
struct
{
26
int
num_events
;
/* number of events in control state */
27
unsigned
int
domain
;
/* control-state wide domain */
28
unsigned
int
granularity
;
/* granularity */
29
unsigned
int
multiplexed
;
/* multiplexing enable */
30
unsigned
int
overflow
;
/* overflow enable */
31
unsigned
int
inherit
;
/* inherit enable */
32
unsigned
int
overflow_signal
;
/* overflow signal */
33
unsigned
int
attached
;
/* attached to a process */
34
int
cidx
;
/* current component */
35
int
cpu
;
/* which cpu to measure */
36
pid_t
tid
;
/* thread we are monitoring */
37
pe_event_info_t
events
[
PERF_EVENT_MAX_MPX_COUNTERS
];
38
long
long
counts[
PERF_EVENT_MAX_MPX_COUNTERS
];
39
unsigned
int
reset_flag
;
40
long
long
reset_counts[
PERF_EVENT_MAX_MPX_COUNTERS
];
41
}
pe_control_t
;
42
43
44
typedef
struct
{
45
int
initialized
;
/* are we initialized? */
46
int
state
;
/* are we opened and/or running? */
47
int
cidx
;
/* our component id */
48
struct
native_event_table_t
*
event_table
;
/* our event table */
49
}
pe_context_t
;
50
51
events
char events[MAX_EVENTS][BUFSIZ]
Definition:
host_micpower_plot.c:17
PERF_EVENT_MAX_MPX_COUNTERS
#define PERF_EVENT_MAX_MPX_COUNTERS
Definition:
perf_event_lib.h:5
native_event_table_t
Definition:
papi_libpfm4_events.h:31
pe_context_t
Definition:
perf_event_lib.h:44
pe_context_t::event_table
struct native_event_table_t * event_table
Definition:
perf_event_lib.h:48
pe_context_t::state
int state
Definition:
perf_event_lib.h:46
pe_context_t::initialized
int initialized
Definition:
perf_event_lib.h:45
pe_context_t::cidx
int cidx
Definition:
perf_event_lib.h:47
pe_control_t
Definition:
perf_event_lib.h:25
pe_control_t::attached
unsigned int attached
Definition:
perf_event_lib.h:33
pe_control_t::cidx
int cidx
Definition:
perf_event_lib.h:34
pe_control_t::cpu
int cpu
Definition:
perf_event_lib.h:35
pe_control_t::tid
pid_t tid
Definition:
perf_event_lib.h:36
pe_control_t::overflow_signal
unsigned int overflow_signal
Definition:
perf_event_lib.h:32
pe_control_t::reset_flag
unsigned int reset_flag
Definition:
perf_event_lib.h:39
pe_control_t::num_events
int num_events
Definition:
perf_event_lib.h:26
pe_control_t::overflow
unsigned int overflow
Definition:
perf_event_lib.h:30
pe_control_t::granularity
unsigned int granularity
Definition:
perf_event_lib.h:28
pe_control_t::multiplexed
unsigned int multiplexed
Definition:
perf_event_lib.h:29
pe_control_t::domain
unsigned int domain
Definition:
perf_event_lib.h:27
pe_control_t::inherit
unsigned int inherit
Definition:
perf_event_lib.h:31
pe_event_info_t
Definition:
perf_event_lib.h:10
pe_event_info_t::profiling
int profiling
Definition:
perf_event_lib.h:14
pe_event_info_t::nr_mmap_pages
uint32_t nr_mmap_pages
Definition:
perf_event_lib.h:16
pe_event_info_t::event_fd
int event_fd
Definition:
perf_event_lib.h:12
pe_event_info_t::cpu
int cpu
Definition:
perf_event_lib.h:20
pe_event_info_t::sampling
int sampling
Definition:
perf_event_lib.h:15
pe_event_info_t::group_leader_fd
int group_leader_fd
Definition:
perf_event_lib.h:11
pe_event_info_t::mask
uint64_t mask
Definition:
perf_event_lib.h:19
pe_event_info_t::event_opened
int event_opened
Definition:
perf_event_lib.h:13
pe_event_info_t::mmap_buf
void * mmap_buf
Definition:
perf_event_lib.h:17
pe_event_info_t::tail
uint64_t tail
Definition:
perf_event_lib.h:18
perf_event_attr
Definition:
papi_libpfm_events.h:42
src
components
perf_event
perf_event_lib.h
Generated on Wed Dec 20 2023 18:12:51 for PAPI by
1.9.6