7

This problem is bothering me for some weeks now and I cannot seem to figure out what the real problem might be.

The problem is that the CPU frequency is dropping drastically when under load. By this I mean that the CPU frequency is around 400 MHz when just opening a web browser for example, and when there is no load the frequency is rising back up. (not to a very high one, but still it is not a static behavior). It is really driving me crazy.

Some further information that might help:

Hardware:

Lenovo thinkpad T15:

CPU: Intel I7-10510U

=> Base clock: 1.8GHz

=> Boost clock: 4.9GHz

Software:

Distro: Ubuntu 20.04.1 LTS

Kernel: 5.4.0-52-generic

⇒ 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: 400 MHz - 4.90 GHz available cpufreq governors: performance powersave current policy: frequency should be within 400 MHz and 4.90 GHz. The governor "powersave" may decide which speed to use within this range. current CPU frequency: Unable to call hardware current CPU frequency: 1.24 GHz (asserted by call to kernel) boost state support: Supported: yes Active: yes 
# command to simulate a stress on the CPU ⇒ stress-ng --cpu 8 --timeout 15s stress-ng: info: [43652] dispatching hogs: 8 cpu stress-ng: info: [43652] successful run completed in 15.34s # The result of the stress on the CPU ⇒ sudo turbostat --Summary --quiet --show Busy%,Bzy_MHz,PkgTmp,PkgWatt,GFXWatt,IRQ --interval 6 Busy% Bzy_MHz IRQ PkgTmp PkgWatt GFXWatt 6.58 1862 11418 51 5.00 0.00 7.69 1813 14444 51 4.96 0.00 7.79 1817 16988 51 5.03 0.00 7.99 1724 14679 51 5.00 0.00 9.12 1542 14504 51 4.91 0.00 8.82 1662 13878 51 4.98 0.00 60.61 1060 19508 52 5.84 0.00 # Applied load around here 99.75 460 19984 51 4.59 0.00 98.06 654 21316 51 4.79 0.00 10.26 1181 16730 51 4.25 0.00 # load ended around here 5.90 1782 10315 50 4.74 0.00 6.60 1890 11701 50 5.10 0.00 6.00 1901 10736 50 5.13 0.00 6.74 1981 13477 51 5.23 0.00 7.43 1731 1500 50 4.92 0.00 
⇒ cpufreq-info cpufrequtils 008: cpufreq-info (C) Dominik Brodowski 2004-2009 Report errors and bugs to [email protected], please. 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: 4294.55 ms. hardware limits: 400 MHz - 4.90 GHz available cpufreq governors: performance, powersave current policy: frequency should be within 400 MHz and 4.90 GHz. The governor "powersave" may decide which speed to use within this range. current CPU frequency is 1.26 GHz. analyzing CPU 1: driver: intel_pstate CPUs which run at the same hardware frequency: 1 CPUs which need to have their frequency coordinated by software: 1 maximum transition latency: 4294.55 ms. hardware limits: 400 MHz - 4.90 GHz available cpufreq governors: performance, powersave current policy: frequency should be within 400 MHz and 4.90 GHz. The governor "powersave" may decide which speed to use within this range. current CPU frequency is 1.48 GHz. analyzing CPU 2: driver: intel_pstate CPUs which run at the same hardware frequency: 2 CPUs which need to have their frequency coordinated by software: 2 maximum transition latency: 4294.55 ms. hardware limits: 400 MHz - 4.90 GHz available cpufreq governors: performance, powersave current policy: frequency should be within 400 MHz and 4.90 GHz. The governor "powersave" may decide which speed to use within this range. current CPU frequency is 982 MHz. analyzing CPU 3: driver: intel_pstate CPUs which run at the same hardware frequency: 3 CPUs which need to have their frequency coordinated by software: 3 maximum transition latency: 4294.55 ms. hardware limits: 400 MHz - 4.90 GHz available cpufreq governors: performance, powersave current policy: frequency should be within 400 MHz and 4.90 GHz. The governor "powersave" may decide which speed to use within this range. current CPU frequency is 983 MHz. analyzing CPU 4: driver: intel_pstate CPUs which run at the same hardware frequency: 4 CPUs which need to have their frequency coordinated by software: 4 maximum transition latency: 4294.55 ms. hardware limits: 400 MHz - 4.90 GHz available cpufreq governors: performance, powersave current policy: frequency should be within 400 MHz and 4.90 GHz. The governor "powersave" may decide which speed to use within this range. current CPU frequency is 1.06 GHz. analyzing CPU 5: driver: intel_pstate CPUs which run at the same hardware frequency: 5 CPUs which need to have their frequency coordinated by software: 5 maximum transition latency: 4294.55 ms. hardware limits: 400 MHz - 4.90 GHz available cpufreq governors: performance, powersave current policy: frequency should be within 400 MHz and 4.90 GHz. The governor "powersave" may decide which speed to use within this range. current CPU frequency is 872 MHz. analyzing CPU 6: driver: intel_pstate CPUs which run at the same hardware frequency: 6 CPUs which need to have their frequency coordinated by software: 6 maximum transition latency: 4294.55 ms. hardware limits: 400 MHz - 4.90 GHz available cpufreq governors: performance, powersave current policy: frequency should be within 400 MHz and 4.90 GHz. The governor "powersave" may decide which speed to use within this range. current CPU frequency is 926 MHz. analyzing CPU 7: driver: intel_pstate CPUs which run at the same hardware frequency: 7 CPUs which need to have their frequency coordinated by software: 7 maximum transition latency: 4294.55 ms. hardware limits: 400 MHz - 4.90 GHz available cpufreq governors: performance, powersave current policy: frequency should be within 400 MHz and 4.90 GHz. The governor "powersave" may decide which speed to use within this range. current CPU frequency is 850 MHz. 

