Comment 44 for bug 2026658

Revision history for this message
Eli (biblicabeebli) wrote (last edit ):

I'll describe my process to replicate the transient throttling I see on 6.0.9, and the permanent throttle on 6.2.x
- Open up whatever you are using to watch clocks and temperature, and two terminals.
- in one terminal run stress -c 1.
- you will see one cpu core spike to your cpu's maximum clock speed and pretty much stay there. For me its 4.8 Ghz.
- in the other terminal run stress -c 1.
- you will now see two cores running slightly under that single core maximum speed. I get a value in the 4.7-4.8 range, which probably means flipping between 4.7-4.8 ghz.
- this is the maximum heat output of the cpu, if the fan has not spun up you will see a Package Temp up to 100, when the fan spins up for me it drops to ~92.
- after running at max clock for 10-20 seconds the cpu will throttle down to it's multicore turbo speed. For me it's 4.2-4.3Ghz, and the temperature will drop a solid 15-20 degrees.
- kill one of your stress commands, you will see the temperature spike back up.
- wait ~10 seconds and then run stress -c 1 again in the terminal you just killed it in. Clocks will stay at max for a bit, then drop, and then kill one of the stress commamds.
- Repeat this process of keeping 1 and then 2 cores always at maximum clocks, and you will eventually get thermal throttled down to 400Mhz.
- weirdly it stays at 400Mhz even on 6.0.9 until you stop running both stress commands, even though temps recover to like 45 degrees.

This process reliably triggers bug 1, and very occasionally (I've done it once) can trigger bug 2.

If you use something like my script to get power details (I just call them that, I don't have a better name) you can watch long_term_power fluctuate and then nosedive from 65 to 0.125.

(All values in celcius)