From de1d1da4549d5a9bbeffa094dcf044e2177280e9 Mon Sep 17 00:00:00 2001 From: jsteube Date: Sun, 26 Jun 2016 16:29:51 +0200 Subject: [PATCH] Disable some of NVMLs useless throttle reasons --- src/shared.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/shared.c b/src/shared.c index 4aedad78c..8cfa46ef9 100644 --- a/src/shared.c +++ b/src/shared.c @@ -3402,11 +3402,17 @@ int hm_get_throttle_with_device_id (const uint device_id) if (hm_NVML_nvmlDeviceGetCurrentClocksThrottleReasons (data.hm_nvml, 1, data.hm_device[device_id].nvml, &clocksThrottleReasons) != NVML_SUCCESS) return -1; if (hm_NVML_nvmlDeviceGetSupportedClocksThrottleReasons (data.hm_nvml, 1, data.hm_device[device_id].nvml, &supportedThrottleReasons) != NVML_SUCCESS) return -1; - clocksThrottleReasons &= supportedThrottleReasons; - + clocksThrottleReasons &= supportedThrottleReasons; + clocksThrottleReasons &= ~nvmlClocksThrottleReasonGpuIdle; + clocksThrottleReasons &= ~nvmlClocksThrottleReasonApplicationsClocksSetting; clocksThrottleReasons &= ~nvmlClocksThrottleReasonUnknown; - return (clocksThrottleReasons > 0); + if (data.kernel_power_final) + { + clocksThrottleReasons &= ~nvmlClocksThrottleReasonHwSlowdown; + } + + return (clocksThrottleReasons != nvmlClocksThrottleReasonNone); } return -1;