Device Enums(3)

NAME
Device Enums -

  Defines

#define nvmlFlagDefault 0x00
Generic flag used to specify the default behavior of some functions. See description of particular functions for details.
#define nvmlFlagForce 0x01
Generic flag used to force some behavior. See description of particular functions for details.
#define nvmlEccBitType_t nvmlMemoryErrorType_t
#define NVML_SINGLE_BIT_ECC NVML_MEMORY_ERROR_TYPE_CORRECTED
#define NVML_DOUBLE_BIT_ECC NVML_MEMORY_ERROR_TYPE_UNCORRECTED

  Enumerations

enum nvmlEnableState_t { NVML_FEATURE_DISABLED = 0, NVML_FEATURE_ENABLED = 1 }
enum nvmlBrandType_t
enum nvmlTemperatureThresholds_t
enum nvmlTemperatureSensors_t { NVML_TEMPERATURE_GPU = 0 }
enum nvmlComputeMode_t { NVML_COMPUTEMODE_DEFAULT = 0, NVML_COMPUTEMODE_EXCLUSIVE_THREAD = 1, NVML_COMPUTEMODE_PROHIBITED = 2, NVML_COMPUTEMODE_EXCLUSIVE_PROCESS = 3 }
enum nvmlMemoryErrorType_t { NVML_MEMORY_ERROR_TYPE_CORRECTED = 0, NVML_MEMORY_ERROR_TYPE_UNCORRECTED = 1, NVML_MEMORY_ERROR_TYPE_COUNT }
enum nvmlEccCounterType_t { NVML_VOLATILE_ECC = 0, NVML_AGGREGATE_ECC = 1, NVML_ECC_COUNTER_TYPE_COUNT }
enum nvmlClockType_t { NVML_CLOCK_GRAPHICS = 0, NVML_CLOCK_SM = 1, NVML_CLOCK_MEM = 2, NVML_CLOCK_VIDEO = 3 }
enum nvmlClockId_t { NVML_CLOCK_ID_CURRENT = 0, NVML_CLOCK_ID_APP_CLOCK_TARGET = 1, NVML_CLOCK_ID_APP_CLOCK_DEFAULT = 2, NVML_CLOCK_ID_CUSTOMER_BOOST_MAX = 3 }
enum nvmlDriverModel_t { NVML_DRIVER_WDDM = 0, NVML_DRIVER_WDM = 1 }
enum nvmlPstates_t { NVML_PSTATE_0 = 0, NVML_PSTATE_1 = 1, NVML_PSTATE_2 = 2, NVML_PSTATE_3 = 3, NVML_PSTATE_4 = 4, NVML_PSTATE_5 = 5, NVML_PSTATE_6 = 6, NVML_PSTATE_7 = 7, NVML_PSTATE_8 = 8, NVML_PSTATE_9 = 9, NVML_PSTATE_10 = 10, NVML_PSTATE_11 = 11, NVML_PSTATE_12 = 12, NVML_PSTATE_13 = 13, NVML_PSTATE_14 = 14, NVML_PSTATE_15 = 15, NVML_PSTATE_UNKNOWN = 32 }
enum nvmlGpuOperationMode_t { NVML_GOM_ALL_ON = 0, NVML_GOM_COMPUTE = 1, NVML_GOM_LOW_DP = 2 }
enum nvmlInforomObject_t { NVML_INFOROM_OEM = 0, NVML_INFOROM_ECC = 1, NVML_INFOROM_POWER = 2, NVML_INFOROM_COUNT }
enum nvmlReturn_t { NVML_SUCCESS = 0, NVML_ERROR_UNINITIALIZED = 1, NVML_ERROR_INVALID_ARGUMENT = 2, NVML_ERROR_NOT_SUPPORTED = 3, NVML_ERROR_NO_PERMISSION = 4, NVML_ERROR_ALREADY_INITIALIZED = 5, NVML_ERROR_NOT_FOUND = 6, NVML_ERROR_INSUFFICIENT_SIZE = 7, NVML_ERROR_INSUFFICIENT_POWER = 8, NVML_ERROR_DRIVER_NOT_LOADED = 9, NVML_ERROR_TIMEOUT = 10, NVML_ERROR_IRQ_ISSUE = 11, NVML_ERROR_LIBRARY_NOT_FOUND = 12, NVML_ERROR_FUNCTION_NOT_FOUND = 13, NVML_ERROR_CORRUPTED_INFOROM = 14, NVML_ERROR_GPU_IS_LOST = 15, NVML_ERROR_RESET_REQUIRED = 16, NVML_ERROR_OPERATING_SYSTEM = 17, NVML_ERROR_LIB_RM_VERSION_MISMATCH = 18, NVML_ERROR_IN_USE = 19, NVML_ERROR_UNKNOWN = 999 }
enum nvmlMemoryLocation_t { NVML_MEMORY_LOCATION_L1_CACHE = 0, NVML_MEMORY_LOCATION_L2_CACHE = 1, NVML_MEMORY_LOCATION_DEVICE_MEMORY = 2, NVML_MEMORY_LOCATION_REGISTER_FILE = 3, NVML_MEMORY_LOCATION_TEXTURE_MEMORY = 4, NVML_MEMORY_LOCATION_TEXTURE_SHM = 5, NVML_MEMORY_LOCATION_COUNT }
enum nvmlPageRetirementCause_t { NVML_PAGE_RETIREMENT_CAUSE_MULTIPLE_SINGLE_BIT_ECC_ERRORS = 0, NVML_PAGE_RETIREMENT_CAUSE_DOUBLE_BIT_ECC_ERROR = 1 }
enum nvmlRestrictedAPI_t { NVML_RESTRICTED_API_SET_APPLICATION_CLOCKS = 0, NVML_RESTRICTED_API_SET_AUTO_BOOSTED_CLOCKS = 1 }

