Device Enums#
Macros#
- MAX_CLK_DOMAINS
Max Clock Monitors available.
- NVML_ADAPTIVE_CLOCKING_INFO_STATUS_DISABLED
Adaptive clocking status.
- NVML_ADAPTIVE_CLOCKING_INFO_STATUS_ENABLED
Adaptive clocking is enabled.
- NVML_BUS_TYPE_AGP
AGP bus.
- NVML_BUS_TYPE_FPCI
FPCI bus.
- NVML_BUS_TYPE_PCI
PCI bus.
- NVML_BUS_TYPE_PCIE
PCI-Express bus.
- NVML_BUS_TYPE_UNKNOWN
PCI bus types.
- NVML_DEVICE_ARCH_ADA
Devices based on the NVIDIA Ada architecture.
- NVML_DEVICE_ARCH_AMPERE
Devices based on the NVIDIA Ampere architecture.
- NVML_DEVICE_ARCH_BLACKWELL
Devices based on the NVIDIA Blackwell architecture.
- NVML_DEVICE_ARCH_DLA
Devices based on the NVIDIA DLA architecture.
- NVML_DEVICE_ARCH_DLA2
Devices based on the NVIDIA DLA2 architecture.
- NVML_DEVICE_ARCH_HOPPER
Devices based on the NVIDIA Hopper architecture.
- NVML_DEVICE_ARCH_KEPLER
Simplified chip architecture.
- NVML_DEVICE_ARCH_MAXWELL
Devices based on the NVIDIA Maxwell architecture.
- NVML_DEVICE_ARCH_NPU3
Devices based on the NVIDIA NPU3 architecture.
- NVML_DEVICE_ARCH_PASCAL
Devices based on the NVIDIA Pascal architecture.
- NVML_DEVICE_ARCH_RUBIN
Devices based on the NVIDIA Rubin architecture.
- NVML_DEVICE_ARCH_TURING
Devices based on the NVIDIA Turing architecture.
- NVML_DEVICE_ARCH_UNKNOWN
Anything else, presumably something newer.
- NVML_DEVICE_ARCH_VOLTA
Devices based on the NVIDIA Volta architecture.
- NVML_DEVICE_HOSTNAME_BUFFER_SIZE
Structure to store hostname information.
- NVML_DOUBLE_BIT_ECC
Double bit ECC errors.
- NVML_FAN_POLICY_MANUAL
Manual fan control policy.
- NVML_FAN_POLICY_TEMPERATURE_CONTINOUS_SW
Device Power Modes.
- NVML_GSP_FIRMWARE_VERSION_BUF_SIZE
GSP firmware.
- NVML_MAX_GPU_PERF_PSTATES
Maximum number of GPU performance states.
- NVML_MAX_GPU_UTILIZATIONS
Maximum number of GPU utilization domains.
- NVML_PCIE_ATOMICS_CAP_CAS128
128-bit compare and swap.
- NVML_PCIE_ATOMICS_CAP_CAS32
32-bit compare and swap.
- NVML_PCIE_ATOMICS_CAP_CAS64
64-bit compare and swap.
- NVML_PCIE_ATOMICS_CAP_FETCHADD32
32-bit fetch and add.
- NVML_PCIE_ATOMICS_CAP_FETCHADD64
64-bit fetch and add.
- NVML_PCIE_ATOMICS_CAP_SWAP32
32-bit swap.
- NVML_PCIE_ATOMICS_CAP_SWAP64
64-bit swap.
- NVML_PCIE_ATOMICS_OPS_MAX
Maximum number of PCIe atomics operations.
- NVML_PCIE_LINK_MAX_SPEED_16000MBPS
16000 MB/s PCIe link speed.
- NVML_PCIE_LINK_MAX_SPEED_2500MBPS
2500 MB/s PCIe link speed.
- NVML_PCIE_LINK_MAX_SPEED_32000MBPS
32000 MB/s PCIe link speed.
- NVML_PCIE_LINK_MAX_SPEED_5000MBPS
5000 MB/s PCIe link speed.
- NVML_PCIE_LINK_MAX_SPEED_64000MBPS
64000 MB/s PCIe link speed.
- NVML_PCIE_LINK_MAX_SPEED_8000MBPS
8000 MB/s PCIe link speed.
- NVML_PCIE_LINK_MAX_SPEED_INVALID
Device PCIE link Max Speed.
- NVML_PERF_MODES_BUFFER_SIZE
Buffer size for performance modes strings.
- NVML_POWER_MIZER_MODE_ADAPTIVE
Device powerMizer modes.
- NVML_POWER_MIZER_MODE_AUTO
PowerMizer mode is driver controlled.
- NVML_POWER_MIZER_MODE_PREFER_CONSISTENT_PERFORMANCE
lock to GPU base clocks
- NVML_POWER_MIZER_MODE_PREFER_MAXIMUM_PERFORMANCE
raise GPU clocks to favor maximum performance, to the extent that thermal and other constraints allow
- NVML_POWER_SCOPE_COUNT
Maximum number of power scopes.
- NVML_POWER_SCOPE_GPU
Device Scope - This is useful to retrieve the telemetry at GPU and module (e.g.
- NVML_POWER_SCOPE_GPU_BASE
Targets base GPU power.
- NVML_POWER_SCOPE_MEMORY
Targets the GPU Memory.
- NVML_POWER_SCOPE_MODULE
Targets the whole module.
- NVML_POWER_SOURCE_AC
Device Power Source.
- NVML_POWER_SOURCE_BATTERY
Battery power source.
- NVML_POWER_SOURCE_UNDERSIZED
Undersized power source.
- NVML_RUSD_POLL_ALL
Enable RUSD polling on all groups.
- NVML_RUSD_POLL_CLOCK
Enable RUSD polling on clock group.
- NVML_RUSD_POLL_FAN
Enable RUSD polling on fan group.
- NVML_RUSD_POLL_MEMORY
Enable RUSD polling on memory group.
- NVML_RUSD_POLL_NONE
Disable RUSD polling on all metric groups.
- NVML_RUSD_POLL_PCI
Enable RUSD polling on pci group.
- NVML_RUSD_POLL_PERF
Enable RUSD polling on performance group.
- NVML_RUSD_POLL_POWER
Enable RUSD polling on power group.
- NVML_RUSD_POLL_PROC_UTIL
Enable RUSD polling on process utilization group.
- NVML_RUSD_POLL_THERMAL
Enable RUSD polling on thermal group.
- NVML_SINGLE_BIT_ECC
Single bit ECC errors.
- nvmlClockOffset_v1
Version macro for nvmlClockOffset_v1_t .
- nvmlDeviceCurrentClockFreqs_v1
Version macro for nvmlDeviceCurrentClockFreqs_v1_t .
- nvmlDevicePerfModes_v1
Version macro for nvmlDevicePerfModes_v1_t .
- nvmlDramEncryptionInfo_v1
Version macro for nvmlDramEncryptionInfo_v1_t .
- nvmlEccBitType_t
ECC bit types.
- nvmlEccSramErrorStatus_v1
Version macro for nvmlEccSramErrorStatus_v1_t .
- nvmlEccSramUniqueUncorrectedErrorCounts_v1
Version macro for nvmlEccSramUniqueUncorrectedErrorCounts_v1_t .
- nvmlFanSpeedInfo_v1
Version macro for nvmlFanSpeedInfo_v1_t .
- nvmlFlagDefault
Generic flag used to specify the default behavior of some functions. See description of particular functions for details.
- nvmlFlagForce
Force flag.
- nvmlMarginTemperature_v1
Version macro for nvmlMarginTemperature_v1_t .
- nvmlPlatformInfo_v1
Version macro for nvmlPlatformInfo_v1_t .
- nvmlPlatformInfo_v2
Version macro for nvmlPlatformInfo_v2_t .
- nvmlPowerValue_v2
Version macro for nvmlPowerValue_v2_t .
- nvmlProcessesUtilizationInfo_v1
- nvmlRusdSettings_v1
Version macro for nvmlRusdSettings_v1_t .
Enumerations#
- nvmlBrandType_t
- nvmlClockId_t
Clock Ids.
- nvmlClockType_t
Clock types.
- nvmlComputeMode_t
Compute mode.
- nvmlDriverModel_t
Driver models.
- nvmlEccCounterType_t
ECC counter types.
- nvmlEnableState_t
Generic enable/disable enum.
- nvmlGpuOperationMode_t
GPU Operation Mode.
- nvmlGpuUtilizationDomainId_t
Represents the GPU utilization domains.
- nvmlInforomObject_t
Available infoROM objects.
- nvmlMemoryErrorType_t
Memory error types.
- nvmlMemoryLocation_t
- nvmlPageRetirementCause_t
Causes for page retirement.
- nvmlPstates_t
Allowed PStates.
- nvmlRestrictedAPI_t
API types that allow changes to default permission restrictions.
- nvmlReturn_t
Return values for NVML API calls.
- nvmlTemperatureSensors_t
Temperature sensors.
- nvmlTemperatureThresholds_t
Temperature thresholds.
Structs#
- nvmlAdaptiveTgpModeInfo_v1_t
Contains Adaptive TGP Mode state and telemetry information.
- nvmlClkMonFaultInfo_t
Clock Monitor error types.
- nvmlClkMonStatus_t
Clock Monitor Status.
- nvmlClockOffset_v1_t
Clock offset info.
- nvmlDeviceCurrentClockFreqs_v1_t
Device current clocks string.
- nvmlDevicePerfModes_v1_t
Device performance modes string.
- nvmlDevicePowerMizerModes_v1_t
- nvmlDramEncryptionInfo_v1_t
DRAM Encryption Info.
- nvmlEccSramErrorStatus_v1_t
Structure to store SRAM uncorrectable error counters.
- nvmlEccSramUniqueUncorrectedErrorCounts_v1_t
- nvmlEccSramUniqueUncorrectedErrorEntry_v1_t
- nvmlFanSpeedInfo_v1_t
Fan speed info.
- nvmlGpuDynamicPstatesInfo_t
- nvmlHostname_v1_t
- nvmlMarginTemperature_v1_t
Margin temperature values.
- nvmlPlatformInfo_v1_t
Structure to store platform information.
- nvmlPlatformInfo_v2_t
Structure to store platform information (v2)
- nvmlPowerValue_v2_t
Contains the power management limit.
- nvmlProcessUtilizationInfo_v1_t
Structure to store utilization value and process Id version 1.
- nvmlProcessUtilizationSample_t
Structure to store utilization value and process Id.
- nvmlProcessesUtilizationInfo_v1_t
Structure to store utilization and process ID for each running process version 1.
- nvmlRemappedRowsInfo_v2_t
- nvmlRusdSettings_v1_t
Typedefs#
- nvmlBusType_t
- nvmlClockOffset_t
- nvmlDeviceArchitecture_t
- nvmlDeviceCurrentClockFreqs_t
- nvmlDevicePerfModes_t
- nvmlDramEncryptionInfo_t
- nvmlEccSramErrorStatus_t
- nvmlEccSramUniqueUncorrectedErrorCounts_t
- nvmlFanControlPolicy_t
- nvmlFanSpeedInfo_t
- nvmlMarginTemperature_t
- nvmlPlatformInfo_t
- nvmlPowerScopeType_t
- nvmlPowerSource_t
- nvmlProcessesUtilizationInfo_t
Macros#
-
MAX_CLK_DOMAINS#
Max Clock Monitors available.
Maximum number of clock domains.
-
NVML_ADAPTIVE_CLOCKING_INFO_STATUS_DISABLED#
Adaptive clocking status.
Adaptive clocking is disabled.
-
NVML_ADAPTIVE_CLOCKING_INFO_STATUS_ENABLED#
Adaptive clocking is enabled.
-
NVML_BUS_TYPE_AGP#
AGP bus.
-
NVML_BUS_TYPE_FPCI#
FPCI bus.
-
NVML_BUS_TYPE_PCI#
PCI bus.
-
NVML_BUS_TYPE_PCIE#
PCI-Express bus.
-
NVML_BUS_TYPE_UNKNOWN#
PCI bus types.
Unknown bus type.
-
NVML_DEVICE_ARCH_ADA#
Devices based on the NVIDIA Ada architecture.
-
NVML_DEVICE_ARCH_AMPERE#
Devices based on the NVIDIA Ampere architecture.
-
NVML_DEVICE_ARCH_BLACKWELL#
Devices based on the NVIDIA Blackwell architecture.
-
NVML_DEVICE_ARCH_DLA#
Devices based on the NVIDIA DLA architecture.
-
NVML_DEVICE_ARCH_DLA2#
Devices based on the NVIDIA DLA2 architecture.
-
NVML_DEVICE_ARCH_HOPPER#
Devices based on the NVIDIA Hopper architecture.
-
NVML_DEVICE_ARCH_KEPLER#
Simplified chip architecture.
Devices based on the NVIDIA Kepler architecture
-
NVML_DEVICE_ARCH_MAXWELL#
Devices based on the NVIDIA Maxwell architecture.
-
NVML_DEVICE_ARCH_NPU3#
Devices based on the NVIDIA NPU3 architecture.
-
NVML_DEVICE_ARCH_PASCAL#
Devices based on the NVIDIA Pascal architecture.
-
NVML_DEVICE_ARCH_RUBIN#
Devices based on the NVIDIA Rubin architecture.
-
NVML_DEVICE_ARCH_TURING#
Devices based on the NVIDIA Turing architecture.
-
NVML_DEVICE_ARCH_UNKNOWN#
Anything else, presumably something newer.
-
NVML_DEVICE_ARCH_VOLTA#
Devices based on the NVIDIA Volta architecture.
-
NVML_DEVICE_HOSTNAME_BUFFER_SIZE#
Structure to store hostname information.
Buffer size for hostname string.
-
NVML_DOUBLE_BIT_ECC#
Double bit ECC errors.
Deprecated double bit ECC error. See NVML_MEMORY_ERROR_TYPE_UNCORRECTED.
-
NVML_FAN_POLICY_MANUAL#
Manual fan control policy.
-
NVML_FAN_POLICY_TEMPERATURE_CONTINOUS_SW#
Device Power Modes.
Device Fan control policy Temperature-controlled fan policy.
-
NVML_GSP_FIRMWARE_VERSION_BUF_SIZE#
GSP firmware.
Buffer size for GSP firmware version string.
-
NVML_MAX_GPU_PERF_PSTATES#
Maximum number of GPU performance states.
-
NVML_MAX_GPU_UTILIZATIONS#
Maximum number of GPU utilization domains.
-
NVML_PCIE_ATOMICS_CAP_CAS128#
128-bit compare and swap.
-
NVML_PCIE_ATOMICS_CAP_CAS32#
32-bit compare and swap.
-
NVML_PCIE_ATOMICS_CAP_CAS64#
64-bit compare and swap.
-
NVML_PCIE_ATOMICS_CAP_FETCHADD32#
32-bit fetch and add.
-
NVML_PCIE_ATOMICS_CAP_FETCHADD64#
64-bit fetch and add.
-
NVML_PCIE_ATOMICS_CAP_SWAP32#
32-bit swap.
-
NVML_PCIE_ATOMICS_CAP_SWAP64#
64-bit swap.
-
NVML_PCIE_ATOMICS_OPS_MAX#
Maximum number of PCIe atomics operations.
-
NVML_PCIE_LINK_MAX_SPEED_16000MBPS#
16000 MB/s PCIe link speed.
-
NVML_PCIE_LINK_MAX_SPEED_2500MBPS#
2500 MB/s PCIe link speed.
-
NVML_PCIE_LINK_MAX_SPEED_32000MBPS#
32000 MB/s PCIe link speed.
-
NVML_PCIE_LINK_MAX_SPEED_5000MBPS#
5000 MB/s PCIe link speed.
-
NVML_PCIE_LINK_MAX_SPEED_64000MBPS#
64000 MB/s PCIe link speed.
-
NVML_PCIE_LINK_MAX_SPEED_8000MBPS#
8000 MB/s PCIe link speed.
-
NVML_PCIE_LINK_MAX_SPEED_INVALID#
Device PCIE link Max Speed.
Invalid PCIe link speed.
-
NVML_PERF_MODES_BUFFER_SIZE#
Buffer size for performance modes strings.
-
NVML_POWER_MIZER_MODE_ADAPTIVE#
Device powerMizer modes.
adjust GPU clocks based on GPU utilization
-
NVML_POWER_MIZER_MODE_AUTO#
PowerMizer mode is driver controlled.
-
NVML_POWER_MIZER_MODE_PREFER_CONSISTENT_PERFORMANCE#
lock to GPU base clocks
-
NVML_POWER_MIZER_MODE_PREFER_MAXIMUM_PERFORMANCE#
raise GPU clocks to favor maximum performance, to the extent that thermal and other constraints allow
-
NVML_POWER_SCOPE_COUNT#
Maximum number of power scopes.
-
NVML_POWER_SCOPE_GPU#
Device Scope - This is useful to retrieve the telemetry at GPU and module (e.g.
GPU + CPU) level Targets only GPU
-
NVML_POWER_SCOPE_GPU_BASE#
Targets base GPU power.
-
NVML_POWER_SCOPE_MEMORY#
Targets the GPU Memory.
-
NVML_POWER_SCOPE_MODULE#
Targets the whole module.
-
NVML_POWER_SOURCE_AC#
Device Power Source.
AC power source.
-
NVML_POWER_SOURCE_BATTERY#
Battery power source.
-
NVML_POWER_SOURCE_UNDERSIZED#
Undersized power source.
-
NVML_RUSD_POLL_ALL#
Enable RUSD polling on all groups.
-
NVML_RUSD_POLL_CLOCK#
Enable RUSD polling on clock group.
-
NVML_RUSD_POLL_FAN#
Enable RUSD polling on fan group.
-
NVML_RUSD_POLL_MEMORY#
Enable RUSD polling on memory group.
-
NVML_RUSD_POLL_NONE#
Disable RUSD polling on all metric groups.
-
NVML_RUSD_POLL_PCI#
Enable RUSD polling on pci group.
-
NVML_RUSD_POLL_PERF#
Enable RUSD polling on performance group.
-
NVML_RUSD_POLL_POWER#
Enable RUSD polling on power group.
-
NVML_RUSD_POLL_PROC_UTIL#
Enable RUSD polling on process utilization group.
-
NVML_RUSD_POLL_THERMAL#
Enable RUSD polling on thermal group.
-
NVML_SINGLE_BIT_ECC#
Single bit ECC errors.
- Deprecated:
Mapped to NVML_MEMORY_ERROR_TYPE_CORRECTED
-
nvmlClockOffset_v1#
Version macro for nvmlClockOffset_v1_t.
-
nvmlDeviceCurrentClockFreqs_v1#
Version macro for nvmlDeviceCurrentClockFreqs_v1_t.
-
nvmlDevicePerfModes_v1#
Version macro for nvmlDevicePerfModes_v1_t.
-
nvmlDramEncryptionInfo_v1#
Version macro for nvmlDramEncryptionInfo_v1_t.
-
nvmlEccBitType_t#
ECC bit types.
- Deprecated:
See nvmlMemoryErrorType_t for a more flexible type
-
nvmlEccSramErrorStatus_v1#
Version macro for nvmlEccSramErrorStatus_v1_t.
-
nvmlEccSramUniqueUncorrectedErrorCounts_v1#
Version macro for nvmlEccSramUniqueUncorrectedErrorCounts_v1_t.
-
nvmlFanSpeedInfo_v1#
Version macro for nvmlFanSpeedInfo_v1_t.
-
nvmlFlagDefault#
Generic flag used to specify the default behavior of some functions. See description of particular functions for details.
Default flag. Generic flag used to force some behavior. See description of particular functions for details.
-
nvmlFlagForce#
Force flag.
-
nvmlMarginTemperature_v1#
Version macro for nvmlMarginTemperature_v1_t.
-
nvmlPlatformInfo_v1#
Version macro for nvmlPlatformInfo_v1_t.
-
nvmlPlatformInfo_v2#
Version macro for nvmlPlatformInfo_v2_t.
-
nvmlPowerValue_v2#
Version macro for nvmlPowerValue_v2_t.
-
nvmlProcessesUtilizationInfo_v1#
-
nvmlRusdSettings_v1#
Version macro for nvmlRusdSettings_v1_t.
Enumerations#
-
enum nvmlBrandType_t#
The Brand of the GPU
Values:
-
enumerator NVML_BRAND_UNKNOWN#
-
enumerator NVML_BRAND_QUADRO#
-
enumerator NVML_BRAND_TESLA#
-
enumerator NVML_BRAND_NVS#
-
enumerator NVML_BRAND_GRID#
-
enumerator NVML_BRAND_GEFORCE#
-
enumerator NVML_BRAND_TITAN#
-
enumerator NVML_BRAND_NVIDIA_VAPPS#
-
enumerator NVML_BRAND_NVIDIA_VPC#
-
enumerator NVML_BRAND_NVIDIA_VCS#
-
enumerator NVML_BRAND_NVIDIA_VWS#
-
enumerator NVML_BRAND_NVIDIA_CLOUD_GAMING#
-
enumerator NVML_BRAND_NVIDIA_VGAMING#
-
enumerator NVML_BRAND_QUADRO_RTX#
-
enumerator NVML_BRAND_NVIDIA_RTX#
-
enumerator NVML_BRAND_NVIDIA#
-
enumerator NVML_BRAND_GEFORCE_RTX#
-
enumerator NVML_BRAND_TITAN_RTX#
-
enumerator NVML_BRAND_NVIDIA_DLA#
-
enumerator NVML_BRAND_NVIDIA_VGAMEDEV#
-
enumerator NVML_BRAND_NVIDIA_NPU#
-
enumerator NVML_BRAND_COUNT#
-
enum nvmlClockId_t#
Clock Ids.
These are used in combination with nvmlClockType_t to specify a single clock value.
Values:
-
enumerator NVML_CLOCK_ID_CURRENT#
Current actual clock value.
-
enumerator NVML_CLOCK_ID_APP_CLOCK_TARGET#
Target application clock. Deprecated, do not use.
-
enumerator NVML_CLOCK_ID_APP_CLOCK_DEFAULT#
Default application clock target Deprecated, do not use.
-
enumerator NVML_CLOCK_ID_CUSTOMER_BOOST_MAX#
OEM-defined maximum clock rate.
-
enumerator NVML_CLOCK_ID_COUNT#
Count of Clock Ids.
-
enumerator NVML_CLOCK_ID_CURRENT#
-
enum nvmlClockType_t#
Clock types.
All speeds are in Mhz.
Values:
-
enumerator NVML_CLOCK_GRAPHICS#
Graphics clock domain.
-
enumerator NVML_CLOCK_SM#
SM clock domain.
-
enumerator NVML_CLOCK_MEM#
Memory clock domain.
-
enumerator NVML_CLOCK_VIDEO#
Video encoder/decoder clock domain.
-
enumerator NVML_CLOCK_COUNT#
Count of clock types.
-
enumerator NVML_CLOCK_GRAPHICS#
-
enum nvmlComputeMode_t#
Compute mode.
NVML_COMPUTEMODE_EXCLUSIVE_PROCESS was added in CUDA 4.0. Earlier CUDA versions supported a single exclusive mode, which is equivalent to NVML_COMPUTEMODE_EXCLUSIVE_THREAD in CUDA 4.0 and beyond.
Values:
-
enumerator NVML_COMPUTEMODE_DEFAULT#
Default compute mode — multiple contexts per device.
-
enumerator NVML_COMPUTEMODE_EXCLUSIVE_THREAD#
Support Removed.
-
enumerator NVML_COMPUTEMODE_PROHIBITED#
Compute-prohibited mode — no contexts per device.
-
enumerator NVML_COMPUTEMODE_EXCLUSIVE_PROCESS#
Compute-exclusive-process mode — only one context per device, usable from multiple threads at a time.
-
enumerator NVML_COMPUTEMODE_COUNT#
-
enumerator NVML_COMPUTEMODE_DEFAULT#
-
enum nvmlDriverModel_t#
Driver models.
Windows only.
Values:
-
enumerator NVML_DRIVER_WDDM#
WDDM driver model — GPU treated as a display device.
-
enumerator NVML_DRIVER_WDM#
WDM (TCC) model (deprecated) — GPU treated as a generic compute device.
-
enumerator NVML_DRIVER_MCDM#
MCDM driver model — GPU treated as a Microsoft compute device.
-
enumerator NVML_DRIVER_WDDM#
-
enum nvmlEccCounterType_t#
ECC counter types.
Note: Volatile counts are reset each time the driver loads. On Windows this is once per boot. On Linux this can be more frequent. On Linux the driver unloads when no active clients exist. If persistence mode is enabled or there is always a driver client active (e.g. X11), then Linux also sees per-boot behavior. If not, volatile counts are reset each time a compute app is run.
Values:
-
enumerator NVML_VOLATILE_ECC#
Volatile counts are reset each time the driver loads.
-
enumerator NVML_AGGREGATE_ECC#
Aggregate counts persist across reboots (i.e. for the lifetime of the device)
-
enumerator NVML_ECC_COUNTER_TYPE_COUNT#
Count of memory counter types.
-
enumerator NVML_VOLATILE_ECC#
-
enum nvmlEnableState_t#
Generic enable/disable enum.
Values:
-
enumerator NVML_FEATURE_DISABLED#
Feature disabled.
-
enumerator NVML_FEATURE_ENABLED#
Feature enabled.
-
enumerator NVML_FEATURE_DISABLED#
-
enum nvmlGpuOperationMode_t#
GPU Operation Mode.
GOM allows to reduce power usage and optimize GPU throughput by disabling GPU features.
Each GOM is designed to meet specific user needs.
Values:
-
enumerator NVML_GOM_ALL_ON#
Everything is enabled and running at full speed.
-
enumerator NVML_GOM_COMPUTE#
Designed for running only compute tasks. Graphics operations are not allowed.
-
enumerator NVML_GOM_LOW_DP#
Designed for running graphics applications that don’t require high bandwidth double precision.
-
enumerator NVML_GOM_ALL_ON#
-
enum nvmlGpuUtilizationDomainId_t#
Represents the GPU utilization domains.
Values:
-
enumerator NVML_GPU_UTILIZATION_DOMAIN_GPU#
Graphics engine domain.
-
enumerator NVML_GPU_UTILIZATION_DOMAIN_FB#
Frame buffer domain.
-
enumerator NVML_GPU_UTILIZATION_DOMAIN_VID#
Video engine domain.
-
enumerator NVML_GPU_UTILIZATION_DOMAIN_BUS#
Bus interface domain.
-
enumerator NVML_GPU_UTILIZATION_DOMAIN_GPU#
-
enum nvmlInforomObject_t#
Available infoROM objects.
Values:
-
enumerator NVML_INFOROM_OEM#
An object defined by OEM.
-
enumerator NVML_INFOROM_ECC#
The ECC object determining the level of ECC support.
-
enumerator NVML_INFOROM_POWER#
The power management object.
-
enumerator NVML_INFOROM_DEN#
DRAM Encryption object.
-
enumerator NVML_INFOROM_COUNT#
This counts the number of infoROM objects the driver knows about.
-
enumerator NVML_INFOROM_OEM#
-
enum nvmlMemoryErrorType_t#
Memory error types.
Values:
-
enumerator NVML_MEMORY_ERROR_TYPE_CORRECTED#
A memory error that was corrected.
For ECC errors, these are single bit errors For Texture memory, these are errors fixed by resend
-
enumerator NVML_MEMORY_ERROR_TYPE_UNCORRECTED#
A memory error that was not corrected.
For ECC errors, these are double bit errors For Texture memory, these are errors where the resend fails
-
enumerator NVML_MEMORY_ERROR_TYPE_COUNT#
Count of memory error types.
-
enumerator NVML_MEMORY_ERROR_TYPE_CORRECTED#
-
enum nvmlMemoryLocation_t#
See nvmlDeviceGetMemoryErrorCounter.
Values:
-
enumerator NVML_MEMORY_LOCATION_L1_CACHE#
GPU L1 Cache.
-
enumerator NVML_MEMORY_LOCATION_L2_CACHE#
GPU L2 Cache.
-
enumerator NVML_MEMORY_LOCATION_DRAM#
Turing+ DRAM.
-
enumerator NVML_MEMORY_LOCATION_DEVICE_MEMORY#
GPU Device Memory.
-
enumerator NVML_MEMORY_LOCATION_REGISTER_FILE#
GPU Register File.
-
enumerator NVML_MEMORY_LOCATION_TEXTURE_MEMORY#
GPU Texture Memory.
-
enumerator NVML_MEMORY_LOCATION_TEXTURE_SHM#
Shared memory.
-
enumerator NVML_MEMORY_LOCATION_CBU#
CBU.
-
enumerator NVML_MEMORY_LOCATION_SRAM#
Turing+ SRAM.
-
enumerator NVML_MEMORY_LOCATION_COUNT#
This counts the number of memory locations the driver knows about.
-
enumerator NVML_MEMORY_LOCATION_L1_CACHE#
-
enum nvmlPageRetirementCause_t#
Causes for page retirement.
Values:
-
enumerator NVML_PAGE_RETIREMENT_CAUSE_MULTIPLE_SINGLE_BIT_ECC_ERRORS#
Page was retired due to multiple single bit ECC error.
-
enumerator NVML_PAGE_RETIREMENT_CAUSE_DOUBLE_BIT_ECC_ERROR#
Page was retired due to double bit ECC error.
-
enumerator NVML_PAGE_RETIREMENT_CAUSE_COUNT#
-
enumerator NVML_PAGE_RETIREMENT_CAUSE_MULTIPLE_SINGLE_BIT_ECC_ERRORS#
-
enum nvmlPstates_t#
Allowed PStates.
Values:
-
enumerator NVML_PSTATE_0#
Performance state 0 — Maximum Performance.
-
enumerator NVML_PSTATE_1#
Performance state 1.
-
enumerator NVML_PSTATE_2#
Performance state 2.
-
enumerator NVML_PSTATE_3#
Performance state 3.
-
enumerator NVML_PSTATE_4#
Performance state 4.
-
enumerator NVML_PSTATE_5#
Performance state 5.
-
enumerator NVML_PSTATE_6#
Performance state 6.
-
enumerator NVML_PSTATE_7#
Performance state 7.
-
enumerator NVML_PSTATE_8#
Performance state 8.
-
enumerator NVML_PSTATE_9#
Performance state 9.
-
enumerator NVML_PSTATE_10#
Performance state 10.
-
enumerator NVML_PSTATE_11#
Performance state 11.
-
enumerator NVML_PSTATE_12#
Performance state 12.
-
enumerator NVML_PSTATE_13#
Performance state 13.
-
enumerator NVML_PSTATE_14#
Performance state 14.
-
enumerator NVML_PSTATE_15#
Performance state 15 — Minimum Performance.
-
enumerator NVML_PSTATE_UNKNOWN#
Unknown performance state.
-
enumerator NVML_PSTATE_0#
-
enum nvmlRestrictedAPI_t#
API types that allow changes to default permission restrictions.
Values:
-
enumerator NVML_RESTRICTED_API_SET_APPLICATION_CLOCKS#
APIs that change application clocks, see nvmlDeviceSetApplicationsClocks and see nvmlDeviceResetApplicationsClocks. Deprecated, keeping definition for backward compatibility.
-
enumerator NVML_RESTRICTED_API_SET_AUTO_BOOSTED_CLOCKS#
APIs that enable/disable Auto Boosted clocks see nvmlDeviceSetAutoBoostedClocksEnabled.
-
enumerator NVML_RESTRICTED_API_COUNT#
-
enumerator NVML_RESTRICTED_API_SET_APPLICATION_CLOCKS#
-
enum nvmlReturn_t#
Return values for NVML API calls.
Values:
-
enumerator NVML_SUCCESS#
The operation was successful.
-
enumerator NVML_ERROR_UNINITIALIZED#
NVML was not first initialized with nvmlInit()
-
enumerator NVML_ERROR_INVALID_ARGUMENT#
A supplied argument is invalid.
-
enumerator NVML_ERROR_NOT_SUPPORTED#
The requested operation is not available on target device.
-
enumerator NVML_ERROR_NO_PERMISSION#
The current user does not have permission for operation.
-
enumerator NVML_ERROR_ALREADY_INITIALIZED#
Deprecated: Multiple initializations are now allowed through ref counting.
-
enumerator NVML_ERROR_NOT_FOUND#
A query to find an object was unsuccessful.
-
enumerator NVML_ERROR_INSUFFICIENT_SIZE#
An input argument is not large enough.
-
enumerator NVML_ERROR_INSUFFICIENT_POWER#
A device’s external power cables are not properly attached.
-
enumerator NVML_ERROR_DRIVER_NOT_LOADED#
NVIDIA driver is not loaded.
-
enumerator NVML_ERROR_TIMEOUT#
User provided timeout passed.
-
enumerator NVML_ERROR_IRQ_ISSUE#
NVIDIA Kernel detected an interrupt issue with a GPU.
-
enumerator NVML_ERROR_LIBRARY_NOT_FOUND#
NVML Shared Library couldn’t be found or loaded.
-
enumerator NVML_ERROR_FUNCTION_NOT_FOUND#
Local version of NVML doesn’t implement this function.
-
enumerator NVML_ERROR_CORRUPTED_INFOROM#
infoROM is corrupted
-
enumerator NVML_ERROR_GPU_IS_LOST#
The GPU has fallen off the bus or has otherwise become inaccessible.
-
enumerator NVML_ERROR_RESET_REQUIRED#
The GPU requires a reset before it can be used again.
-
enumerator NVML_ERROR_OPERATING_SYSTEM#
The GPU control device has been blocked by the operating system/cgroups.
-
enumerator NVML_ERROR_LIB_RM_VERSION_MISMATCH#
RM detects a driver/library version mismatch.
-
enumerator NVML_ERROR_IN_USE#
An operation cannot be performed because the GPU is currently in use.
-
enumerator NVML_ERROR_MEMORY#
Insufficient memory.
-
enumerator NVML_ERROR_NO_DATA#
No data.
-
enumerator NVML_ERROR_VGPU_ECC_NOT_SUPPORTED#
The requested vgpu operation is not available on target device, becasue ECC is enabled.
-
enumerator NVML_ERROR_INSUFFICIENT_RESOURCES#
Ran out of critical resources, other than memory.
-
enumerator NVML_ERROR_FREQ_NOT_SUPPORTED#
Ran out of critical resources, other than memory.
-
enumerator NVML_ERROR_ARGUMENT_VERSION_MISMATCH#
The provided version is invalid/unsupported.
-
enumerator NVML_ERROR_DEPRECATED#
The requested functionality has been deprecated.
-
enumerator NVML_ERROR_NOT_READY#
The system is not ready for the request.
-
enumerator NVML_ERROR_GPU_NOT_FOUND#
No GPUs were found.
-
enumerator NVML_ERROR_INVALID_STATE#
Resource not in correct state to perform requested operation.
-
enumerator NVML_ERROR_RESET_TYPE_NOT_SUPPORTED#
Reset not supported for given device/parameters.
-
enumerator NVML_ERROR_UNKNOWN#
An internal driver error occurred.
-
enumerator NVML_SUCCESS#
-
enum nvmlTemperatureSensors_t#
Temperature sensors.
Values:
-
enumerator NVML_TEMPERATURE_GPU#
Temperature sensor for the GPU die.
-
enumerator NVML_TEMPERATURE_GPU_MAX#
Temperature from the hottest part of the GPU die.
-
enumerator NVML_TEMPERATURE_COUNT#
-
enumerator NVML_TEMPERATURE_GPU#
-
enum nvmlTemperatureThresholds_t#
Temperature thresholds.
Values:
-
enumerator NVML_TEMPERATURE_THRESHOLD_SHUTDOWN#
Temperature at which the GPU will shut down for HW protection.
-
enumerator NVML_TEMPERATURE_THRESHOLD_SLOWDOWN#
Temperature at which the GPU will begin HW slowdown.
-
enumerator NVML_TEMPERATURE_THRESHOLD_MEM_MAX#
Memory Temperature at which the GPU will begin SW slowdown.
-
enumerator NVML_TEMPERATURE_THRESHOLD_GPU_MAX#
GPU Temperature at which the GPU can be throttled below base clock.
-
enumerator NVML_TEMPERATURE_THRESHOLD_ACOUSTIC_MIN#
Minimum GPU Temperature that can be set as acoustic threshold.
-
enumerator NVML_TEMPERATURE_THRESHOLD_ACOUSTIC_CURR#
Current temperature that is set as acoustic threshold.
-
enumerator NVML_TEMPERATURE_THRESHOLD_ACOUSTIC_MAX#
Maximum GPU temperature that can be set as acoustic threshold.
-
enumerator NVML_TEMPERATURE_THRESHOLD_GPS_CURR#
Current temperature that is set as gps threshold.
-
enumerator NVML_TEMPERATURE_THRESHOLD_COUNT#
-
enumerator NVML_TEMPERATURE_THRESHOLD_SHUTDOWN#
Typedefs#
-
typedef unsigned int nvmlBusType_t#
-
typedef nvmlClockOffset_v1_t nvmlClockOffset_t#
-
typedef unsigned int nvmlDeviceArchitecture_t#
-
typedef nvmlDeviceCurrentClockFreqs_v1_t nvmlDeviceCurrentClockFreqs_t#
-
typedef nvmlDevicePerfModes_v1_t nvmlDevicePerfModes_t#
-
typedef nvmlDramEncryptionInfo_v1_t nvmlDramEncryptionInfo_t#
-
typedef nvmlEccSramErrorStatus_v1_t nvmlEccSramErrorStatus_t#
-
typedef nvmlEccSramUniqueUncorrectedErrorCounts_v1_t nvmlEccSramUniqueUncorrectedErrorCounts_t#
-
typedef unsigned int nvmlFanControlPolicy_t#
-
typedef nvmlFanSpeedInfo_v1_t nvmlFanSpeedInfo_t#
-
typedef nvmlMarginTemperature_v1_t nvmlMarginTemperature_t#
-
typedef nvmlPlatformInfo_v2_t nvmlPlatformInfo_t#
-
typedef unsigned char nvmlPowerScopeType_t#
-
typedef unsigned int nvmlPowerSource_t#
-
typedef nvmlProcessesUtilizationInfo_v1_t nvmlProcessesUtilizationInfo_t#