Throttling on multi-cores by pausing processes at different moments

Started by Pepo, February 22, 2011, 03:43:23 PM

Previous topic - Next topic

0 Members and 2 Guests are viewing this topic.

Pepo

I've seen the idea at BOINC dev (a bit confused reasoning down there, but never mind, the main idea stays valid IMO) and had to steal it immediately ;D

OK, what about to randomize the moments, when the running BOINC tasks' processes are paused, instead of pausing them all at one moment? (I understand that it would possibly not have such noticeable effect as it would have on a machine using BOINC's native throttling, as the period in TTh is much shorter than in BOINC, but... the power supply could notice it?)
Peter

fred

Quote from: Pepo on February 22, 2011, 03:43:23 PM
I've seen the idea at BOINC dev (a bit confused reasoning down there, but never mind, the main idea stays valid IMO) and had to steal it immediately ;D

OK, what about to randomize the moments, when the running BOINC tasks' processes are paused, instead of pausing them all at one moment? (I understand that it would possibly not have such noticeable effect as it would have on a machine using BOINC's native throttling, as the period in TTh is much shorter than in BOINC, but... the power supply could notice it?)
This is not a bad idea, I will see what's possible.
Randomize is probably not the best solution as it messes up everything.  But spreading out the throttling over time may be a solution.

Pepo

Quote from: fred on February 22, 2011, 04:08:40 PM
Randomize is probably not the best solution as it messes up everything.  But spreading out the throttling over time may be a solution.
OK, that is really a better wording :-)
I think that the more cores, the higher power consumption spikes...
(It would be very good in the client, with its very long intervals, but unfortunately it is implemented there the cheapest possible way,  suspending the whole computation.)
Peter

fred

V. 3.2 will use a randomized scattering pattern over 4 threads.
This seems to drastically eliminate the throttling spikes from 5C to 2C on my notebook.
And best of all it doesn't add to the overhead.
Removed all threads from the throttling that are not doing much. This eliminates almost half of the threads on Seti.
Thanks Pepo for the great suggestion.

Pepo

Peter