CPU gets stuck at 0.2 GHz

Hi all,

Wondering if anyone else is having an issue (I run Linux, and haven’t tested this on Windows) where when playing video games (both natively and via Proton), it will suddenly start lagging after an indeterminate amount of time (sometimes hours, sometimes five minutes). I had had an issue with my charger and had it replaced around January/February, and have updated my drivers.
I had installed Void and Ubuntu dual-boot, and for the last month or so, running games on Ubuntu worked fine (except Elden Ring). However, I switched to Manjaro and I’m having the same issue again. I had had the same issue on Ubuntu as well, but as I mentioned it was working fine the last month.
This is particularly frustrating as running games on Windows is actually more laggy than Linux, but I can’t keep having the CPU go down to 0.2 for an indiscriminate amount of time.
Hoping someone else has had the same issue and found a fix.

1 Like

Any ideas from here?

When I contacted support a few months ago, they suggested the remedies listed (unplug, shut down, restart) but noted that the issue should be fixed with the BIOS update. I’ve also not seen anyone mentioned getting down to 200MHz, and I have conky running which shows that (at least, from what I’ve seen) the temperature has never reached 100. The times it has been hottest, actually, have not been when it clocks down to 0.2. The restarting/booting also didn’t solve the issues previously, so I’m reluctant to have to do that again.
I’ll try switching the PC adapter port over to the other side though (I have two USB-C’s cards) to see if it’s another charging issue.

Battery might be shot. There are three main considerations for a CPU dropping down in clock speed:

  1. Low battery causing the battery to switch to low power mode.
  2. Overheating causing the CPU to throttle to reduce heat.
  3. Misconfigured settings such as a bad TLP config, throttling the CPU.

The 90w charger does not provide enough power for the system under max load, it has to be compensated for by the battery. When the battery power drops below a certain level the system will switch to low power settings.

I experienced the 0.39GHz clock when I ran with the default TLP config. I think TLP defaults to 200 MHz for power saving settings, but my CPU would not drop below 400 MHz. I did not enable the minimum clock speed, so the CPU might have defaulted to 400 MHz as a minimum. Once I realized that the DLP clock settings were in KHz and not MHz, I was able to increase the minimum clock to a more reasonable 0.6 GHz (600 MHz), and raise the max to the base clock of 2.8 GHz.

I’ve experience the CPU locking at 200MHz a few times.

I have latest bios (3.07) installed.

I run Gentoo Linux and I compile a lot, haven’t seen this behavior during 1~2 hour 100% cpu usage with 90+ temperature when compiling packages.

I play a few games all via Proton, all occurrences of locking at 200MHz happen during the game play. I have desktop widget showing individual core usage, temperature and frequency. The games I play mostly just use a single core and temperature is around 70~80. GPU appears to be fully busy at least indicated by intel_gpu_top.

When the CPU is locked at 200MHz, the only thing that reliably gets it back to normal is time. Reboot doesn’t really help. Shut down and turning back on doesn’t really help. Quit the game and then wait patiently and it’ll eventually get unstuck. I remember I’ve seen the temperature keeps dropping (since I quit the game) all the way to 60 and it’s still locked to 200MHz.

FWIW, cpupower says the hardware limits of frequency is “400 MHz - 4.70 GHz” so I don’t know why it could even be stuck at 200MHz.

I have battery charging limit set to 80% in bios, and I almost exclusively use with a charger plugged in.

@Shuai_Wang I’m really glad I’m not the only one experiencing this. I also have it happen only when playing games, not when anything else intensive is running. I wonder if it has to do with the iGPU? I know when my computer goes to 0.2, the iGPU is at full at 1300MHz… I also only use it plugged in, but it’s happened when it wasn’t too.

I use the “performance” governor.

@RandomUser Where can I find that? And also, @Shuai_Wang has the same issue as myself, so they were just trying to find a solution too.

You can use “cat” in a terminal to display output from a text file. And pipe it through “grep” to filter the results based on keywords ( cat foo | grep foo ).

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

Typically, “performance” and “powersave” are the two available governors on a Framework Laptop. Performance creating more heat.

