Variable CPU load

Message boards : BOINC Manager : Variable CPU load
Message board moderation

To post messages, you must log in.

AuthorMessage
Travis von Dessonneck

Send message
Joined: 31 Jul 08
Posts: 30
United States
Message 102060 - Posted: 10 Dec 2020, 1:33:57 UTC

Can we get an option of more than on or off for CPU usage? Can we have programs that simply throttle the CPU usage of BOINC back based on the application? Rather than stop processing completely while I am playing or running code I'd rather BOINC manager just cut back from my normal 90% to say 50%
ID: 102060 · Report as offensive
Profile Dave

Send message
Joined: 28 Jun 10
Posts: 1339
United Kingdom
Message 102065 - Posted: 10 Dec 2020, 11:24:26 UTC - in response to Message 102060.  

Can we get an option of more than on or off for CPU usage? Can we have programs that simply throttle the CPU usage of BOINC back based on the application? Rather than stop processing completely while I am playing or running code I'd rather BOINC manager just cut back from my normal 90% to say 50%


I can see how that might look attractive to many users, however given that BOINC should only be using your spare cycles is it really necessary?
The answer to that depends a bit on the type of work you do.

I often run my machines with no restriction and on my now retired core2 duo it would lock up and become unresponsive with some types of task but with others it would be fine. The same is true of my ageing 4 core laptop. Rather than restrict the percentage on that I restrict BOINC to using no more than three cores at a time if I want to work on it as well. (At the moment the tasks running on it use level3 cache extensively and run significantly faster if I only run 4 on my Ryzen7 and one on the laptop.) If your coding or other work is being slowed down by BOINC it may be a cache or other memory issue rather than the time on your cores.
ID: 102065 · Report as offensive
Profile Jord
Volunteer tester
Help desk expert
Avatar

Send message
Joined: 29 Aug 05
Posts: 14592
Netherlands
Message 102066 - Posted: 10 Dec 2020, 12:04:37 UTC
Last modified: 10 Dec 2020, 12:05:09 UTC

It's our longest running BOINC enhancement request to date: issue #41, differentiate between number of CPUs to use in idle and busy mode, original request date 04-07-2007

Since no one has done it to date, I don't expect it'll ever be added.
ID: 102066 · Report as offensive
Profile Dave

Send message
Joined: 28 Jun 10
Posts: 1339
United Kingdom
Message 102067 - Posted: 10 Dec 2020, 12:15:00 UTC - in response to Message 102066.  

It's our longest running BOINC enhancement request to date: issue #41, differentiate between number of CPUs to use in idle and busy mode, original request date 04-07-2007

Since no one has done it to date, I don't expect it'll ever be added.


I am not surprised!
ID: 102067 · Report as offensive
Travis von Dessonneck

Send message
Joined: 31 Jul 08
Posts: 30
United States
Message 102106 - Posted: 12 Dec 2020, 18:24:46 UTC - in response to Message 102065.  

You're missing the flexibility it allows. You can have exclusive applications that completely suspend BOINC, but being able to simple change the allocated processing % based on what apps are running (i.e. if I am playing a game I'd change my baseline 90% to 50% so that BOINC doesn't cause stuttering, but is still working) rather than stop it all together means that more work will get done no matter what you are doing. I can do this manually now, but it should be easy for this to be automated.
ID: 102106 · Report as offensive
Les Bayliss
Help desk expert

Send message
Joined: 25 Nov 05
Posts: 1485
Australia
Message 102112 - Posted: 12 Dec 2020, 23:09:01 UTC - in response to Message 102106.  

"We" are not missing anything.
If none of the few programmers who work on BOINC haven't wanted to do something about it, then that's how it is.

The program is open source, so just download the code, re-write it, then share the results.
ID: 102112 · Report as offensive
Travis von Dessonneck

Send message
Joined: 31 Jul 08
Posts: 30
United States
Message 102113 - Posted: 13 Dec 2020, 0:01:51 UTC - in response to Message 102112.  

Where would I find the code to download?
ID: 102113 · Report as offensive
Les Bayliss
Help desk expert

Send message
Joined: 25 Nov 05
Posts: 1485
Australia
Message 102116 - Posted: 13 Dec 2020, 1:20:50 UTC - in response to Message 102113.  

ID: 102116 · Report as offensive
ProDigit

Send message
Joined: 8 Nov 19
Posts: 626
United States
Message 102137 - Posted: 13 Dec 2020, 23:27:12 UTC

are you talking about running your CPU at 80% instead of 100%?
Because if so, you can assign less CPU cores.
You can also disable HT in bios, to run less cores.
A third option, which is less popular, is to use the 'on-off' switching, by allowing your CPU to process WUs 80% of the time.
Meaning, it'll shift between 100% utilization for 80% of the time, and 0% for 20% of the time.
I never use this feature, but I guess it could help lower a heat sink temperature.
ID: 102137 · Report as offensive
Profile pquesinb

Send message
Joined: 4 Jan 21
Posts: 4
United States
Message 102416 - Posted: 4 Jan 2021, 21:56:36 UTC - in response to Message 102137.  

I'd second the suggestion to run fewer CPU cores. I'm not real keen on the on/off method as the repeated thermal cycling just doesn't seem like a great idea. Cycling fast enough to lessen the effect would just create more overhead.

One thing I've done with my GPU for projects that use it is to restrict the clock speed so it's not running flat out all the time. For instance, on the RTX 2060 card I have, I limit the max GPU clock to 1200MHz with the following command:
nvidia-smi -lgc 300,1200

This limits the power usage to about 65 watts or so, which is just about perfect IMHO.

For CPU-bound tasks, just run fewer cores.

Cheers,

- Phil
ID: 102416 · Report as offensive

Message boards : BOINC Manager : Variable CPU load

Copyright © 2021 University of California. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation.