I have just upgraded my machine from Ubuntu 19 to 20.04 LTS and it started overheating. Ubuntu 19 was working fine and the upgrade has not changed my configuration files (i.e. the turbo is still disabled and the cpu governor is still powersave). Also, tlp is installed.
The temperature I got upon running sudo tlp-stat -t
was 52-58 °C
on Ubuntu 19, while it is now 65-75 °C
. The laptop gets especially hot when watching YouTube videos on firefox. When it gets hot, it starts lagging as well.
A bit of context:
Soon after I upgraded, I got rid of the nouveau
drivers, with which there was serious lag, and I installed nvidia 440
drivers. I also tried nvidia 390
, while I have not tried nvidia 435
. nvidia 440
gives very good perfomance while nvidia 390
is very laggy. Also, I noticed that my touchpad doesn't work with 440
but it works with 390
.
Finally, the kernel version on my machine is 5.4.0-29-generic
.
Can anyone help me?
Best Answer
Under volting helps a lot when there is over heating (and by lot I mean A LOT). To be on a safer side, manufacturers supply higher voltage than required to the CPU (which causes heating), as at very lower voltages CPU doesn't work properly under stress. Under volting is completely safe. It will not void your warranty whatsoever. Under volting is basically removing the excess voltage supplied and giving the minimum voltage required to run the CPU smoothly.
Try
intel-undervolt
from here on GitHub.Here is an article on CPU undervolting in Linux which I followed
Some terms in the guide might be deprecated. Refer to the first link for the deprecated terms.
Here is a step by step procedure with the non deprecated terms
sudo apt install git
git clone https://github.com/kitsunyan/intel-undervolt
sudo su
and then enter password./configure --enable-systemd --enable-openrc && make && make install
exit
and press entersudo systemctl daemon-reload
sudo gedit /etc/intel-undervolt.conf
this will open a text editorundervolt 0 'CPU' -130
(recommended -125)sudo intel-undervolt apply
and then runsudo systemctl start intel-undervolt
sudo systemctl enable intel-undervolt
.As of selecting the offset, I use
undervolt 0 'CPU' -130
in the/etc/intel-undervolt.conf
file. As a beginner I would suggest you to stick to undervolting the CPU only.To find the correct offset (unique to each CPU piece. Same CPU but on different computer could have different ideal offset) slowly lower the offset by small values (I used 10), and at the point where your PC crashes, is the threshold. And set the final value to threshold - 10. In my case it crashed at 140 so I set it to 130.
The only downside (if you don't choose
sudo systemctl enable intel-undervolt
) is that you will have to apply the settings on every boot. I have created an alias withalias us='sudo intel-undervolt apply && sudo tlp start'
. So I just have to typeus
in the terminal on a boot, and then I am good to go.Note: the crashing of PC to calculate the offset is completely safe. It will not damage you hardware whatsoever.
Note: Any Intel CPU can go to -125 at least, above that comes the difficult part. If you want to take it to the limit, then only try increasing it step by step. Otherwise -125 will work just fine for any Intel CPU.
You could also try to switch to intel integrated graphics card.
sudo apt-get install nvidia-prime
sudo prime-select intel
and we are done.