]> www.infradead.org Git - users/hch/misc.git/commitdiff
tools/power turbostat: report CoreThr per measurement interval
authorLen Brown <len.brown@intel.com>
Sun, 6 Apr 2025 15:18:39 +0000 (11:18 -0400)
committerLen Brown <len.brown@intel.com>
Sun, 6 Apr 2025 16:21:25 +0000 (12:21 -0400)
The CoreThr column displays total thermal throttling events
since boot time.

Change it to report events during the measurement interval.

This is more useful for showing a user the current conditions.
Total events since boot time are still available to the user via
/sys/devices/system/cpu/cpu*/thermal_throttle/*

Document CoreThr on turbostat.8

Fixes: eae97e053fe30 ("turbostat: Support thermal throttle count print")
Reported-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
Cc: Chen Yu <yu.c.chen@intel.com>
tools/power/x86/turbostat/turbostat.8
tools/power/x86/turbostat/turbostat.c

index 52d727e29ea72f383052557f87b0255f7584c146..144565151e1eeb09d0760d0f3efab8719755b567 100644 (file)
@@ -172,6 +172,8 @@ The system configuration dump (if --quiet is not used) is followed by statistics
 .PP
 \fBPkgTmp\fP Degrees Celsius reported by the per-package Package Thermal Monitor.
 .PP
+\fBCoreThr\fP Core Thermal Throttling events during the measurement interval.  Note that events since boot can be find in /sys/devices/system/cpu/cpu*/thermal_throttle/*
+.PP
 \fBGFX%rc6\fP The percentage of time the GPU is in the "render C6" state, rc6, during the measurement interval. From /sys/class/drm/card0/power/rc6_residency_ms or /sys/class/drm/card0/gt/gt0/rc6_residency_ms or /sys/class/drm/card0/device/tile0/gtN/gtidle/idle_residency_ms depending on the graphics driver being used.
 .PP
 \fBGFXMHz\fP Instantaneous snapshot of what sysfs presents at the end of the measurement interval. From /sys/class/graphics/fb0/device/drm/card0/gt_cur_freq_mhz or /sys/class/drm/card0/gt_cur_freq_mhz or /sys/class/drm/card0/gt/gt0/rps_cur_freq_mhz or /sys/class/drm/card0/device/tile0/gtN/freq0/cur_freq depending on the graphics driver being used.
index 218aca9589230aaf4387091f4c4b28a5ca9914f1..70e17d4ad9b60a80da00eab42a38b7a31f229711 100644 (file)
@@ -3485,7 +3485,7 @@ void delta_core(struct core_data *new, struct core_data *old)
        old->c6 = new->c6 - old->c6;
        old->c7 = new->c7 - old->c7;
        old->core_temp_c = new->core_temp_c;
-       old->core_throt_cnt = new->core_throt_cnt;
+       old->core_throt_cnt = new->core_throt_cnt - old->core_throt_cnt;
        old->mc6_us = new->mc6_us - old->mc6_us;
 
        DELTA_WRAP32(new->core_energy.raw_value, old->core_energy.raw_value);