PAPI 7.1.0.0
Loading...
Searching...
No Matches
papi_vector.h
Go to the documentation of this file.
1
4#ifndef _PAPI_VECTOR_H
5#define _PAPI_VECTOR_H
6
9typedef struct cmp_struct_sizes {
15
18typedef struct papi_vectors {
21
24
25/* List of exposed function pointers for this component */
26 void ( *dispatch_timer ) ( int, hwd_siginfo_t *, void * );
27 void * (*get_overflow_address) (int, char *, int);
30 int (*read) (hwd_context_t *, hwd_control_state_t *, long long **, int);
32 int (*write) (hwd_context_t *, hwd_control_state_t *, long long[]);
33 int (*cleanup_eventset) ( hwd_control_state_t * );
34 int (*stop_profiling) (ThreadInfo_t *, EventSetInfo_t *);
35 int (*init_component) (int);
36 int (*init_thread) (hwd_context_t *);
37 int (*init_control_state) (hwd_control_state_t * ptr);
38 int (*update_control_state) (hwd_control_state_t *, NativeInfo_t *, int, hwd_context_t *);
40 int (*set_overflow) (EventSetInfo_t *, int, int);
41 int (*set_profile) (EventSetInfo_t *, int, int);
43 int (*ntv_enum_events) (unsigned int *, int);
44 int (*ntv_name_to_code) (const char *, unsigned int *);
45 int (*ntv_code_to_name) (unsigned int, char *, int);
46 int (*ntv_code_to_descr) (unsigned int, char *, int);
47 int (*ntv_code_to_bits) (unsigned int, hwd_register_t *);
48 int (*ntv_code_to_info) (unsigned int, PAPI_event_info_t *);
49 int (*allocate_registers) (EventSetInfo_t *);
53 int (*shutdown_thread) (hwd_context_t *);
54 int (*shutdown_component) (void);
55 int (*user) (int, void *, void *);
57
58extern papi_vector_t *_papi_hwd[];
59
60typedef struct papi_os_vectors {
61 long long (*get_real_cycles) (void);
62 long long (*get_virt_cycles) (void);
63 long long (*get_real_usec) (void);
64 long long (*get_virt_usec) (void);
65 long long (*get_real_nsec) (void);
66 long long (*get_virt_nsec) (void);
67 int (*update_shlib_info) (papi_mdi_t * mdi);
68 int (*get_system_info) (papi_mdi_t * mdi);
69 int (*get_memory_info) (PAPI_hw_info_t *, int);
70 int (*get_dmem_info) (PAPI_dmem_info_t *);
72
74
75
76/* Prototypes */
79
80#endif /* _PAPI_VECTOR_H */
ssize_t write(int fd, const void *buf, size_t count)
Definition: appio.c:302
ssize_t read(int fd, void *buf, size_t count)
Definition: appio.c:229
static struct timeval start
int _papi_hwi_innoculate_vector(papi_vector_t *v)
Definition: papi_vector.c:109
int _papi_hwi_innoculate_os_vector(papi_os_vector_t *v)
Definition: papi_vector.c:200
papi_vector_t * _papi_hwd[]
papi_os_vector_t _papi_os_vector
Definition: aix.c:1288
static int set_domain(hwd_control_state_t *cntrl, unsigned int domain)
int
Definition: sde_internal.h:89
long long int long long
Definition: sde_internal.h:85
A pointer to the following is passed to PAPI_get_dmem_info()
Definition: papi.h:865
Hardware info structure.
Definition: papi.h:774
PAPI_component_info_t cmp_info
Definition: papi_vector.h:20
cmp_struct_sizes_t size
Definition: papi_vector.h:23