Forums

Skip to content

Advanced search
  • Quick links
    • Unanswered topics
    • Active topics
    • Search
  • FAQ
  • Login
  • Register
  • Board index Assistance Kernel & Hardware
  • Search

Power management cpu frequency drops under load

Kernel not recognizing your hardware? Problems with power management or PCMCIA? What hardware is compatible with Gentoo? See here. (Only for kernels supported by Gentoo.)
Post Reply
Advanced search
12 posts • Page 1 of 1
Author
Message
KWhat
l33t
l33t
User avatar
Posts: 673
Joined: Sun Sep 04, 2005 4:49 pm
Location: Los Angeles

Power management cpu frequency drops under load

  • Quote

Post by KWhat » Thu Jan 29, 2026 7:20 pm

I have a Lenovo carbon x1 (i7-10610U) and the CPU at idle will sit around 4 GHz but as soon as I start doing something CPU intensive it drops to 1.4 GHz and I can't seem to figure out why. Is it normal for this CPU and p-state to just throttle back when on AC power? This is the behavior I would expect while on battery. Am I thermal throttling at 63C? What else should I look at?

I have acpid, power-profiles-daemon and laptop_mode starting at the default run level.

Code: Select all

$ cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor 
performance
performance
performance
performance
performance
performance
performance
performance

Code: Select all

cat /sys/class/thermal/thermal_zone0/temp
63000

Code: Select all

$ grep MHz /proc/cpuinfo | sort -nr | head
cpu MHz         : 1400.026
cpu MHz         : 1400.020
cpu MHz         : 1400.012
cpu MHz         : 1400.008
cpu MHz         : 1400.000
cpu MHz         : 1399.998
cpu MHz         : 1399.997
cpu MHz         : 1399.993
Update

The problem looks to be /sys/firmware/acpi/platform_profile set to balanced but I am not sure why one of these utilities doesn't set it to performance when on AC power.

Code: Select all

cat /sys/firmware/acpi/platform_profile
balanced
Top
KWhat
l33t
l33t
User avatar
Posts: 673
Joined: Sun Sep 04, 2005 4:49 pm
Location: Los Angeles

  • Quote

Post by KWhat » Thu Jan 29, 2026 10:40 pm

I am starting to think that this is a rehash of the https://github.com/erpalma/throttled issue outlined in a few other posts.
Top
dmpogo
Advocate
Advocate
Posts: 3711
Joined: Thu Sep 02, 2004 9:21 pm
Location: Canada

  • Quote

Post by dmpogo » Fri Jan 30, 2026 2:56 am

I am surprised first of all that your CPU sits on idle at 4GHz. Usual behaviour with intel_pstate is opposite, frequency drops on idle, and accelerates under load. I see you are trying to do acpi frequency management yourself ?
Top
mark4
Apprentice
Apprentice
Posts: 219
Joined: Sat Feb 26, 2011 2:34 pm

Re: Power management cpu frequency drops under load

  • Quote

Post by mark4 » Fri Jan 30, 2026 3:13 am

KWhat wrote:I have a Lenovo carbon x1 (i7-10610U) and the CPU at idle will sit around 4 GHz but as soon as I start doing something CPU intensive it drops to 1.4 GHz and I can't seem to figure out why. Is it normal for this CPU and p-state to just throttle back when on AC power? This is the behavior I would expect while on battery. Am I thermal throttling at 63C? What else should I look at?

I have acpid, power-profiles-daemon and laptop_mode starting at the default run level.

Code: Select all

$ cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor 
performance
performance
performance
performance
performance
performance
performance
performance

Code: Select all

cat /sys/class/thermal/thermal_zone0/temp
63000

Code: Select all

$ grep MHz /proc/cpuinfo | sort -nr | head
cpu MHz         : 1400.026
cpu MHz         : 1400.020
cpu MHz         : 1400.012
cpu MHz         : 1400.008
cpu MHz         : 1400.000
cpu MHz         : 1399.998
cpu MHz         : 1399.997
cpu MHz         : 1399.993
Update

The problem looks to be /sys/firmware/acpi/platform_profile set to balanced but I am not sure why one of these utilities doesn't set it to performance when on AC power.

Code: Select all

cat /sys/firmware/acpi/platform_profile
balanced
THis is exactly my problem. When I emerge something the configure happens at about 4ghz on a single core and 2.2ghz on all other P cores and 1.2 on my e cores. when the actual build starts all P cores max at 2.2 and all e cores max at 1.2 which is REALLY REALLY annoying because I should be able to get 5.6ghz but never come close to it. ever.
Top
KWhat
l33t
l33t
User avatar
Posts: 673
Joined: Sun Sep 04, 2005 4:49 pm
Location: Los Angeles

  • Quote

Post by KWhat » Fri Jan 30, 2026 4:39 am

