NVML API Reference Guide (PDF) - vR352 (older) - Last updated May 7, 2015 - Send Feedback

4.1. Device Structs

Classes

struct 
struct 
struct 
struct 
struct 
struct 
struct 
struct 
struct 
union 
struct 

Defines

#define NVML_DEVICE_PCI_BUS_ID_BUFFER_SIZE 16
#define NVML_MAX_PHYSICAL_BRIDGE (128)
#define NVML_VALUE_NOT_AVAILABLE (-1)

Enumerations

enum nvmlBridgeChipType_t
enum nvmlGpuTopologyLevel_t
enum nvmlPcieUtilCounter_t
enum nvmlPerfPolicyType_t
enum nvmlSamplingType_t
enum nvmlValueType_t

Defines

#define NVML_DEVICE_PCI_BUS_ID_BUFFER_SIZE 16

Buffer size guaranteed to be large enough for pci bus id

#define NVML_MAX_PHYSICAL_BRIDGE (128)

Maximum limit on Physical Bridges per Board

#define NVML_VALUE_NOT_AVAILABLE (-1)

Special constant that some fields take when they are not available. Used when only part of the struct is not available.

Each structure explicitly states when to check for this value.

Enumerations

enum nvmlBridgeChipType_t

Enum to represent type of bridge chip

Values
NVML_BRIDGE_CHIP_PLX = 0
NVML_BRIDGE_CHIP_BRO4 = 1
enum nvmlGpuTopologyLevel_t

Represents level relationships within a system between two GPUs The enums are spaced to allow for future relationships

Values
NVML_TOPOLOGY_INTERNAL = 0
NVML_TOPOLOGY_SINGLE = 10
NVML_TOPOLOGY_MULTIPLE = 20
NVML_TOPOLOGY_HOSTBRIDGE = 30
NVML_TOPOLOGY_CPU = 40
NVML_TOPOLOGY_SYSTEM = 50
enum nvmlPcieUtilCounter_t

Represents the queryable PCIe utilization counters

Values
NVML_PCIE_UTIL_TX_BYTES = 0
NVML_PCIE_UTIL_RX_BYTES = 1
NVML_PCIE_UTIL_COUNT
enum nvmlPerfPolicyType_t

Represents type of perf policy for which violation times can be queried

Values
NVML_PERF_POLICY_POWER = 0
NVML_PERF_POLICY_THERMAL = 1
NVML_PERF_POLICY_COUNT
enum nvmlSamplingType_t

Represents Type of Sampling Event

Values
NVML_TOTAL_POWER_SAMPLES = 0
To represent total power drawn by GPU.
NVML_GPU_UTILIZATION_SAMPLES = 1
To represent percent of time during which one or more kernels was executing on the GPU.
NVML_MEMORY_UTILIZATION_SAMPLES = 2
To represent percent of time during which global (device) memory was being read or written.
NVML_ENC_UTILIZATION_SAMPLES = 3
To represent percent of time during which NVENC remains busy.
NVML_DEC_UTILIZATION_SAMPLES = 4
To represent percent of time during which NVDEC remains busy.
NVML_PROCESSOR_CLK_SAMPLES = 5
To represent processor clock samples.
NVML_MEMORY_CLK_SAMPLES = 6
To represent memory clock samples.
NVML_SAMPLINGTYPE_COUNT
enum nvmlValueType_t

Represents the type for sample value returned

Values
NVML_VALUE_TYPE_DOUBLE = 0
NVML_VALUE_TYPE_UNSIGNED_INT = 1
NVML_VALUE_TYPE_UNSIGNED_LONG = 2
NVML_VALUE_TYPE_UNSIGNED_LONG_LONG = 3
NVML_VALUE_TYPE_COUNT

NVML API Reference Guide (PDF) - vR352 (older) - Last updated May 7, 2015 - Send Feedback