Understanding Powersaving Programs like CnQ.

maniac5999

Senior member
Dec 30, 2009
505
14
81
So, I've been leaving my computer on 24/7 recently, and joined the Anandtech Correlizer team this week, which got me to thinking about system power efficiency. I understand the basic idea behind power consumption: Power Use = (clockspeed) X (Voltage)^2. I also understand the basic idea behind Cool and Quiet as implemented in the Phenom 1, namely to crank down the voltage (and clockspeed to maintain stability) when completely idle to save power.

However, I've been playing arond with PhenomMSRTweaker, and have started to wonder about several things. #1, the P2 allows 4 power states. How beneficial is it to enable those intermediate states between max and min? (if it matters, I can run at 1ghz @0.8v, 2.2ghz @1.05v, and 3.4ghz @1.325v) #2, it allows me to adjust the clockspeed of individual cores, but it can only adjust voltage for the whole chip. Given these limitations, is there any benefit to letting it adjust the cores individually? #3, what is an appropriate load to have it switch between power states? currently I have it set at 25% to increase (so that even an app that isn't multithreaded and just pegs one core doesn't get stuck in low power) and 20% to decrease (with only 2 states set) is this a good setting?

Finally, I'd like to continue to contribute to the Correlizer project, but I don't want to have a painful power bill at the same time. Is it possible to have my computer max correlizer on the lowest power setting without moving to a higher power state, while still being able to increase speed if other programs ramp up?
 

Plimogz

Senior member
Oct 3, 2009
678
0
71
Perhaps you could try changing the Use at most x% CPU Time in BOINC under Tools>Computing Preferences>Processor Usage.

If you allocated just enough CPU time to BOINC in order that the CPU should land in that 2nd highest power-state, perhaps correlizer could run at some slower speed on lower volts when the computer is idling away, but when you want to run something demanding, that application would run at your overclocked, power-hungry p-state.

I get the feeling that there must be a better way to do this, but this could be worth a shot. Then again, maybe Correlizer will always use a fixed % of the available CPU at whatever level CnQ sets, in which case my idea isn't worth the time it took me to write it out.
 
Last edited:

podspi

Golden Member
Jan 11, 2011
1,982
102
106
Finally, I'd like to continue to contribute to the Correlizer project, but I don't want to have a painful power bill at the same time. Is it possible to have my computer max correlizer on the lowest power setting without moving to a higher power state, while still being able to increase speed if other programs ramp up?


I can't speak to the rest of your post (sorry), but you can use Windows power plans to limit the p-state the CPU can reach. It isn't automatic, though. You'll have to switch it back and forth manually.
 

Plimogz

Senior member
Oct 3, 2009
678
0
71
a better thought is to use AMD Overdrive. I've never done it personally but here's a relevant snippet from a Tom's Hardware review of AOD:
Tom's Hardware said:
Also on the list of Overdrive 3.0 enhancements is a Smart Profiles feature, which takes some manual configuration, but in return offers granular control of your overclocks. On a per-application basis, you can set individual core clocks. So, if you fire up WinZip 12 knowing that it’s a single-threaded piece of software, you can create a corresponding profile, downclocking three of the Phenom II’s cores to give the fourth core additional thermal headroom—hopefully yielding an extra 200 or 300 MHz. The challenge here is going through your favorite apps one by one, setting core clocks, processor affinities, and so on. The functionality is interesting, though, and for the enthusiasts who take advantage of it, AMD demonstrates some modest performance gains (which mostly correspond to enabling additional frequency headroom).
 

maniac5999

Senior member
Dec 30, 2009
505
14
81
Perhaps you could try changing the Use at most x% CPU Time in BOINC under Tools>Computing Preferences>Processor Usage.

If you allocated just enough CPU time to BOINC in order that the CPU should land in that 2nd highest power-state, perhaps correlizer could run at some slower speed on lower volts when the computer is idling away, but when you want to run something demanding, that application would run at your overclocked, power-hungry p-state.

I get the feeling that there must be a better way to do this, but this could be worth a shot. Then again, maybe Correlizer will always use a fixed % of the available CPU at whatever level CnQ sets, in which case my idea isn't worth the time it took me to write it out.

Currently I have BOINC set to use 10%, the issue is that in order to keep from possibly being "stuck" at the low power state I have it set to increase at 25% (one core maxxed, other 3 idle) and to keep it from dropping down to low power while working, I have it set to only drop with 20% or less usage. my concern is that even if I increase BOINC to 20%, it might keep me from entering the low power state.


I can't speak to the rest of your post (sorry), but you can use Windows power plans to limit the p-state the CPU can reach. It isn't automatic, though. You'll have to switch it back and forth manually.

I'm really looking for it to be done automatically. Ideally whenever I walk away from my computer for more than 10min, and nothing's happening it'd downclock to 1ghz and 0.8v and kick correlizer on maxing the cores at that speed.


a better thought is to use AMD Overdrive. I've never done it personally but here's a relevant snippet from a Tom's Hardware review of AOD:

Unfortunately, AOD and PhenomMSRTweaker don't play nice. it's a cheap board, so CnQ doesn't work too well by default to begin with, and the Base Clock OC basically makes it worthless.
 

BD231

Lifer
Feb 26, 2001
10,568
138
106
The program you're using has no core scheduler?? Greedy bastards.