Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

If you're comparing idle CPU power consumption, the cores are likely effectively "turned off" while idle anyway.

Offlining CPUs manually is still useful to limit what random software on your computer can do. There should still be difference between loading 1 CPU core to 100% and loading all 8 cores.

Though savings may be cancelled out a bit by CPU using higher boost frequencies when only one core is loaded. So you may need to disable boost too, if you want to save power by disabling CPUs for non-idle use case.

It would be easiest if I could say to the CPU: limit power use to this maximum. It's still doing it anyway to stay within TDP. Maybe there's some manual setting somewhere for that?



I had just hoped that actually off would be better than idling-off, a bit like how idling RAM consumes more power than off RAM.

For AMD’s CPUs/APUs, ryzenadj is a tool that does what you want. I use it when I want to constrain my power usage, switching it to a 5W TDP does better than just choosing the powersave governor.

I found that `sudo ryzenadj --stapm-limit 100 --fast-limit 100 --slow-limit 100`, telling it to aim for the unrealistically low limit of 100mW, reduces the clock speed below the standard 1.2GHz to 400MHz. Idling at 400MHz uses the same power as idling at 1.2GHz, but thrashing all cores at 400MHz definitely uses less power than thrashing all at 1.2GHz, though I can’t remember actual numbers (I did this a few months ago). Turning the machine into a single-thread 400MHz machine definitely slows things down!


I'm not an expert on this, and I don't know how the power-saving states for AMD processors work, but my understanding is that at least for modern Intel CPUs the deepest power-saving states pretty much turn the core off. [1]

Also, I'm not actually sure minimizing the clock frequency is going to maximize power savings. The voltage required for stable operation increases with the clock frequency, but the relationship is not linear. The top frequencies require proportionally higher voltage for the performance gains, so they are less power efficient. However, since the relationship is not linear, there may be a sweet spot between the minimum and the maximum with the lowest energy consumption per operation. [2] The power consumption per second will be at its lowest on the lowest clock frequency, but the power consumption for an entire computation might not be.

[1] https://itigic.com/c-state-on-intel-processors-what-it-is-ho...

[2] Energy-Efficient Data Processing at Sweet Spot Frequencies; Götz et al., 2014; https://link.springer.com/chapter/10.1007/978-3-662-45550-0_..., https://jorge-cardoso.github.io/publications/Papers/CP-2014-...


Idling RAM has to be continually refreshed. In that sense RAM can't really ever be idle. A CPU can be literally off and turned on almost instantly.


Thanks for mentioning ryzenadj. I'll have to try it. :)




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: