NVML API 参考指南 (PDF) - vR570 (旧版本) - 最近更新于 2025 年 1 月 29 日 - 发送反馈

4.33. NvmlClocksEventReasons

定义

#define nvmlClocksEventReasonAll
#define nvmlClocksEventReasonApplicationsClocksSetting 0x0000000000000002LL
#define nvmlClocksEventReasonDisplayClockSetting 0x0000000000000100LL
#define nvmlClocksEventReasonGpuIdle 0x0000000000000001LL
#define nvmlClocksEventReasonNone 0x0000000000000000LL
#define nvmlClocksEventReasonSwPowerCap 0x0000000000000004LL
#define nvmlClocksEventReasonSwThermalSlowdown 0x0000000000000020LL
#define nvmlClocksEventReasonSyncBoost 0x0000000000000010LL
#define nvmlClocksThrottleReasonAll nvmlClocksEventReasonAll
#define nvmlClocksThrottleReasonApplicationsClocksSetting
#define nvmlClocksThrottleReasonDisplayClockSetting
#define nvmlClocksThrottleReasonGpuIdle
#define nvmlClocksThrottleReasonHwPowerBrakeSlowdown 0x0000000000000080LL
#define nvmlClocksThrottleReasonHwSlowdown 0x0000000000000008LL
#define nvmlClocksThrottleReasonHwThermalSlowdown 0x0000000000000040LL
#define nvmlClocksThrottleReasonNone
#define nvmlClocksThrottleReasonSwPowerCap
#define nvmlClocksThrottleReasonSwThermalSlowdown
#define nvmlClocksThrottleReasonSyncBoost
#define nvmlClocksThrottleReasonUserDefinedClocks

定义

#define nvmlClocksEventReasonAll

位掩码,表示所有支持的时钟节流原因。未来可能会在此列表中添加新的原因。

(nvmlClocksThrottleReasonNone \ | nvmlClocksEventReasonGpuIdle \ | nvmlClocksEventReasonApplicationsClocksSetting \ | nvmlClocksEventReasonSwPowerCap \ | nvmlClocksThrottleReasonHwSlowdown \ | nvmlClocksEventReasonSyncBoost \ | nvmlClocksEventReasonSwThermalSlowdown \ | nvmlClocksThrottleReasonHwThermalSlowdown \ | nvmlClocksThrottleReasonHwPowerBrakeSlowdown \ | nvmlClocksEventReasonDisplayClockSetting \ )

#define nvmlClocksEventReasonApplicationsClocksSetting 0x0000000000000002LL

GPU 时钟受到应用程序时钟当前设置的限制

另请参阅

nvmlDeviceSetApplicationsClocks

nvmlDeviceGetApplicationsClock

#define nvmlClocksEventReasonDisplayClockSetting 0x0000000000000100LL

GPU 时钟受到显示时钟当前设置的限制

另请参阅

错误 1997531

#define nvmlClocksEventReasonGpuIdle 0x0000000000000001LL

GPU 上没有任何程序运行,时钟降至空闲状态

注意

此限制器可能会在以后的版本中移除

#define nvmlClocksEventReasonNone 0x0000000000000000LL

位掩码,表示没有时钟节流

时钟尽可能高。

#define nvmlClocksEventReasonSwPowerCap 0x0000000000000004LL

时钟已优化,以确保不超过当前设置的功率限制

另请参阅

nvmlDeviceGetPowerUsage

nvmlDeviceSetPowerManagementLimit

nvmlDeviceGetPowerManagementLimit

#define nvmlClocksEventReasonSwThermalSlowdown 0x0000000000000020LL

软件热降频

当前时钟已优化,以确保以下情况为真

  • 当前 GPU 温度不超过 GPU 最大工作温度

  • 当前显存温度不超过显存最大工作温度

#define nvmlClocksEventReasonSyncBoost 0x0000000000000010LL

同步加速

为了最大限度地提高每瓦性能,此 GPU 已通过 nvidia-smi 或 DCGM 添加到同步加速组。同步加速组中的所有 GPU 将提升到整个组中可能的最低时钟频率。查看系统中其他 GPU 的节流原因,了解为什么这些 GPU 将此 GPU 保持在较低的时钟频率。

#define nvmlClocksThrottleReasonAll nvmlClocksEventReasonAll
#define nvmlClocksThrottleReasonApplicationsClocksSetting

nvmlClocksEventReasonApplicationsClocksSetting

#define nvmlClocksThrottleReasonDisplayClockSetting

nvmlClocksEventReasonDisplayClockSetting

#define nvmlClocksThrottleReasonGpuIdle

nvmlClocksEventReasonGpuIdle

#define nvmlClocksThrottleReasonHwPowerBrakeSlowdown 0x0000000000000080LL

硬件电源制动降频(将核心时钟频率降低 2 倍或更多)已启用

这是以下情况的指示

  • 外部电源制动断言被触发(例如,由系统电源)

另请参阅

nvmlDeviceGetTemperature

nvmlDeviceGetTemperatureThreshold

nvmlDeviceGetPowerUsage

#define nvmlClocksThrottleReasonHwSlowdown 0x0000000000000008LL

硬件降频(将核心时钟频率降低 2 倍或更多)已启用

这是以下情况的指示

  • 温度过高

  • 外部电源制动断言被触发(例如,由系统电源)

  • 功耗过高,快速触发保护正在降低时钟频率

  • 也可能在 PState 或时钟更改期间报告
    • 此行为可能会在以后的版本中移除。

另请参阅

nvmlDeviceGetTemperature

nvmlDeviceGetTemperatureThreshold

nvmlDeviceGetPowerUsage

#define nvmlClocksThrottleReasonHwThermalSlowdown 0x0000000000000040LL

硬件热降频(将核心时钟频率降低 2 倍或更多)已启用

这是以下情况的指示

  • 温度过高

另请参阅

nvmlDeviceGetTemperature

nvmlDeviceGetTemperatureThreshold

nvmlDeviceGetPowerUsage

#define nvmlClocksThrottleReasonNone

nvmlClocksEventReasonNone

#define nvmlClocksThrottleReasonSwPowerCap

nvmlClocksEventReasonSwPowerCap

#define nvmlClocksThrottleReasonSwThermalSlowdown

nvmlClocksEventReasonSwThermalSlowdown

#define nvmlClocksThrottleReasonSyncBoost

nvmlClocksEventReasonSyncBoost

#define nvmlClocksThrottleReasonUserDefinedClocks
已弃用

已重命名为 nvmlClocksThrottleReasonApplicationsClocksSetting,因为该名称更准确地描述了情况。

nvmlClocksEventReasonApplicationsClocksSetting


NVML API 参考指南 (PDF) - vR570 (旧版本) - 最近更新于 2025 年 1 月 29 日 - 发送反馈