@RandomUser @Monster_user …Well, those folders (cpu[any]/cpufreq and scaling_governor) don’t exist/aren’t where I would imagine them. I know, though, that before I wiped my system and booted to Windows/Ubuntu, cpufreq did exist, and I remember having to fiddle with the governor as well per previous advice about this issue. I can’t remember what I set the governor to, though, but I don’t think it made a difference. Also, in the BIOS menu, turbo boost and those ‘max’ settings are disabled (again, done during my previous round of the same issue). Sorry that isn’t much help.

You may need to install TLP or auto-cpufreq.

@RandomUser @Monster_user I forgot I had Open Hardware monitor installed. My computer is currently back at 0.2, and it says that the bus speed is 100.1 MHz, while CPU Cores 1-4 are at 2800MHz. Temps maxed at 68C, and the GPU is only (apparently) being used 1%, 0.7/15.9GB shared memory.

@RandomUser Sorry, it went back up to 2800 before I realized and posted. However, my computer is currently downloading a file and it’s running at max temp for several minutes now and it hasn’t gone back to 0.2, so I don’t think it’s a temperature issue.

Can confirm after about an hour playing a game, with the temperature only hitting max 95, my computer is down to 400MHz across the cores, 100MHz bus speed, but it shows up at 0.2GHz on Task Manager.

@RandomUser Yeah, and it happens plugged in and not plugged in. That’s why I don’t think the previous issue is what’s happening. The only common denominator is that the GPU would be running when playing games, and that it’s somehow interfering with the CPU?

@volcanicmaggies I have seen my cores idle at 400 MHz, especially when using auto-cpufreq, so 400 MHz across the cores while idle would be the desired result. Active cores would spin up to the 2800 MHz as needed, or higher with Turbo.

0.2 on task manager is indeed funky. I wonder if it is detecting the GPU. With a 1300 MHz base clock, 200 MHz would be in range for an idle, low power, or thermal throttling clock speed for the GPU.

I’ve been lurking for a while without an account, but I’ve also been seeing this issue and I think I have some extra information that could help. The symptoms are a sudden drop in frame rate after a few hours of playing a game. The amount of time before it occurs appears random, and the package temperature also doesn’t appear to be a factor, either before or after. Performance gradually increases over the course of the next few minutes.

I’ve had HWiNFO64 running on the side a couple of times, and from that I can see that what’s actually happening is that the PL1 power limit suddenly drops from 28 W to about 5 W, and then slowly climbs back up to 28 W over time. I think the core frequency dropping super low is just due to it trying to stay under the power limit with a combined CPU and GPU load, which is obviously gives the cores even less power to work with.

The last time this happened, I tried opening Throttlestop to see if it would show the reason for the power limit, but interestingly enough simply the act of opening it restored the PL1 limit back to 28 W, so I couldn’t see what it was. I haven’t been able to better test this as the issue hasn’t occurred since, although I have also played a lot less of that particular game.

For reference I’m on a Batch 2 i7-1165G7 prebuilt running Windows 10 and BIOS 3.07. I’m running off a 65 W power adapter that I know can handle the PL1 easily because the CPU can turbo right up against the 4.1 GHz all core limit when hit with a load from idle, something it couldn’t do on a 45 W adapter I was using previously.

2 Likes

@Om_Gupta Hm, I’ll have to think about switching adapters, though again it happens even when not plugged in.

@Monster_user When I ran Void Linux, it actually showed that the GPU was maxed at 1300MHz whenever the CPU dropped to 0.2, it was otherwise pretty reliable with what seemed like accurate values so I’m tempted to think those were correct

Unfortunately I seem to have misplaced my screwdriver so that won’t be easy. For what it’s worth, I haven’t been having any issues with USB ports so I don’t think it’s that problem.

I don’t think it’s related to the battery or peak power. My system can turbo up above 50 W package power without issues, and it won’t be going anywhere that high under a constant load scenario where it has been operating within the 28 W PL1 for a while. My best guess would have been thermal issues with the power delivery circuitry, but even that doesn’t really explain why the issue is so hard to reproduce when the power usage is more or less constant and the mainboard should reach thermal equilibrium much sooner than the multiple hours the system has been running before these occurrences.

@OxyMagnesium Have you tried testing it by using something graphics-intensive? I agree I don’t think it’s related to the battery. I’ll also try using the program you mentioned to see if I can reproduce what you experienced, since I am having more constant drops.

@RandomUser I know I’m not the person you replied to, but I took my keyboard cover off and everything looked normal to me.