Define Documentation

  #define NVML_DOUBLE_BIT_ECC NVML_MEMORY_ERROR_TYPE_UNCORRECTED

Double bit ECC errors

Deprecated
    Mapped to NVML_MEMORY_ERROR_TYPE_UNCORRECTED

  #define NVML_SINGLE_BIT_ECC NVML_MEMORY_ERROR_TYPE_CORRECTED

Single bit ECC errors

Deprecated
    Mapped to NVML_MEMORY_ERROR_TYPE_CORRECTED

  #define nvmlEccBitType_t nvmlMemoryErrorType_t

ECC bit types.

Deprecated
    See nvmlMemoryErrorType_t for a more flexible type

Enumeration Type Documentation

  enum nvmlBrandType_t

* The Brand of the GPU

  enum nvmlClockId_t

Clock Ids. These are used in combination with nvmlClockType_t to specify a single clock value.

Enumerator:

NVML_CLOCK_ID_CURRENT
    Current actual clock value.

NVML_CLOCK_ID_APP_CLOCK_TARGET
    Target application clock.

NVML_CLOCK_ID_APP_CLOCK_DEFAULT
    Default application clock target.

NVML_CLOCK_ID_CUSTOMER_BOOST_MAX
    OEM-defined maximum clock rate.

  enum nvmlClockType_t

Clock types.

All speeds are in Mhz.

Enumerator:

NVML_CLOCK_GRAPHICS
    Graphics clock domain.

NVML_CLOCK_SM
    SM clock domain.

NVML_CLOCK_MEM
    Memory clock domain.

NVML_CLOCK_VIDEO
    Video encoder/decoder clock domain.

  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.

Enumerator:

NVML_COMPUTEMODE_DEFAULT
    Default compute mode -- multiple contexts per device.

NVML_COMPUTEMODE_EXCLUSIVE_THREAD
    Support Removed.

NVML_COMPUTEMODE_PROHIBITED
    Compute-prohibited mode -- no contexts per device.

NVML_COMPUTEMODE_EXCLUSIVE_PROCESS
    Compute-exclusive-process mode -- only one context per device, usable from multiple threads at a time.

  enum nvmlDriverModel_t

Driver models.

Windows only.

Enumerator:

NVML_DRIVER_WDDM
    WDDM driver model -- GPU treated as a display device.

NVML_DRIVER_WDM
    WDM (TCC) model (recommended) -- GPU treated as a generic device.

  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.

Enumerator:

NVML_VOLATILE_ECC
    Volatile counts are reset each time the driver loads.

NVML_AGGREGATE_ECC
    Aggregate counts persist across reboots (i.e. for the lifetime of the device).

NVML_ECC_COUNTER_TYPE_COUNT
    Count of memory counter types.

  enum nvmlEnableState_t

Generic enable/disable enum.

Enumerator:

NVML_FEATURE_DISABLED
    Feature disabled.

NVML_FEATURE_ENABLED
    Feature enabled.

  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.

Enumerator:

NVML_GOM_ALL_ON
    Everything is enabled and running at full speed.

NVML_GOM_COMPUTE
    Designed for running only compute tasks. Graphics operations < are not allowed.

NVML_GOM_LOW_DP
    Designed for running graphics applications that don't require < high bandwidth double precision.

  enum nvmlInforomObject_t

Available infoROM objects.

Enumerator:

NVML_INFOROM_OEM
    An object defined by OEM.

NVML_INFOROM_ECC
    The ECC object determining the level of ECC support.

NVML_INFOROM_POWER
    The power management object.

NVML_INFOROM_COUNT
    This counts the number of infoROM objects the driver knows about.

  enum nvmlMemoryErrorType_t

Memory error types

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

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

NVML_MEMORY_ERROR_TYPE_COUNT
    Count of memory error types.

  enum nvmlMemoryLocation_t

Memory locations

See nvmlDeviceGetMemoryErrorCounter

Enumerator:

NVML_MEMORY_LOCATION_L1_CACHE
    GPU L1 Cache.

