cpupower: Show Intel turbo ratio support via ./cpupower frequency-info
This adds the last piece missing from turbostat (if called with -v). It shows on Intel machines supporting Turbo Boost how many cores have to be active/idle to enter which boost mode (frequency). Whether the HW really enters these boost modes can be verified via ./cpupower monitor. Signed-off-by: Thomas Renninger <trenn@suse.de> CC: lenb@kernel.org CC: linux@dominikbrodowski.net CC: cpufreq@vger.kernel.org Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
This commit is contained in:

committed by
Dominik Brodowski

parent
76b659a31d
commit
8fb2e440b2
@@ -11,6 +11,7 @@
|
||||
#define MSR_IA32_PERF_STATUS 0x198
|
||||
#define MSR_IA32_MISC_ENABLES 0x1a0
|
||||
#define MSR_IA32_ENERGY_PERF_BIAS 0x1b0
|
||||
#define MSR_NEHALEM_TURBO_RATIO_LIMIT 0x1ad
|
||||
|
||||
/*
|
||||
* read_msr
|
||||
@@ -79,6 +80,7 @@ int msr_intel_has_boost_support(unsigned int cpu)
|
||||
ret = read_msr(cpu, MSR_IA32_MISC_ENABLES, &misc_enables);
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
return (misc_enables >> 38) & 0x1;
|
||||
}
|
||||
|
||||
@@ -119,4 +121,18 @@ int msr_intel_set_perf_bias(unsigned int cpu, unsigned int val)
|
||||
return ret;
|
||||
return 0;
|
||||
}
|
||||
|
||||
unsigned long long msr_intel_get_turbo_ratio(unsigned int cpu)
|
||||
{
|
||||
unsigned long long val;
|
||||
int ret;
|
||||
|
||||
if (!(cpupower_cpu_info.caps & CPUPOWER_CAP_HAS_TURBO_RATIO))
|
||||
return -1;
|
||||
|
||||
ret = read_msr(cpu, MSR_NEHALEM_TURBO_RATIO_LIMIT, &val);
|
||||
if (ret)
|
||||
return ret;
|
||||
return val;
|
||||
}
|
||||
#endif
|
||||
|
Reference in New Issue
Block a user