Things I've tried so far:

  • setting power governor to performance
  • setting the intel pstate driver frequency limits
  • using cpupower to set the frequency limits (Does this the same as changing the intel pstate driver values directly?)
  • Reinstalling ubuntu 20.04, had the same issue upon a clean install.

I was able once to get my system up and running like it should be: After rebooting from windows, the CPU went right up to the max CPU limit when running a fake load onto the system and kept working for the rest of the day. The system thermal throttled as expected, but never dropped below the 2 GHz as far as I could tell. However after rebooting the issue reappeared... I wasn't able to reproduce this behavior afterwards either...

If it was not clear already: the question is how to solve this so that I can use the full potential of my laptop and not wait every time I load a new window or open a new browser tab?

Thanks in advance!

EDIT:

  • add reinstall to things I tried
4
  • There are load of infos on [kernel.org}(kernel.org/doc/html/v4.12/admin-guide/pm/intel_pstate.html). And it yould be cool to know your CPU ;-) Commented Oct 28, 2020 at 13:46
  • Is it the same problem docs.google.com/document/d/… ? Commented Dec 18, 2020 at 5:22
  • 1
    I had the same issues that you describe with the same laptop. I found the way to trigger the throttling: run one of the gpu benchmarks and observe behaviour of cpu with s-tui. II ended up sending the laptop back and buying a different model with bigger cooling solution. Commented Dec 26, 2020 at 1:10
  • i have the same problem, when the load is low, CPU works even on >4GHz, however, whenever i start some more instense task, CPU freq drops to 1.5-1.8GHz :/ Thinpad T14 I7-10510U Commented Apr 29, 2021 at 20:03

3 Answers 3

3

Probably your embedded controller is set to a conservative thermal setting. Note that these settings are persistent on the mainboard and not the hard disk. So if you are playing with Lenovos tools under windows, putting your notebook in a kind of "power economic & quiet" profile and then boot up ubuntu, the setting is still active.

To change this under Ubuntu, you need the right kernel module (in my case it's dell-smbios) and the smbios-thermal-ctl package to do something like this:

sudo smbios-thermal-ctl -i

 Print all the Available Thermal Information of your system: ------------------------------------------------------------------- Supported Thermal Modes: Balanced Cool Bottom Quiet Performance 

and then activate a more permissive profile, in my case (Dell) the best of both worlds seems to be Balanced.

sudo smbios-thermal-ctl --set-thermal-mode=Balanced

Another tool I can recommend is s-tui to diagnose such behavior.

2
  • Thanks for the response! I'm not able to find such a package for my lenovo machine (only did a quick google search). But I just rebooted back into windows and verified that my performance settings were indeed at the max setting. When rebooting back into Ubuntu, my system started out great, but after a while it went back to the old behavior... So it seems that Ubuntu is messing arround with these settings. However, I do not know where to look at this point. And I also use BpyTOP to monitor the systems performance :) Commented Oct 28, 2020 at 17:17
  • After some more digging I found an interesting line in the dmesg log: kernel: ENERGY_PERF_BIAS: Set to 'normal', was 'performance' So your theory could indeed be true, however when i try to set it back to performance with the tool x86_energy_perf_policy I get an error. Further investigation is ongoing... Commented Oct 28, 2020 at 18:02
1

As it turned out it was a thermal issue, but not software related. After sending the device back to the factory, they replaced the cooler of the device and the issue was fixed!

Apparently the CPU got up to just under 100 degrees Celsius, and then immediately thermal throttled.

2
  • Could you please share the details? Similar issues are described here forums.lenovo.com/t5/… and I am curious if it just a common hardware defect. How much time did repair took? Was it hard to convince support that you device has hw problem? What exactly did they fix? Commented Dec 18, 2020 at 4:48
  • They replaced the CPU cooler according to the note that was provided when the laptop returned. It took about a week to get it fixed for me. It needed to be send back to a more local repair point. I had no issue convincing the support team to get it fixed. And I did request the repair via the lenovo support site: pcsupport.lenovo.com. Overall a good experience. Commented Dec 21, 2020 at 13:14
0

I had very similar symptoms on my Thinkpad T495s. The cause was much more prosaic - there was a small piece of paper between the desk and the laptop and it decreased volume of air available for the fan. When I removed the paper, then the frequency starts increasing.

So If anybody has similar issue, check if the laptop is on the clear and flat surface.

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.