I see you are trying to do acpi frequency management yourself ?
I am not really trying to, i've just been going though all the services I can think of that do power management to see if anything would have an effect. Setting /sys/firmware/acpi/platform_profile to performance manually had good results and throttled which is in portage does what I kind of expected from either power-profiles-daemon, laptop_mode or tpl. I think this is a lenovo issue with their wonky firmware. There is another post I found that had a very similar issue which is how I ended up trying throttled.

https://forums.gentoo.org/viewtopic-p-8707922.html
Top
lazardo
n00b
n00b
Posts: 10
Joined: Mon Sep 29, 2025 11:39 pm

zen3/4 ryzen performance helper

  • Quote

Post by lazardo » Sun Mar 08, 2026 7:15 pm

Normally running conservative governor (ryzen9 zenbook), but when emerge is large, manual switch to performance easily reaches thermal throttling in a good way, eg, 4.4GHz @95C

With zen3 + amd_pstate=passive, both of the following are required for full cpu utilization:

Code: Select all

$ for CPU in /sys/devices/system/cpu/cpu[0-9]*; do
    echo performance | sudo tee $CPU/cpufreq/scaling_governor
done
$ echo performance | sudo tee /sys/firmware/acpi/platform_profile
I suspect this may work for newer kernels + (amd intel) if the pstate driver and acpi are active.

Code: Select all

$ cat /sys/firmware/acpi/platform_profile 
performanc
$ cpupower frequency-info
analyzing CPU 7:
  driver: amd-pstate
  CPUs which run at the same hardware frequency: 7
  CPUs which need to have their frequency coordinated by software: 7
  maximum transition latency: 20.0 us
  hardware limits: 423 MHz - 4.68 GHz
  available cpufreq governors: conservative performance schedutil
  current policy: frequency should be within 423 MHz and 4.68 GHz.
                  The governor "performance" may decide which speed to use
                  within this range.
  current CPU frequency: Unable to call hardware
  current CPU frequency: 4.12 GHz (asserted by call to kernel)
  boost state support:
    Supported: yes
    Active: yes
    AMD PSTATE Highest Performance: 166. Maximum Frequency: 4.68 GHz.
    AMD PSTATE Nominal Performance: 117. Nominal Frequency: 3.30 GHz.
    AMD PSTATE Lowest Non-linear Performance: 39. Lowest Non-linear Frequency: 1.10 GHz.
    AMD PSTATE Lowest Performance: 15. Lowest Frequency: 400 MHz.
Mods: feel free to relocate.
Top
Ralphred
l33t
l33t
Posts: 822
Joined: Tue Dec 31, 2013 11:52 am

Re: zen3/4 ryzen performance helper

  • Quote

Post by Ralphred » Mon Mar 09, 2026 4:22 am

lazardo wrote:I suspect this may work for newer kernels + (amd intel)
The AMD and Intel p-state drives behave differently, because the CPU's behave differently.
The upper limits on the AMD drivers are purely thermal, so unless you are running something that is sensitive to the time it takes the driver to ramp up the clock* you will get the best all round performance from the power-save governor (requires active p-state). If the default frequencies for any governor are gimped (because laptop) you are better off altering those than switching to the legacy governors.

The Intel drivers are similar, but there are no reports that the more conservative drivers provide higher boost frequencies to the point of being noticeable, unlike the AMD driver.

*Like an RT kernel with variable load in a scientific data collection scenario, for normal stuff it's inperceivable even to CPU bound games or similar.
Top
Zucca
Moderator
Moderator
User avatar
Posts: 4690
Joined: Thu Jun 14, 2007 10:31 pm
Location: Rasi, Finland
Contact:
Contact Zucca
Website

  • Quote

Post by Zucca » Mon Mar 09, 2026 8:30 am

The processor has "configurable TDP".
That with all-core-turbo might cause such behavior.
..: Zucca :..

Code: Select all

init=/sbin/openrc-init
-systemd -logind -elogind seatd
I am NaN! I am a man!
Top
dmpogo
Advocate
Advocate
Posts: 3711
Joined: Thu Sep 02, 2004 9:21 pm
Location: Canada

  • Quote

Post by dmpogo » Mon Mar 09, 2026 7:48 pm

Check this thread

https://forums.gentoo.org/viewtopic-t-1 ... rt-50.html

and, in particular, reference in the second-to-last post. It seems that Intel p-state driver prioritizes energy efficiency over performance. I am contemplaiting to try to see what reverting to acpi driver will do.
Top
lazardo
n00b
n00b
Posts: 10
Joined: Mon Sep 29, 2025 11:39 pm

Re: zen3/4 ryzen performance helper

  • Quote

Post by lazardo » Thu Mar 12, 2026 8:07 pm

Ralphred wrote:
lazardo wrote:I suspect this may work for newer kernels + (amd intel)
The AMD and Intel p-state drives behave differently, because the CPU's behave differently.
The upper limits on the AMD drivers are purely thermal, so unless you are running something that is sensitive to the time it takes the driver to ramp up the clock* you will get the best all round performance from the power-save governor (requires active p-state).
...
Tnx. There was some p-state oddness (for me) in 6.12/6.13, eg:

Code: Select all

