Overheating problems

Hi all! I’m so sorry but I’m a real newbie. Anyway…
I installed Arch Linux on my old laptop and everything went fine. Then I want to try to install Endeavour OS on my new laptop instead, because the installation process is more easy specially if you want to maintain a Windows partition (the goal is however to get rid of it when I have learned to use audio editing programs compatible with Linux), but I’m having serious overheating issues with it. I managed to change energy profile from balanced to Power-Saver but nothing changed. The fans start about every 5 minutes and touching the surface of the laptop after a maximum of 10 minutes after being turned on, it feels really too hot. I don’t know what I have to do to fix this problem.
This is the output of “inxi -b”:
System:
Host: endeavourvictus Kernel: 6.3.5-arch1-1 arch: x86_64 bits: 64
Desktop: Xfce v: 4.18.1 Distro: EndeavourOS
Machine:
Type: Laptop System: HP product: Victus by HP Laptop 16-e1xxx v: N/A
serial:
Mobo: HP model: 8A22 v: 19.75 serial: UEFI: AMI
v: F.17 date: 11/02/2022
Battery:
ID-1: BAT0 charge: 47.5 Wh (68.5%) condition: 69.3/69.3 Wh (100.0%)
CPU:
Info: 8-core AMD Ryzen 7 6800H with Radeon Graphics [MT MCP] speed (MHz):
avg: 1536 min/max: 1600/4784
Graphics:
Device-1: NVIDIA GA107M [GeForce RTX 3050 Ti Mobile] driver: nouveau
v: kernel
Device-2: AMD Rembrandt [Radeon 680M] driver: amdgpu v: kernel
Device-3: Chicony HP Wide Vision HD Camera driver: uvcvideo type: USB
Display: x11 server: X.Org v: 21.1.8 driver: X: loaded: amdgpu,modesetting
dri: radeonsi,nouveau gpu: amdgpu resolution: 1920x1080~144Hz
API: OpenGL v: 4.6 Mesa 23.1.1 renderer: AMD Radeon Graphics (rembrandt
LLVM 15.0.7 DRM 3.52 6.3.5-arch1-1)
Network:
Device-1: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet
driver: r8169
Device-2: MEDIATEK MT7921 802.11ax PCI Express Wireless Network Adapter
driver: mt7921e
Drives:
Local Storage: total: 953.87 GiB used: 7.17 GiB (0.8%)
Info:
Processes: 346 Uptime: 42m Memory: available: 14.85 GiB
used: 2.4 GiB (16.2%) Shell: Bash inxi: 3.3.27

These are other outputs that might be useful:
$ cat /sys/firmware/acpi/platform_profile_choices
cat: /sys/firmware/acpi/platform_profile_choices: File o directory non esistente

$ cat /sys/devices/system/cpu/amd_pstate/status
cat: /sys/devices/system/cpu/amd_pstate/status: File o directory non esistente

I hope some good soul can help me because I really like Endeavour and I want to stop to using Windows and its proprietary software and driver.
I also want to take this opportunity to thank everyone behind this beautiful project: you are great!

Thanks in advance to anyone who tries to help me.

Have you tried setting amd pstate? Did you install with systemd-boot or grub?

Edit: With the latest kernel the current method is using

amd_pstate=active

If using grub you must add this to the default grub command line in /etc/default/grub Then update grub with sudo grub-mkconfig -o /boot/grub/grub.cfg

reboot

If using systemd-boot you have to add it to /etc/kernel/cmdline Then you need to run sudo reinstall-kernels

reboot

After to check if it is working.

cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_driver

It should say

amd-pstate

Edit: Also don’t forget to use code tags around the output you post to make it easier to read.

1 Like

and add also “iommu=pt” foal all AmdRyzen

Why? That’s for pass through?

Thank you so much for the answer @ricklinux .
No, I didn’t try to setting amd pstate because I don’t know how to do it. And I install Endeavour with grub.
This is the output of $ cat /etc/default/grub:

# GRUB boot loader configuration