NVML_MEMORY_LOCATION_L2_CACHE
    GPU L2 Cache.

NVML_MEMORY_LOCATION_DEVICE_MEMORY
    GPU Device Memory.

NVML_MEMORY_LOCATION_REGISTER_FILE
    GPU Register File.

NVML_MEMORY_LOCATION_TEXTURE_MEMORY
    GPU Texture Memory.

NVML_MEMORY_LOCATION_TEXTURE_SHM
    Shared memory.

NVML_MEMORY_LOCATION_COUNT
    This counts the number of memory locations the driver knows about.

  enum nvmlPageRetirementCause_t

Causes for page retirement

Enumerator:

NVML_PAGE_RETIREMENT_CAUSE_MULTIPLE_SINGLE_BIT_ECC_ERRORS
    Page was retired due to multiple single bit ECC error.

NVML_PAGE_RETIREMENT_CAUSE_DOUBLE_BIT_ECC_ERROR
    Page was retired due to double bit ECC error.

  enum nvmlPstates_t

Allowed PStates.

Enumerator:

NVML_PSTATE_0
    Performance state 0 -- Maximum Performance.

NVML_PSTATE_1
    Performance state 1.

NVML_PSTATE_2
    Performance state 2.

NVML_PSTATE_3
    Performance state 3.

NVML_PSTATE_4
    Performance state 4.

NVML_PSTATE_5
    Performance state 5.

NVML_PSTATE_6
    Performance state 6.

NVML_PSTATE_7
    Performance state 7.

NVML_PSTATE_8
    Performance state 8.

NVML_PSTATE_9
    Performance state 9.

NVML_PSTATE_10
    Performance state 10.

NVML_PSTATE_11
    Performance state 11.

NVML_PSTATE_12
    Performance state 12.

NVML_PSTATE_13
    Performance state 13.

NVML_PSTATE_14
    Performance state 14.

NVML_PSTATE_15
    Performance state 15 -- Minimum Performance.

NVML_PSTATE_UNKNOWN
    Unknown performance state.

  enum nvmlRestrictedAPI_t

API types that allow changes to default permission restrictions

Enumerator:

NVML_RESTRICTED_API_SET_APPLICATION_CLOCKS
    APIs that change application clocks, see nvmlDeviceSetApplicationsClocks < and see nvmlDeviceResetApplicationsClocks.

NVML_RESTRICTED_API_SET_AUTO_BOOSTED_CLOCKS
    APIs that enable/disable Auto Boosted clocks < see nvmlDeviceSetAutoBoostedClocksEnabled.

  enum nvmlReturn_t

Return values for NVML API calls.

Enumerator:

NVML_SUCCESS
    The operation was successful.

NVML_ERROR_UNINITIALIZED
    NVML was not first initialized with nvmlInit().

NVML_ERROR_INVALID_ARGUMENT
    A supplied argument is invalid.

NVML_ERROR_NOT_SUPPORTED
    The requested operation is not available on target device.

NVML_ERROR_NO_PERMISSION
    The current user does not have permission for operation.

NVML_ERROR_ALREADY_INITIALIZED
    Deprecated: Multiple initializations are now allowed through ref counting.

NVML_ERROR_NOT_FOUND
    A query to find an object was unsuccessful.

NVML_ERROR_INSUFFICIENT_SIZE
    An input argument is not large enough.

NVML_ERROR_INSUFFICIENT_POWER
    A device's external power cables are not properly attached.

NVML_ERROR_DRIVER_NOT_LOADED
    NVIDIA driver is not loaded.

NVML_ERROR_TIMEOUT
    User provided timeout passed.

NVML_ERROR_IRQ_ISSUE
    NVIDIA Kernel detected an interrupt issue with a GPU.

NVML_ERROR_LIBRARY_NOT_FOUND
    NVML Shared Library couldn't be found or loaded.

NVML_ERROR_FUNCTION_NOT_FOUND
    Local version of NVML doesn't implement this function.

NVML_ERROR_CORRUPTED_INFOROM
    infoROM is corrupted

NVML_ERROR_GPU_IS_LOST
    The GPU has fallen off the bus or has otherwise become inaccessible.

NVML_ERROR_RESET_REQUIRED
    The GPU requires a reset before it can be used again.

NVML_ERROR_OPERATING_SYSTEM
    The GPU control device has been blocked by the operating system/cgroups.

NVML_ERROR_LIB_RM_VERSION_MISMATCH
    RM detects a driver/library version mismatch.

NVML_ERROR_IN_USE
    An operation cannot be performed because the GPU is currently in use.

NVML_ERROR_UNKNOWN
    An internal driver error occurred.

  enum nvmlTemperatureSensors_t

Temperature sensors.

Enumerator:

NVML_TEMPERATURE_GPU
    Temperature sensor for the GPU die.

  enum nvmlTemperatureThresholds_t

Temperature thresholds.

Author

Generated automatically by Doxygen for NVML from the source code.