# amd_pstate in kernels >= 6.13 set min_freq to optimized,
# kernels <= 6.12 set min_freq to lowest, eg, power savings
if ! echo -e "6.13\n`uname -r`\n" | sort -C -V; then
	while read x; do
		(( ++mfcnt )); (( mftot += x ))
	done < <( cat /sys/devices/system/cpu/cpu[0-9]*/cpufreq/scaling_min_freq )

	# current average
	minavg=$(( mftot / mfcnt / 1000 ))
	# CPU says
	minmhz=$( lscpu | sed -n '/^CPU min/{s/^.* //;s/\.[0-9]*$//p}' )

	if [ $minavg -gt $(( minmhz * 3 / 2 )) ]; then
		for cpu in /sys/devices/system/cpu/cpu[0-9]*/cpufreq/scaling_min_freq; do
			echo ${minmhz}000 > $cpu
		done
		_msg "scaling_min_freq $minavg to $minmhz"
	else
		_msg "scaling_min_freq $minavg unchanged"
	fi
fi
Probably should revisit 'active'. https://github.com/Hekel1989/amdpstate-configuration
Top
Ralphred
l33t
l33t
Posts: 822
Joined: Tue Dec 31, 2013 11:52 am

Re: zen3/4 ryzen performance helper

  • Quote

Post by Ralphred » Fri Mar 13, 2026 11:14 am

lazardo wrote:Tnx. There was some p-state oddness (for me) in 6.12/6.13, eg:

Code: Select all

# amd_pstate in kernels >= 6.13 set min_freq to optimized,
# kernels <= 6.12 set min_freq to lowest, eg, power savings
Yeah. I ran 6.9.1 originally just to *get* the p-state driver, I'm not 100% sure what the change was for, but was happy with the original performance so "replicated" it with

Code: Select all

for file in /sys/devices/system/cpu/cpufreq/policy*;do
        cat $file/cpuinfo_min_freq > $file/scaling_min_freq
done
I think idle was ~2.6GHz w/o the change, when originally (and now) it was/is 600Mhz.
Top
Ralphred
l33t
l33t
Posts: 822
Joined: Tue Dec 31, 2013 11:52 am

Re: zen3/4 ryzen performance helper

  • Quote

Post by Ralphred » Fri Mar 13, 2026 2:13 pm

lazardo wrote:Tnx. There was some p-state oddness (for me) in 6.12/6.13, eg:

Code: Select all

# amd_pstate in kernels >= 6.13 set min_freq to optimized,
# kernels <= 6.12 set min_freq to lowest, eg, power savings
Yeah. I ran 6.9.1 originally just to *get* the p-state driver, I'm not 100% sure what the change was for, but was happy with the original performance so "replicated" it with

Code: Select all

for file in /sys/devices/system/cpu/cpufreq/policy*;do
        cat $file/cpuinfo_min_freq > $file/scaling_min_freq
done
I think idle was ~2.6GHz w/o the change, when originally (and now) it was/is 600Mhz.
Top
Post Reply

12 posts • Page 1 of 1

Return to “Kernel & Hardware”

Jump to
  • Assistance
  • ↳   News & Announcements
  • ↳   Frequently Asked Questions
  • ↳   Installing Gentoo
  • ↳   Multimedia
  • ↳   Desktop Environments
  • ↳   Networking & Security
  • ↳   Kernel & Hardware
  • ↳   Portage & Programming
  • ↳   Gamers & Players
  • ↳   Other Things Gentoo
  • ↳   Unsupported Software
  • Discussion & Documentation
  • ↳   Documentation, Tips & Tricks
  • ↳   Gentoo Chat
  • ↳   Gentoo Forums Feedback
  • ↳   Duplicate Threads
  • International Gentoo Users
  • ↳   中文 (Chinese)
  • ↳   Dutch
  • ↳   Finnish
  • ↳   French
  • ↳   Deutsches Forum (German)
  • ↳   Diskussionsforum
  • ↳   Deutsche Dokumentation
  • ↳   Greek
  • ↳   Forum italiano (Italian)
  • ↳   Forum di discussione italiano
  • ↳   Risorse italiane (documentazione e tools)
  • ↳   Polskie forum (Polish)
  • ↳   Instalacja i sprzęt
  • ↳   Polish OTW
  • ↳   Portuguese
  • ↳   Documentação, Ferramentas e Dicas
  • ↳   Russian
  • ↳   Scandinavian
  • ↳   Spanish
  • ↳   Other Languages
  • Architectures & Platforms
  • ↳   Gentoo on ARM
  • ↳   Gentoo on PPC
  • ↳   Gentoo on Sparc
  • ↳   Gentoo on Alternative Architectures
  • ↳   Gentoo on AMD64
  • ↳   Gentoo for Mac OS X (Portage for Mac OS X)
  • Board index
  • All times are UTC
  • Delete cookies

© 2001–2026 Gentoo Foundation, Inc.

Powered by phpBB® Forum Software © phpBB Limited

Privacy Policy

 

 

magic