GRUB_DEFAULT='0'
GRUB_TIMEOUT='5'
GRUB_DISTRIBUTOR='EndeavourOS'
GRUB_CMDLINE_LINUX_DEFAULT='nowatchdog nvme_load=YES loglevel=3'
GRUB_CMDLINE_LINUX=""

# Preload both GPT and MBR modules so that they are not missed
GRUB_PRELOAD_MODULES="part_gpt part_msdos"

# Uncomment to enable booting from LUKS encrypted devices
#GRUB_ENABLE_CRYPTODISK=y

# Set to 'countdown' or 'hidden' to change timeout behavior,
# press ESC key to display menu.
GRUB_TIMEOUT_STYLE=menu

# Uncomment to use basic console
GRUB_TERMINAL_INPUT=console

# Uncomment to disable graphical terminal
#GRUB_TERMINAL_OUTPUT=console

# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `videoinfo'
GRUB_GFXMODE=auto

# Uncomment to allow the kernel use the same resolution used by grub
GRUB_GFXPAYLOAD_LINUX=keep

# Uncomment if you want GRUB to pass to the Linux kernel the old parameter
# format "root=/dev/xxx" instead of "root=/dev/disk/by-uuid/xxx"
#GRUB_DISABLE_LINUX_UUID=true

# Uncomment to disable generation of recovery mode menu entries
GRUB_DISABLE_RECOVERY='true'

# Uncomment and set to the desired menu colors.  Used by normal and wallpaper
# modes only.  Entries specified as foreground/background.
#GRUB_COLOR_NORMAL="light-blue/black"
#GRUB_COLOR_HIGHLIGHT="light-cyan/blue"

# Uncomment one of them for the gfx desired, a image background or a gfxtheme
GRUB_BACKGROUND='/usr/share/endeavouros/splash.png'
#GRUB_THEME="/path/to/gfxtheme"

# Uncomment to get a beep at GRUB start
#GRUB_INIT_TUNE="480 440 1"

# Uncomment to make GRUB remember the last selection. This requires
# setting 'GRUB_DEFAULT=saved' above.
#GRUB_SAVEDEFAULT=true

# Uncomment to disable submenus in boot menu
GRUB_DISABLE_SUBMENU='false'

# Probing for other operating systems is disabled for security reasons. Read
# documentation on GRUB_DISABLE_OS_PROBER, if still want to enable this
# functionality install os-prober and uncomment to detect and include other
# operating systems.
#GRUB_DISABLE_OS_PROBER=false

I’m so sorry for my incompetence but I’m not sure I understood correctly: where I have to add amd_pstate=active?

Also, at the moment, this is the output of $ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_driver:

acpi-cpufreq

Sorry for the lack of code tags but I discovered how to do it only just now.

Thank you so much for your help.

So you are using grub? Not systemd-boot?

Yes, I’m using grub. But there is a command to be sure if I’m correct?

Put it in this line like this as i explained for grub in the post.

GRUB_CMDLINE_LINUX_DEFAULT='amd_pstate=active nowatchdog nvme_load=YES loglevel=3'

Then save as instructed in the post and run the grub update command.

You can use the text editor nano

sudo nano /etc/default/grub

add

amd_pstate=active

ctrl+o then enter to save
ctrl + x to exit nano

Then run the grub update command

sudo grub-mkconfig -o /boot/grub/grub.cfg

reboot

Check with

cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_driver
1 Like

Thank you so much!

I did it right now. Now the output of cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_driver is:

amd_pstate_epp

It is correct?


This is the output after the grub update command.

Yes that is correct. Now see if it makes any difference.

Also this shows what it’s set for.

cat /sys/devices/system/cpu/cpufreq/policy0/energy_performance_preference

Thank you very much! And yes, now I’ll see if it improves the situation. Anyway I really appreciate your help.

The output of cat /sys/devices/system/cpu/cpufreq/policy0/energy_performance_preference is:

balance_performance

How can I see the other power plans available and possibly modify them? (If there are other power plan available).

I would leave it at this at least for a while and see what difference it makes.

Ok. Again thank you very much. Now I’ll check the difference for a while and update the situation here.
I am very grateful to you.

