How can I avoid my computer overheating when plugged in?

I have a Thinkpad X1 Extreme. When plugged in, it runs so hot the heat coming up through the keyboard bakes my palms. The fans don’t stop. When on battery, it’s perfectly cool and silent and I can work all day without needing to charge. I like how it behaves while on battery, can I have this too when plugged in?

I changed these:
/etc/tlp.conf L0116: CPU_ENERGY_PERF_POLICY_ON_AC=“balance_power”
/etc/tlp.conf L0117: CPU_ENERGY_PERF_POLICY_ON_BAT=“power”

But my changes to the performance policy did not have an effect.

Did I miss something?

> sudo tlp start           
TLP started in AC mode (auto).

--- TLP 1.5.0 --------------------------------------------
+++ System Info
System         = LENOVO ThinkPad X1 Extreme 2nd 20QVCTO1WW
BIOS           = N2OET49W (1.36 )
OS Release     = Manjaro Linux
Kernel         = 5.15.55-1-MANJARO #1 SMP PREEMPT Fri Jul 15 09:45:39 UTC 2022 x86_64
Init system    = systemd 
Boot mode      = UEFI

+++ TLP Status
State          = enabled
RDW state      = not installed
Last run       = 17:52:15,     27 sec(s) ago
Mode           = AC
Power source   = AC

+++ Configured Settings:
defaults.conf L0004: TLP_ENABLE="1"
defaults.conf L0005: TLP_WARN_LEVEL="3"
defaults.conf L0006: TLP_PERSISTENT_DEFAULT="0"
defaults.conf L0007: DISK_IDLE_SECS_ON_AC="0"
defaults.conf L0008: DISK_IDLE_SECS_ON_BAT="2"
defaults.conf L0009: MAX_LOST_WORK_SECS_ON_AC="15"
defaults.conf L0010: MAX_LOST_WORK_SECS_ON_BAT="60"
/etc/tlp.conf L0116: CPU_ENERGY_PERF_POLICY_ON_AC="balance_power"
/etc/tlp.conf L0117: CPU_ENERGY_PERF_POLICY_ON_BAT="power"
/etc/tlp.conf L0152: SCHED_POWERSAVE_ON_AC="1"
defaults.conf L0014: SCHED_POWERSAVE_ON_BAT="1"
defaults.conf L0015: NMI_WATCHDOG="0"
defaults.conf L0016: DISK_DEVICES="nvme0n1 sda"
defaults.conf L0017: DISK_APM_LEVEL_ON_AC="254 254"
defaults.conf L0018: DISK_APM_LEVEL_ON_BAT="128 128"
defaults.conf L0019: DISK_APM_CLASS_DENYLIST="usb ieee1394"
defaults.conf L0020: DISK_IOSCHED="keep keep"
defaults.conf L0021: SATA_LINKPWR_ON_AC="med_power_with_dipm max_performance"
defaults.conf L0022: SATA_LINKPWR_ON_BAT="med_power_with_dipm min_power"
defaults.conf L0023: AHCI_RUNTIME_PM_ON_AC="on"
defaults.conf L0024: AHCI_RUNTIME_PM_ON_BAT="auto"
defaults.conf L0025: AHCI_RUNTIME_PM_TIMEOUT="15"
defaults.conf L0026: PCIE_ASPM_ON_AC="default"
defaults.conf L0027: PCIE_ASPM_ON_BAT="default"
defaults.conf L0028: RADEON_DPM_PERF_LEVEL_ON_AC="auto"
defaults.conf L0029: RADEON_DPM_PERF_LEVEL_ON_BAT="auto"
defaults.conf L0030: RADEON_POWER_PROFILE_ON_AC="default"
defaults.conf L0031: RADEON_POWER_PROFILE_ON_BAT="default"
defaults.conf L0032: WIFI_PWR_ON_AC="off"
defaults.conf L0033: WIFI_PWR_ON_BAT="on"
defaults.conf L0034: WOL_DISABLE="Y"
defaults.conf L0035: SOUND_POWER_SAVE_ON_AC="1"
defaults.conf L0036: SOUND_POWER_SAVE_ON_BAT="1"
defaults.conf L0037: SOUND_POWER_SAVE_CONTROLLER="Y"
defaults.conf L0038: BAY_POWEROFF_ON_AC="0"
defaults.conf L0039: BAY_POWEROFF_ON_BAT="0"
defaults.conf L0040: BAY_DEVICE="sr0"
defaults.conf L0041: RUNTIME_PM_ON_AC="on"
defaults.conf L0042: RUNTIME_PM_ON_BAT="auto"
defaults.conf L0043: RUNTIME_PM_DRIVER_DENYLIST="mei_me nouveau radeon"
defaults.conf L0044: USB_AUTOSUSPEND="1"
defaults.conf L0045: USB_EXCLUDE_AUDIO="1"
defaults.conf L0046: USB_EXCLUDE_BTUSB="0"
defaults.conf L0047: USB_EXCLUDE_PHONE="0"
defaults.conf L0048: USB_EXCLUDE_PRINTER="1"
defaults.conf L0049: USB_EXCLUDE_WWAN="0"
defaults.conf L0050: USB_AUTOSUSPEND_DISABLE_ON_SHUTDOWN="0"
defaults.conf L0051: RESTORE_DEVICE_STATE_ON_STARTUP="0"
defaults.conf L0052: RESTORE_THRESHOLDS_ON_BAT="0"
defaults.conf L0053: NATACPI_ENABLE="1"
defaults.conf L0054: TPACPI_ENABLE="1"
defaults.conf L0055: TPSMAPI_ENABLE="1"

I just forced a permanent BAT mode. Heat and fans are gone.

/etc/tlp.conf L0050: TLP_PERSISTENT_DEFAULT="1"
/etc/tlp.conf L0044: TLP_DEFAULT_MODE="BAT"

So I know tlp is working. Now to figure out which of the AC settings was the cause of the heat, if not CPU_ENERGY_PERF_POLICY_ON_AC

don’t know whether this helps
but I have here:

CPU_ENERGY_PERF_POLICY_ON_AC="balance_performance"
and
CPU_ENERGY_PERF_POLICY_ON_BAT="balance_power"

(these are the defaults - the options are still commented in my config file)

then again, it could be your GPU which produces the heat
there are options for that in tlp.conf as well

These are still at the default for my radeon discrete GPU
but I don’t use it anyway and it is always powered off
I use the internal intel gpu on my notebook
good enough for me …
I never ran into any limitation using solely it
not the way I use my system - but I don’t game …

Thanks, that’s useful. I started with those defaults too. And my GPU is also disabled. I thought that my change to CPU_ENERGY_PERF_POLICY_ON_AC was not having an effect, but now it seems more likely that its one of the other options that I should look at.

In the end my confusion came from looking in the wrong place. The CPU policy was not the issue, it was the mostly the disabled PCIe power management. Now my machine is no longer burning up when plugged in :smiley: I will update the title.

/etc/tlp.conf L0152: SCHED_POWERSAVE_ON_AC=“1”
/etc/tlp.conf L0254: AHCI_RUNTIME_PM_ON_AC=“auto”
/etc/tlp.conf L0349: RUNTIME_PM_ON_AC=“auto”

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.