PAPI 7.1.0.0
Loading...
Searching...
No Matches
linux-L2unit.h
Go to the documentation of this file.
1/****************************/
2/* THIS IS OPEN SOURCE CODE */
3/****************************/
4
20#ifndef _PAPI_L2UNIT_H
21#define _PAPI_L2UNIT_H
22
23#include "papi.h"
24#include "papi_internal.h"
25#include "papi_vector.h"
26#include "papi_memory.h"
27#include "extras.h"
28#include "../../../linux-bgq-common.h"
29
30
31/************************* DEFINES SECTION ***********************************
32 *******************************************************************************/
33
34/* this number assumes that there will never be more events than indicated */
35#define L2UNIT_MAX_COUNTERS UPC_L2_NUM_COUNTERS
36#define L2UNIT_MAX_EVENTS PEVT_L2UNIT_LAST_EVENT
37#define OFFSET ( PEVT_PUNIT_LAST_EVENT + 1 )
38
39/* Stores private information for each event */
40typedef struct L2UNIT_register
41{
42 unsigned int selector;
43 /* Signifies which counter slot is being used */
44 /* Indexed from 1 as 0 has a special meaning */
46
47
48/* Used when doing register allocation */
49typedef struct L2UNIT_reg_alloc
50{
53
54typedef struct L2UNIT_overflow
55{
59
60/* Holds control flags */
61typedef struct L2UNIT_control_state
62{
64 int EventGroup_local[512];
65 int count;
66 long long counters[L2UNIT_MAX_COUNTERS];
67 int overflow; // overflow enable
69 L2UNIT_overflow_t overflow_list[512];
70 int bgpm_eventset_applied; // BGPM eventGroup applied yes or no flag
72
73
74/* Holds per-thread information */
75typedef struct L2UNIT_context
76{
79
80
81#endif /* _PAPI_L2UNIT_H */
#define L2UNIT_MAX_COUNTERS
Definition: linux-L2unit.h:35
Return codes and api definitions.
L2UNIT_control_state_t state
Definition: linux-L2unit.h:77
L2UNIT_register_t ra_bits
Definition: linux-L2unit.h:51
unsigned int selector
Definition: linux-L2unit.h:42