PAPI  5.3.0.0
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
linux-nvml.h
Go to the documentation of this file.
1 #ifndef __LINUX_NVML_H__
2 #define __LINUX_NVML_H__
3 
4 #include "nvml.h"
5 
6 #define FEATURE_CLOCK_INFO 1
7 #define FEATURE_ECC_LOCAL_ERRORS 2
8 #define FEATURE_FAN_SPEED 4
9 #define FEATURE_MAX_CLOCK 8
10 #define FEATURE_MEMORY_INFO 16
11 #define FEATURE_PERF_STATES 32
12 #define FEATURE_POWER 64
13 #define FEATURE_TEMP 128
14 #define FEATURE_ECC_TOTAL_ERRORS 256
15 #define FEATURE_UTILIZATION 512
16 
17 #define HAS_FEATURE( features, query ) ( features & query )
18 
19 #define MEMINFO_TOTAL_MEMORY 0
20 #define MEMINFO_UNALLOCED 1
21 #define MEMINFO_ALLOCED 2
22 
23 #define LOCAL_ECC_REGFILE 0
24 #define LOCAL_ECC_L1 1
25 #define LOCAL_ECC_L2 2
26 #define LOCAL_ECC_MEM 3
27 
28 #define GPU_UTILIZATION 0
29 #define MEMORY_UTILIZATION 1
30 
31 /* we lookup which card we are on at read time; this is a place holder */
32 typedef int nvml_register_t;
33 
34 struct local_ecc {
35  nvmlEccBitType_t bits;
36  int which_one;
37 };
38 
39 typedef union {
40  nvmlClockType_t clock; /* used in get[Max]ClockSpeed */
41  struct local_ecc ecc_opts; /* local ecc errors, total ecc errors */
42  int which_one; /* memory_info , utilization*/
44 
45 typedef struct nvml_native_event_entry
46 {
49  char description[PAPI_MAX_STR_LEN];
50  int type;
52 
53 #endif
#define PAPI_MAX_STR_LEN
Definition: fpapi.h:43
int type
Definition: linux-nvml.h:50
nvmlEccBitType_t bits
Definition: linux-nvml.h:35
nvml_resource_options_t options
Definition: linux-nvml.h:47
int nvml_register_t
Definition: linux-nvml.h:32
Definition: linux-nvml.h:45
nvmlClockType_t clock
Definition: linux-nvml.h:40
char * name
Definition: iozone.c:23648
int which_one
Definition: linux-nvml.h:36