5

I have the following problem. As soon as the battery drops below 30%, the CPU is being throttled to 500Mhz. As soon as I plug in the power adapter, it goes back to normal. The laptop is a Lenovo U41-70, I am running Ubuntu 15.10 x64, the CPU is an Intel i3-5020U.

I am not sure if this is helpful, but while it's on battery and below 30%, lscpu (same values from cat /proc/cpuinfo) still gives out:

CPU MHz:               499.984
CPU max MHz:           2200,0000
CPU min MHz:           500,0000

When it's plugged in, CPU MHz immediately jumps up to 2195.015Mhz when there is load on the CPU, which is fine of course.

What could cause this problem? I don't have Windows installed so I don't know if the problem exists there as well.

Mudit Kapil
  • 2,081
daniel
  • 71

2 Answers2

1

Edit a file

You can always change your clock speed by controlling Intel-pstate.

Intel-pstate can be controlled by changing files in /sys/devices/system/cpu/intel_pstate (Change as root i.e. using sudo)

Use a bash script

You can use this bash file, which I created for my own use. Note that I don't think i3 supports turbo boost.

  1. Download the file from google drive

  2. Run sudo chmod 775 set_cpu_pstate

  3. Execute with sudo ./set_cpu_pstate

  4. Set MAX power to 100

  5. Set MIN power to 100 to force high performance all the time

  6. Enter 1 to activate TurboBoost or 0 to deactivate it

CPU Frequency

You can use i7z for current CPU frequency.

sudo apt-get install i7z
sudo i7z
TheSchwa
  • 3,860
0

There seems to be a bug in the Lenovo BIOS that initializes the thermal zone limit to passive 0 (/sys/class/thermal/thermal_zone0/trip_point_2_temp), thus tripping overheat policies. If you rmmod then modprobe thermal, it should set you back to normal if you're having this problem on a Lenovo laptop.