1 Like

Hi! I noticed that the situation is a little bit better, but comparing the temperatures when I use Windows and also with my old laptop with Arch, I think there is still something wrong.
I installed psensor to monitor the temperature and this is a shot of the situation:


In a normal usage (not playing games or making music) with Windows, and even with my old laptop with Arch, the temperatures almost never reach 50°C. The only difference with my old laptop is that I have the zen kernel on the old one and the default kernel on this new one. Could be this the problem?

Furthermore I noticed that the battery drains much faster then when I’m using Windows, and I think that is strange because instead, with my old laptop, using Linux is more efficient with power consumption than when I used Windows.

Sorry for the many and long messages.

To check what is available for pstate settings.

cat /sys/devices/system/cpu/cpu0/cpufreq/energy_performance_available_preferences

Thank you so much for your help and your comprehension.

Unfortunately I try to switch from “balance_performance” to “balance_power” but nothing changed. The temperature reaches 60°C in a few minutes, after that, the fans start up until it returns to 43/44°C, but then again in a few minutes it returns to 60°C and so on.

Maybe I should try the “Original Pstate Driver” (https://gitlab.com/echoa/amd-pstate-guide#original-pstate-driver) and the zen kernel instead of “AMD Pstate EPP Driver”? Sorry but now I don’t know why this issue happened and what I have to do to fix it.

Anyway I really appreciate your help, so thank you again.

I would check if there is a UEFI Bios update for that laptop. I can’t look it up without knowing the exact model and serial numbers. Trying the original pstate driver is easy. You just have to see if it loads and is working. Just change the entry in the default grub command line and save the file as you did from my instructions and then run the grub update command and reboot. Then run the command and check if its using the pstate driver. You can always switch it back.

1 Like

How old is the laptop?

Another time thanks for your attention. This evening I will try, now I can’t because of my work :frowning: .

This is the output of sudo inxi -b:

System:
  Host: endeavourvictus Kernel: 6.3.5-arch1-1 arch: x86_64 bits: 64
    Desktop: Xfce v: 4.18.1 Distro: EndeavourOS
Machine:
  Type: Laptop System: HP product: Victus by HP Laptop 16-e1xxx v: N/A
    serial: 5CD2333SRN
  Mobo: HP model: 8A22 v: 19.75 serial: PPVWB018JGZ049 UEFI: AMI v: F.17
    date: 11/02/2022
Battery:
  ID-1: BAT0 charge: 43.6 Wh (62.9%) condition: 69.3/69.3 Wh (100.0%)
    volts: 15.4 min: 15.4
CPU:
  Info: 8-core AMD Ryzen 7 6800H with Radeon Graphics [MT MCP] speed (MHz):
    avg: 747 min/max: 400/4785
Graphics:
  Device-1: NVIDIA GA107M [GeForce RTX 3050 Ti Mobile] driver: nouveau
    v: kernel
  Device-2: AMD Rembrandt [Radeon 680M] driver: amdgpu v: kernel
  Device-3: Chicony HP Wide Vision HD Camera driver: uvcvideo type: USB
  Display: x11 server: X.Org v: 21.1.8 driver: X: loaded: amdgpu,modesetting
    dri: radeonsi,nouveau gpu: amdgpu resolution: 1920x1080~144Hz
  API: OpenGL v: 4.6 Mesa 23.1.1 renderer: AMD Radeon Graphics (rembrandt
    LLVM 15.0.7 DRM 3.52 6.3.5-arch1-1)
Network:
  Device-1: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet
    driver: r8169
  Device-2: MEDIATEK MT7921 802.11ax PCI Express Wireless Network Adapter
    driver: mt7921e
Drives:
  Local Storage: total: 953.87 GiB used: 8.04 GiB (0.8%)
Info:
  Processes: 327 Uptime: 5m Memory: available: 14.85 GiB used: 1.7 GiB (11.5%)
  Shell: Bash inxi: 3.3.27

Is it enough to know how old is the laptop?

Thank you all.

this point can cause :

yay -S lm_sensors 
sudo sensors-detect