PAPI 7.1.0.0
Loading...
Searching...
No Matches
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#define FEATURE_POWER_MANAGEMENT 1024
17#define FEATURE_NVML_POWER_MANAGEMENT_LIMIT_CONSTRAINT_MIN 2048
18#define FEATURE_NVML_POWER_MANAGEMENT_LIMIT_CONSTRAINT_MAX 4096
19
20#define HAS_FEATURE( features, query ) ( features & query )
21
22#define MEMINFO_TOTAL_MEMORY 0
23#define MEMINFO_UNALLOCED 1
24#define MEMINFO_ALLOCED 2
25
26#define LOCAL_ECC_REGFILE 0
27#define LOCAL_ECC_L1 1
28#define LOCAL_ECC_L2 2
29#define LOCAL_ECC_MEM 3
30
31#define GPU_UTILIZATION 0
32#define MEMORY_UTILIZATION 1
33
34/* we lookup which card we are on at read time; this is a place holder */
35typedef int nvml_register_t;
36
37struct local_ecc {
38 nvmlEccBitType_t bits;
40};
41
42typedef union {
43 nvmlClockType_t clock; /* used in get[Max]ClockSpeed */
44 struct local_ecc ecc_opts; /* local ecc errors, total ecc errors */
45 int which_one; /* memory_info , utilization*/
47
48typedef struct nvml_native_event_entry {
52 char description[PAPI_MAX_STR_LEN];
53 int type;
55
56#endif
#define PAPI_MIN_STR_LEN
Definition: f90papi.h:208
#define PAPI_MAX_STR_LEN
Definition: f90papi.h:77
int nvml_register_t
Definition: linux-nvml.h:35
char units[MAX_EVENTS][BUFSIZ]
Definition: powercap_plot.c:15
const char * name
Definition: rocs.c:225
nvmlEccBitType_t bits
Definition: linux-nvml.h:38
int which_one
Definition: linux-nvml.h:39
Definition: linux-nvml.h:48
int type
Definition: linux-nvml.h:53
nvml_resource_options_t options
Definition: linux-nvml.h:49
nvmlClockType_t clock
Definition: linux-nvml.h:43