[SOLVED] Lenovo IdeaPad Gaming 3-15IMH05 laptop overheating on AC but not on battery
Linux - Laptop and NetbookHaving a problem installing or configuring Linux on your laptop? Need help running Linux on your netbook? This forum is for you. This forum is for any topics relating to Linux and either traditional laptops or netbooks (such as the Asus EEE PC, Everex CloudBook or MSI Wind).
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Lenovo IdeaPad Gaming 3-15IMH05 laptop overheating on AC but not on battery
Hello,
I've recently bought a new Lenovo IdeaPad Gaming 3-15IMH05 laptop (with the intel i7-10750H CPU and Nvidia gtx 1650ti GPU). I use Debian 11 (Bullseye) with the KDE Plasma desktop environment. Everything seems to work well, but there is a problem: when I play games while on AC power, the CPU temps climb up to 98°C, but when I play the same games while on battery power, the CPU temps stay only around 70°C or less (the performance of the games doesn't really change).
I have TLP and thermald installed. According to the TLP config, the CPU scaling_governor is set to powersave both on AC and on Battery. The enegry_performance_preference was by default set to balance_performance on AC and balance_power on battery, so I tried to change it to balance_power on AC too, but it didn't help the overheating issue. I don't have any custom thermald settings so that should be the default.
I'm not really sure what could be wrong here, so I'm not sure what more to try right now. I tried searching for this problem but I haven't found anything relevant yet. Thanks for any help, and just ask if you need any more information or logs.
Hello, thanks for the response.
The problem might very well be caused by the hardware if the cooling can't cool the CPU running on full power fast enough. But still, when on battery the CPU cools to acceptable temperatures, and I'd be willing to sacrifice performance for good temps.
Your suggestion about it being a CPU governor issue makes sense, but I'm not sure what to do with that, as I'm not that experienced with this. I tried changing the TLP config file to force battery power mode even when plugged in AC power, but the problem still persists, and I tried disabling thermald in case that messes with something, but that also didn't change anything.
I also tried looking around a bit more and found that the cpupower package (linux-cpupower in the Debian repositories) can monitor the CPU frequencies and governors, so I tried to install that to see what it says about the CPU governor currently in use, but the command "cpupower frequency-info" gives me the same output on AC and on battery (and says that the governor being used is powersave in both cases):
Code:
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 - 5.00 GHz
available cpufreq governors: performance powersave
current policy: frequency should be within 800 MHz and 5.00 GHz.
The governor "powersave" may decide which speed to use
within this range.
current CPU frequency: Unable to call hardware
current CPU frequency: 893 MHz (asserted by call to kernel)
boost state support:
Supported: yes
Active: yes
I know that the CPU temps can drop to acceptable levels (they do when on battery), so all that I want is for the CPU to act the same on AC as it does on Battery, even if it means lower performance, but I'm not really sure how I should do that. Thanks for the help, any suggestions are appreciated, and ask if you need any more information or logs.
After a bit of searching, I've found a strange thing. When I monitor the CPU frequency using the command "watch cpupower frequency-info" while playing a game, when on battery, the frequencies are much lower than on AC. When on battery, the CPU frequency is around 1-2 GHz, maybe around 3 GHz at most, but as soon as I plug the charger into the laptop, the frequency suddenly jumps to 4 GHz, no matter what game I'm playing. This suggests that it probably is a CPU governor issue, but everywhere I look (both the command "cpupower frequency-info" and the files "/sys/devices/system/cpu/cpu*/cpufreq/scaling_governor"), it says that the governor being used is powersave, on battery and with AC.
I'm really not sure what this could be caused by and what more to try, so any suggestions are appreciated.
After a bit of searching, I've found a strange thing. When I monitor the CPU frequency using the command "watch cpupower frequency-info" while playing a game, when on battery, the frequencies are much lower than on AC. When on battery, the CPU frequency is around 1-2 GHz, maybe around 3 GHz at most, but as soon as I plug the charger into the laptop, the frequency suddenly jumps to 4 GHz, no matter what game I'm playing. This suggests that it probably is a CPU governor issue, but everywhere I look (both the command "cpupower frequency-info" and the files "/sys/devices/system/cpu/cpu*/cpufreq/scaling_governor"), it says that the governor being used is powersave, on battery and with AC.
I'm really not sure what this could be caused by and what more to try, so any suggestions are appreciated.
That makes perfect sense. On battery the system lowers the power demand to extend the battery life. On AC there is no concern about battery life so the cpu is able to run at max performance and apparently ignores the governor.
It seems the governor is not actually affecting the cpu speed when on AC so you may be able to adjust tlp to adjust the speed and limit the temp more. Also, disabling thermald may have the opposite affect to what you want. Thermald is designed to limit temps by reducing speed. If you can adjust its settings you might gain from it.
Temperature issues like this are why most gamers use desktops instead of laptops. My laptop shows a max temp (and critical temp) as 100C so if yours is running near there it seems likely to be damaging to the hardware.
The command "inxi -Cxx" will give you full detailed info about the CPU and its speed. If you have lm-sensors installed the command "sensors" will give you the current fan speeds and temps.
Another thing I know of that can severely impact cpu temp on a laptop is the buildup of a little dust/lint in the air flow path inside the machine. I had mine (intel i7-9750H 6 core 12 thread) running for an extended period (several weeks) at near 100% load and a very stable 60-65C temp. When it collected a little dust it very quickly began overheating and would shutdown on high temp at ~50% load in the same room temp. That might be worth investigating, as well as verifying fan speed.
Thanks for the response, I think I managed to solve the problem.
Quote:
Originally Posted by computersavvy
It seems the governor is not actually affecting the cpu speed when on AC so you may be able to adjust tlp to adjust the speed and limit the temp more.
It makes sense that the overheating was caused by the CPU governor not affecting the speeds when on AC, so as you suggested I tried to limit the CPU speeds through the TLP settings, and that seems to work. Using the line
Code:
CPU_MAX_PERF_ON_AC=30
, I can limit the CPU clock speeds, in this case to 30% of maximum power. With this additional TLP configuration, the maximum CPU frequency is in fact lower, and so are the temperatures, now staying around 60-70°C.
Thanks for the help, I appreciate it.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.