NVML API Reference Guide (PDF) - vR384 (older) - Last updated October 31, 2017 - Send Feedback

2.26. NvmlClocksThrottleReasons

Defines

#define nvmlClocksThrottleReasonAll
#define nvmlClocksThrottleReasonApplicationsClocksSetting 0x0000000000000002LL
#define nvmlClocksThrottleReasonGpuIdle 0x0000000000000001LL
#define nvmlClocksThrottleReasonHwSlowdown 0x0000000000000008LL
#define nvmlClocksThrottleReasonNone 0x0000000000000000LL
#define nvmlClocksThrottleReasonSwPowerCap 0x0000000000000004LL
#define nvmlClocksThrottleReasonSwThermalSlowdown 0x0000000000000020LL
#define nvmlClocksThrottleReasonSyncBoost 0x0000000000000010LL
#define nvmlClocksThrottleReasonUserDefinedClocks

Defines

#define nvmlClocksThrottleReasonAll

Bit mask representing all supported clocks throttling reasons New reasons might be added to this list in the future

Value

(nvmlClocksThrottleReasonNone \ | nvmlClocksThrottleReasonGpuIdle \ | nvmlClocksThrottleReasonApplicationsClocksSetting \ | nvmlClocksThrottleReasonSwPowerCap \ | nvmlClocksThrottleReasonHwSlowdown \ | nvmlClocksThrottleReasonSyncBoost \ | nvmlClocksThrottleReasonSwThermalSlowdown \ )

#define nvmlClocksThrottleReasonApplicationsClocksSetting 0x0000000000000002LL

GPU clocks are limited by current setting of applications clocks

See also:

nvmlDeviceSetApplicationsClocks

nvmlDeviceGetApplicationsClock

#define nvmlClocksThrottleReasonGpuIdle 0x0000000000000001LL

Nothing is running on the GPU and the clocks are dropping to Idle state

Note:

This limiter may be removed in a later release

#define nvmlClocksThrottleReasonHwSlowdown 0x0000000000000008LL

HW Slowdown (reducing the core clocks by a factor of 2 or more) is engaged

This is an indicator of:

  • temperature being too high

  • External Power Brake Assertion is triggered (e.g. by the system power supply)

  • Power draw is too high and Fast Trigger protection is reducing the clocks

  • May be also reported during PState or clock change
    • This behavior may be removed in a later release.

See also:

nvmlDeviceGetTemperature

nvmlDeviceGetTemperatureThreshold

nvmlDeviceGetPowerUsage

#define nvmlClocksThrottleReasonNone 0x0000000000000000LL

Bit mask representing no clocks throttling

Clocks are as high as possible.

#define nvmlClocksThrottleReasonSwPowerCap 0x0000000000000004LL

SW Power Scaling algorithm is reducing the clocks below requested clocks

See also:

nvmlDeviceGetPowerUsage

nvmlDeviceSetPowerManagementLimit

nvmlDeviceGetPowerManagementLimit

#define nvmlClocksThrottleReasonSwThermalSlowdown 0x0000000000000020LL

SW Thermal Slowdown

This is an indicator of one or more of the following:

  • Current GPU temperature above the GPU Max Operating Temperature

  • Current memory temperature above the Memory Max Operating Temperature

#define nvmlClocksThrottleReasonSyncBoost 0x0000000000000010LL

Sync Boost

This GPU has been added to a Sync boost group with nvidia-smi or DCGM in order to maximize performance per watt. All GPUs in the sync boost group will boost to the minimum possible clocks across the entire group. Look at the throttle reasons for other GPUs in the system to see why those GPUs are holding this one at lower clocks.

#define nvmlClocksThrottleReasonUserDefinedClocks
Deprecated

Renamed to nvmlClocksThrottleReasonApplicationsClocksSetting as the name describes the situation more accurately.

Value

nvmlClocksThrottleReasonApplicationsClocksSetting


NVML API Reference Guide (PDF) - vR384 (older) - Last updated October 31, 2017 - Send Feedback