#
b60c573d |
| 04-May-2021 |
Len Brown <len.brown@intel.com> |
tools/power turbostat: Support "turbostat --hide idle"
As idle, in particular, can have many columns on some machines... Make it easy to ignore them all at once.
Signed-off-by: Len Brown <len.brown
tools/power turbostat: Support "turbostat --hide idle"
As idle, in particular, can have many columns on some machines... Make it easy to ignore them all at once.
Signed-off-by: Len Brown <len.brown@intel.com>
show more ...
|
#
38c6663a |
| 04-May-2021 |
Len Brown <len.brown@intel.com> |
tools/power turbostat: elevate priority of interval mode
This makes interval mode less likely to see delayed results on a heavily loaded system.
Signed-off-by: Len Brown <len.brown@intel.com>
|
#
1b439f01 |
| 04-May-2021 |
Len Brown <len.brown@intel.com> |
tools/power turbostat: formatting
Spring is here... run a long overdue Lendent on turbostat.c
no functional change
Signed-off-by: Len Brown <len.brown@intel.com>
|
#
55279aef |
| 26-Apr-2021 |
Zhang Rui <rui.zhang@intel.com> |
tools/power turbostat: rename tcc variables
There are two TCC activation temeprature. One is the default TCC activation temperature, also known as TJ_MAX. Another one is the effective TCC activation
tools/power turbostat: rename tcc variables
There are two TCC activation temeprature. One is the default TCC activation temperature, also known as TJ_MAX. Another one is the effective TCC activation temperature, which is the subtraction of default TCC activation temperature and TCC offset.
The name of variable tcc_activation_temp might be misleading here. Thus rename tcc_activation_temp to tj_max, and use tcc_default and tcc_offset to calculate the effective TCC activation temperature.
No functional change in this patch.
Signed-off-by: Zhang Rui <rui.zhang@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
show more ...
|
#
0b9a0b9b |
| 21-Apr-2021 |
Zhang Rui <rui.zhang@intel.com> |
tools/power turbostat: add TCC Offset support
The length of TCC Offset bits varies on different platforms. Decode TCC Offset bits only for the platforms that we have verified. For the others, only s
tools/power turbostat: add TCC Offset support
The length of TCC Offset bits varies on different platforms. Decode TCC Offset bits only for the platforms that we have verified. For the others, only show default TCC activation temperature.
Signed-off-by: Zhang Rui <rui.zhang@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
show more ...
|
#
e9d3092f |
| 25-Apr-2021 |
Zhang Rui <rui.zhang@intel.com> |
tools/power turbostat: save original CPU model
CPU model may get changed in intel_model_duplicates() for code reuse. But there are still some cases we need the original CPU model to handle minor dif
tools/power turbostat: save original CPU model
CPU model may get changed in intel_model_duplicates() for code reuse. But there are still some cases we need the original CPU model to handle minor differences between generations.
Thus save the original CPU model.
Signed-off-by: Zhang Rui <rui.zhang@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
show more ...
|
#
7ab5ff49 |
| 21-Apr-2021 |
Zhang Rui <rui.zhang@intel.com> |
tools/power turbostat: Fix Core C6 residency on Atom CPUs
For Atom CPUs that have core cstate deeper than C6, MSR_CORE_C6_RESIDENCY actually returns the residency for both CC6 and deeper Core cstate
tools/power turbostat: Fix Core C6 residency on Atom CPUs
For Atom CPUs that have core cstate deeper than C6, MSR_CORE_C6_RESIDENCY actually returns the residency for both CC6 and deeper Core cstates. Thus, the real Core C6 residency should be the subtraction of MSR_CORE_C6_RESIDENCY return value and MSR_CORE_C6_RESIDENCY return value.
Signed-off-by: Zhang Rui <rui.zhang@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
show more ...
|
#
aeb01e6d |
| 27-Apr-2021 |
Chen Yu <yu.c.chen@intel.com> |
tools/power turbostat: Print the C-state Pre-wake settings
C-state pre-wake setting[1] is an optimization for some Intel CPUs to be woken up from deep C-states in order to reduce latency. According
tools/power turbostat: Print the C-state Pre-wake settings
C-state pre-wake setting[1] is an optimization for some Intel CPUs to be woken up from deep C-states in order to reduce latency. According to the spec, the BIT30 is the C-state Pre-wake Disable. Expose this setting accordingly. Sample output from turbostat: ... cpu51: MSR_IA32_POWER_CTL: 0x1a00a40059 (C1E auto-promotion: DISabled) C-state Pre-wake: ENabled cpu51: MSR_TURBO_RATIO_LIMIT: 0x2021212121212224 ...
[1] https://intel.github.io/wult/#c-state-pre-wake
Signed-off-by: Chen Yu <yu.c.chen@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
show more ...
|
#
8c69da29 |
| 27-Apr-2021 |
Chen Yu <yu.c.chen@intel.com> |
tools/power turbostat: Enable tsc_tweak for Elkhart Lake and Jasper Lake
It was found that on Elkhart Lake the TSC frequency is driven by a separate crystal-clock domain, which is different from the
tools/power turbostat: Enable tsc_tweak for Elkhart Lake and Jasper Lake
It was found that on Elkhart Lake the TSC frequency is driven by a separate crystal-clock domain, which is different from the BCLK domain which includes mperf. This has result in small different speed thus inconsistence between TSC and the mperf, which caused the Busy% to be higher than 100%. On this platform it seems that the mperf runs faster than tsc when the CPU is 100% utilized: delta tsc(18815473183) < delta mperf(18958403680) for 10 seconds.
To align TSC with mperf, leverage the tsc_tweak mechanism introduced for cores newer than Skylake, so that TSC and mperf would be calculated in the same domain.
Reported-by: Zhang Rui <rui.zhang@intel.com> Signed-off-by: Chen Yu <yu.c.chen@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
show more ...
|
#
1e3ec5cd |
| 25-Mar-2021 |
Randy Dunlap <rdunlap@infradead.org> |
tools/power turbostat: unmark non-kernel-doc comment
Do not mark a comment as kernel-doc notation when it is not meant to be in kernel-doc notation.
Signed-off-by: Randy Dunlap <rdunlap@infradead.o
tools/power turbostat: unmark non-kernel-doc comment
Do not mark a comment as kernel-doc notation when it is not meant to be in kernel-doc notation.
Signed-off-by: Randy Dunlap <rdunlap@infradead.org> Signed-off-by: Len Brown <len.brown@intel.com>
show more ...
|
#
25368d7c |
| 04-May-2021 |
Chen Yu <yu.c.chen@intel.com> |
tools/power/turbostat: Remove Package C6 Retention on Ice Lake Server
Currently the turbostat treats ICX the same way as SKX and shares the code among them. But one difference is that ICX does not s
tools/power/turbostat: Remove Package C6 Retention on Ice Lake Server
Currently the turbostat treats ICX the same way as SKX and shares the code among them. But one difference is that ICX does not support Package C6 Retention, unlike SKX and CLX.
So this patch:
1. Splitting SKX and ICX in turbostat. 2. Removing Package C6 Rentention for ICX.
And after this split, it would be easier to cutomize Ice Lake Server in turbostat in the future.
Suggested-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com> Signed-off-by: Chen Yu <yu.c.chen@intel.com> Reviewed-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com> Tested-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
show more ...
|
#
13a779de |
| 28-Apr-2021 |
Calvin Walton <calvin.walton@kepstin.ca> |
tools/power turbostat: Fix offset overflow issue in index converting
The idx_to_offset() function returns type int (32-bit signed), but MSR_PKG_ENERGY_STAT is u32 and would be interpreted as a negat
tools/power turbostat: Fix offset overflow issue in index converting
The idx_to_offset() function returns type int (32-bit signed), but MSR_PKG_ENERGY_STAT is u32 and would be interpreted as a negative number. The end result is that it hits the if (offset < 0) check in update_msr_sum() which prevents the timer callback from updating the stat in the background when long durations are used. The similar issue exists in offset_to_idx() and update_msr_sum(). Fix this issue by converting the 'int' to 'off_t' accordingly.
Fixes: 9972d5d84d76 ("tools/power turbostat: Enable accumulate RAPL display") Signed-off-by: Calvin Walton <calvin.walton@kepstin.ca> Signed-off-by: Len Brown <len.brown@intel.com>
show more ...
|
#
301b1d3a |
| 28-Apr-2021 |
Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> |
tools/power/turbostat: Fix turbostat for AMD Zen CPUs
It was reported that on Zen+ system turbostat started exiting, which was tracked down to the MSR_PKG_ENERGY_STAT read failing because offset_to_
tools/power/turbostat: Fix turbostat for AMD Zen CPUs
It was reported that on Zen+ system turbostat started exiting, which was tracked down to the MSR_PKG_ENERGY_STAT read failing because offset_to_idx wasn't returning a non-negative index.
This patch combined the modification from Bingsong Si and Bas Nieuwenhuizen and addd the MSR to the index system as alternative for MSR_PKG_ENERGY_STATUS.
Fixes: 9972d5d84d76 ("tools/power turbostat: Enable accumulate RAPL display") Reported-by: youling257 <youling257@gmail.com> Tested-by: youling257 <youling257@gmail.com> Tested-by: Kurt Garloff <kurt@garloff.de> Tested-by: Bingsong Si <owen.si@ucloud.cn> Tested-by: Artem S. Tashkinov <aros@gmx.com> Co-developed-by: Bingsong Si <owen.si@ucloud.cn> Co-developed-by: Terry Bowman <terry.bowman@amd.com> Signed-off-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Reviewed-by: Chen Yu <yu.c.chen@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
show more ...
|
#
ba58ecde |
| 12-Mar-2021 |
Len Brown <len.brown@intel.com> |
tools/power turbostat: update version number
|
#
abdc75ab |
| 10-Mar-2021 |
Zhang Rui <rui.zhang@intel.com> |
tools/power turbostat: Fix DRAM Energy Unit on SKX
SKX uses fixed DRAM Energy Unit, just like HSX and BDX.
Signed-off-by: Zhang Rui <rui.zhang@intel.com> Signed-off-by: Len Brown <len.brown@intel.c
tools/power turbostat: Fix DRAM Energy Unit on SKX
SKX uses fixed DRAM Energy Unit, just like HSX and BDX.
Signed-off-by: Zhang Rui <rui.zhang@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
show more ...
|
#
b2b94be7 |
| 11-Mar-2021 |
Len Brown <len.brown@intel.com> |
Revert "tools/power turbostat: adjust for temperature offset"
This reverts commit 6ff7cb371c4bea3dba03a56d774da925e78a5087.
Apparently the TCC offset should not be used to adjust what temperature w
Revert "tools/power turbostat: adjust for temperature offset"
This reverts commit 6ff7cb371c4bea3dba03a56d774da925e78a5087.
Apparently the TCC offset should not be used to adjust what temperature we show the user after all.
(on most systems, TCC offset is 0, FWIW)
Fixes: 6ff7cb371c4b
Signed-off-by: Len Brown <len.brown@intel.com>
show more ...
|
#
6c5c6560 |
| 03-Feb-2021 |
Chen Yu <yu.c.chen@intel.com> |
tools/power turbostat: Support Ice Lake D
Ice Lake D is low-end server version of Ice Lake X, reuse the code accordingly.
Tested-by: Wendy Wang <wendy.wang@intel.com> Signed-off-by: Chen Yu <yu.c.c
tools/power turbostat: Support Ice Lake D
Ice Lake D is low-end server version of Ice Lake X, reuse the code accordingly.
Tested-by: Wendy Wang <wendy.wang@intel.com> Signed-off-by: Chen Yu <yu.c.chen@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
show more ...
|
#
5683460b |
| 03-Feb-2021 |
Chen Yu <yu.c.chen@intel.com> |
tools/power turbostat: Support Alder Lake Mobile
Share the code between Alder Lake Mobile and Alder Lake Desktop.
Signed-off-by: Chen Yu <yu.c.chen@intel.com> Signed-off-by: Len Brown <len.brown@in
tools/power turbostat: Support Alder Lake Mobile
Share the code between Alder Lake Mobile and Alder Lake Desktop.
Signed-off-by: Chen Yu <yu.c.chen@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
show more ...
|
#
ed0757b8 |
| 04-Feb-2021 |
Len Brown <len.brown@intel.com> |
tools/power turbostat: print microcode patch level
(also available via "grep microcode /proc/cpuinfo")
Signed-off-by: Len Brown <len.brown@intel.com>
|
#
2af4f9b8 |
| 30-Jan-2021 |
Len Brown <len.brown@intel.com> |
tools/power turbostat: add built-in-counter for IPC -- Instructions per Cycle
Use linux-perf to access the hardware instructions-retired counter. This is necessary because the counter is not enabled
tools/power turbostat: add built-in-counter for IPC -- Instructions per Cycle
Use linux-perf to access the hardware instructions-retired counter. This is necessary because the counter is not enabled by default, and also the counter is prone to roll-over -- both of which perf manages.
It is not necessary to use perf for the cycle counter, because turbostat already needs to collect delta-aperf to calcuate frequency.
Signed-off-by: Len Brown <len.brown@intel.com>
show more ...
|
#
7f1b11ba |
| 28-Jan-2021 |
Borislav Petkov <bp@suse.de> |
tools/power/turbostat: Fallback to an MSR read for EPB
Commit
6d6501d912a9 ("tools/power/turbostat: Read energy_perf_bias from sysfs")
converted turbostat to read the energy_perf_bias value from
tools/power/turbostat: Fallback to an MSR read for EPB
Commit
6d6501d912a9 ("tools/power/turbostat: Read energy_perf_bias from sysfs")
converted turbostat to read the energy_perf_bias value from sysfs. However, older kernels which do not have that file yet, would fail. For those, fall back to the MSR reading.
Fixes: 6d6501d912a9 ("tools/power/turbostat: Read energy_perf_bias from sysfs") Reported-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com> Signed-off-by: Borislav Petkov <bp@suse.de> Tested-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com> Link: https://lkml.kernel.org/r/20210127132444.981120-1-dedekind1@gmail.com
show more ...
|
#
6d6501d9 |
| 15-Oct-2020 |
Borislav Petkov <bp@suse.de> |
tools/power/turbostat: Read energy_perf_bias from sysfs
... instead of poking at the MSR directly.
Signed-off-by: Borislav Petkov <bp@suse.de> Cc: Len Brown <lenb@kernel.org> Cc: linux-pm@vger.kern
tools/power/turbostat: Read energy_perf_bias from sysfs
... instead of poking at the MSR directly.
Signed-off-by: Borislav Petkov <bp@suse.de> Cc: Len Brown <lenb@kernel.org> Cc: linux-pm@vger.kernel.org Link: https://lkml.kernel.org/r/20201029190259.3476-3-bp@alien8.de
show more ...
|
#
3e9fa998 |
| 30-Sep-2020 |
Len Brown <len.brown@intel.com> |
tools/power turbostat: update version number
goodbye summer...
Signed-off-by: Len Brown <len.brown@intel.com>
|
#
3d7772ea |
| 30-Sep-2020 |
Len Brown <len.brown@intel.com> |
tools/power turbostat: harden against cpu hotplug
turbostat tends to get confused when CPUs are added and removed while it is running.
There are races, such as checking the current cpu, and then re
tools/power turbostat: harden against cpu hotplug
turbostat tends to get confused when CPUs are added and removed while it is running.
There are races, such as checking the current cpu, and then reading a sysfs file that depends on that cpu number.
Close the two issues that seem to come up the most. First, there is an infinite reset loop detector -- change that to allow more resets before giving up. Secondly, one of those file reads didn't really need to exit the program on failure...
Signed-off-by: Len Brown <len.brown@intel.com>
show more ...
|
#
6ff7cb37 |
| 29-Sep-2020 |
Len Brown <len.brown@intel.com> |
tools/power turbostat: adjust for temperature offset
cpu1: MSR_IA32_TEMPERATURE_TARGET: 0x05640000 (95 C) (100 default - 5 offset)
Account for the new "offset" field in MSR_TEMPERATURE_TARGET. Whil
tools/power turbostat: adjust for temperature offset
cpu1: MSR_IA32_TEMPERATURE_TARGET: 0x05640000 (95 C) (100 default - 5 offset)
Account for the new "offset" field in MSR_TEMPERATURE_TARGET. While this field is usually zero, ignoring it results in over-stating the current temperature, both per-core and per-package.
Signed-off-by: Len Brown <len.brown@intel.com>
show more ...
|