Max CPU Frequency Reported by cpupower Differs Between intel_pstate and acpi_cpufreq drivers
Environment
Reported on:
-
Red Hat Enterprise Linux 7 and later
- Intel CPUs
Issue
When using the intel_pstate performance scaling driver with turboboost enabled, cpupower frequency-info reports an upper hardware frequency limit of 3.40 GHz.
With the intel_pstate driver disabled and the acpi_cpufreq performance scaling driver in use, the upper hardware frequency limit reported by cpupower frequency-info is 2.40 GHz when turboboost is also enabled.
Resolution
Use turbostat to verify the CPU frequency and ensure that the turboboost frequencies are being reached. Make sure that the frequencies are checked under load, or else lower idle frequencies may be reported.
Root Cause
cpupower frequency-info reports the CPU frequency for theintel_pstate and acpi_cpufreq drivers as provided by hardware to the kernel. The intel_pstate driver is able to report the turboboost frequency limit in cpupower as turboboost is a feature of the Intel CPU. The actual frequency being used under load can be seen in turbostat output, where frequencies higher than the acpi_cpufreq limit of 2.40 GHz can be seen.
Diagnostic Steps
-
Check the
cpupower frequency-infooutput to see which driver is being used, the reported maximum frequency limit, and whether or not turboboost is enabled:# cpupower frequency-info analyzing CPU 0: driver: intel_pstate CPUs which run at the same hardware frequency: 0 CPUs which need to have their frequency coordinated by software: 0 maximum transition latency: Cannot determine or is not supported. hardware limits: 800 MHz - 3.40 GHz available cpufreq governors: performance powersave current policy: frequency should be within 800 MHz and 3.40 GHz. The governor "performance" may decide which speed to use within this range. current CPU frequency: Unable to call hardware current CPU frequency: 800 MHz (asserted by call to kernel) boost state support: Supported: yes Active: yes -
Looking at the
Bzy_MHzinturbostatoutput we see CPU reaching frequencies higher than 2.4 GHz. Make sure that the frequencies are checked under load, or else lower idle frequencies may be reported:usec Time_Of_Day_Seconds Package Core CPU APIC X2APIC Avg_MHz Busy% Bzy_MHz TSC_MHz IPC IRQ 20289 1677128715.127062 - - - - - 1 0.04 2374 2397 1.22 24751 121 1677128715.106894 0 0 0 0 0 1 0.13 1085 2394 0.87 212 51 1677128715.106956 0 0 76 1 1 0 0.01 1137 2394 0.39 63 60 1677128715.107094 0 1 4 2 2 0 0.03 1239 2394 0.26 52 [...cut...] 51 1677128715.117144 1 1 81 131 131 5 0.15 3277 2394 1.24 1612 61 1677128715.117285 1 2 9 132 132 1 0.02 2761 2394 0.69 84 49 1677128715.117346 1 2 85 133 133 2 0.05 3134 2394 1.19 521 -
With the
intel_pstatedriver disabled, validate theacpi_cpufreqdriver is being used, that turboboost is enabled, and that the maximum frequency incpupower frequency-infois reported as 2.4 GHz:# cpupower_frequency-info analyzing CPU 0: driver: acpi-cpufreq CPUs which run at the same hardware frequency: 0 CPUs which need to have their frequency coordinated by software: 0 maximum transition latency: 10.0 us hardware limits: 800 MHz - 2.40 GHz available frequency steps: 2.40 GHz, 2.40 GHz, 2.30 GHz, 2.20 GHz, 2.10 GHz, 1.90 GHz, 1.80 GHz, 1.70 GHz, 1.60 GHz, 1.50 GHz, 1.40 GHz, 1.30 GHz, 1.10 GHz, 1000 MHz, 900 MHz, 800 MHz available cpufreq governors: conservative ondemand userspace powersave performance schedutil current policy: frequency should be within 800 MHz and 2.40 GHz. The governor "performance" may decide which speed to use within this range. current CPU frequency: 2.40 GHz (asserted by call to hardware) boost state support: Supported: yes Active: yes -
turbostatoutput shows that theBzy_MHzis in excess of 2.40 GHz. Make sure that the frequencies are checked under load, or else lower idle frequencies may be reported:usec Time_Of_Day_Seconds Package Core CPU APIC X2APIC Avg_MHz Busy% Bzy_MHz TSC_MHz IPC IRQ 19981 1677127967.727236 - - - - - 0 0.02 2087 2398 1.17 13252 272 1677127967.707527 0 0 0 0 0 1 0.06 2086 2394 0.64 115 53 1677127967.707593 0 0 76 1 1 2 0.08 2670 2394 0.54 100 63 1677127967.707739 0 1 4 2 2 0 0.01 2293 2394 0.26 47 50 1677127967.707802 0 1 80 3 3 2 0.06 3101 2394 0.10 124
This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.
Comments