I'm running kubuntu 15.10 on a Lenovo Y50-70, and I have a very annoying problem with the CPU clock: Whenever the computer resumes from sleep, the CPU clock has a lower maximum, and this does not happen only once, but after every resume the clock is slower, until it's down from initially 3.6 GHz to ~600 MHz.
alain@alain-Y50-70:~$ sudo -i
[sudo] password for alain:
root@alain-Y50-70:~# 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: 0.97 ms.
hardware limits: 800 MHz - 3.60 GHz
available cpufreq governors: performance, powersave
current policy: frequency should be within 800 MHz and 3.60 GHz.
The governor "powersave" may decide which speed to use
within this range.
current CPU frequency is 817 MHz (asserted by call to hardware).
boost state support:
Supported: yes
Active: yes
root@alain-Y50-70:~# cat /sys/devices/system/cpu/intel_pstate/max_perf_pct
100
root@alain-Y50-70:~# 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: 0.97 ms.
hardware limits: 800 MHz - 3.60 GHz
available cpufreq governors: performance, powersave
current policy: frequency should be within 800 MHz and 2.88 GHz.
The governor "powersave" may decide which speed to use
within this range.
current CPU frequency is 800 MHz (asserted by call to hardware).
boost state support:
Supported: yes
Active: yes
root@alain-Y50-70:~# cat /sys/devices/system/cpu/intel_pstate/max_perf_pct
80
root@alain-Y50-70:~# cat /sys/devices/system/cpu/intel_pstate/max_perf_pct
60
root@alain-Y50-70:~# cat /sys/devices/system/cpu/intel_pstate/max_perf_pct
40
root@alain-Y50-70:~# cat /sys/devices/system/cpu/intel_pstate/max_perf_pct
40
root@alain-Y50-70:~# 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: 0.97 ms.
hardware limits: 800 MHz - 3.60 GHz
available cpufreq governors: performance, powersave
current policy: frequency should be within 800 MHz and 1.44 GHz.
The governor "powersave" may decide which speed to use
within this range.
current CPU frequency is 699 MHz (asserted by call to hardware).
boost state support:
Supported: yes
Active: yes
root@alain-Y50-70:~# cat /sys/devices/system/cpu/intel_pstate/max_perf_pct
40
root@alain-Y50-70:~# 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: 0.97 ms.
hardware limits: 800 MHz - 3.60 GHz
available cpufreq governors: performance, powersave
current policy: frequency should be within 800 MHz and 1.44 GHz.
The governor "powersave" may decide which speed to use
within this range.
current CPU frequency is 605 MHz (asserted by call to hardware).
boost state support:
Supported: yes
Active: yes
root@alain-Y50-70:~#
I put the computer asleep between the commands above. As you can see, first the max_perf_pct
is reduced in steps until it reaches 40, then it stays 40 but the clock speed continues to be reduced. It doesn't matter if the laptop is plugged in or not, and the temperature is normal.
I think it may be related to this bug: https://bugzilla.kernel.org/show_bug.cgi?id=90421
The biggest problem is that I can't find a way to manually set the max clock back to 3.6 GHz. First I tried cpupower frequency-set -u 3.60GHz
:
root@alain-Y50-70:~# cpupower frequency-set -u 3.60GHz
Setting cpu: 0
Setting cpu: 1
Setting cpu: 2
Setting cpu: 3
Setting cpu: 4
Setting cpu: 5
Setting cpu: 6
Setting cpu: 7
root@alain-Y50-70:~# 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: 0.97 ms.
hardware limits: 800 MHz - 3.60 GHz
available cpufreq governors: performance, powersave
current policy: frequency should be within 800 MHz and 1.44 GHz.
The governor "powersave" may decide which speed to use
within this range.
current CPU frequency is 699 MHz (asserted by call to hardware).
boost state support:
Supported: yes
Active: yes
root@alain-Y50-70:~# cat /sys/devices/system/cpu/intel_pstate/max_perf_pct
40
but that seems to be the wrong way because the Intel P-State driver is used, so I tried echo 100 >/sys/devices/system/cpu/intel_pstate/max_perf_pct
with no effect:
root@alain-Y50-70:~# echo 100 >/sys/devices/system/cpu/intel_pstate/max_perf_pct
root@alain-Y50-70:~# 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: 0.97 ms.
hardware limits: 800 MHz - 3.60 GHz
available cpufreq governors: performance, powersave
current policy: frequency should be within 800 MHz and 1.44 GHz.
The governor "powersave" may decide which speed to use
within this range.
current CPU frequency is 700 MHz (asserted by call to hardware).
boost state support:
Supported: yes
Active: yes
root@alain-Y50-70:~# cat /sys/devices/system/cpu/intel_pstate/max_perf_pct
40
I also tried the performance
governor, with no success.
How can I set the maximum clock frequency back to 3.6 GHz?
4.2.0-30-generic #36-Ubuntu SMP Fri Feb 26 00:58:07 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
. I'm not sure when this problem started. – alain Mar 12 '16 at 14:04wrmsr 0x19a 0
as described in this thread https://bbs.archlinux.org/viewtopic.php?id=199922 ? (It haven't helped me, but some people report that it worked for them.) – Vlad Frolov Mar 12 '16 at 14:39rdmsr
returned 8, afterwrmsr
it's 0, but the frequencies are still the same unfortunately. – alain Mar 12 '16 at 17:09