Ability to specify "How many" CPUs to use when computer is in use

Questions and Answers : Wish list : Ability to specify "How many" CPUs to use when computer is in use
Message board moderation

To post messages, you must log in.

AuthorMessage
Darrell Wilcox Project Donor
Volunteer tester

Send message
Joined: 11 Nov 99
Posts: 303
Credit: 180,954,940
RAC: 118
Vietnam
Message 1570328 - Posted: 11 Sep 2014, 5:38:35 UTC

I have 6 computers with i7 processors (4+4 CPUs) and 2 other computers with dual processors running SETI and other projects. Unfortunately, in Tools > Computing preferences > Computing allowed section, it is an "all or none" for using the CPUs while the computer is in use. Ditto for the GPUs.

I wish for the ability to specify the number of CPUs/GPUs that may be used while the computer is in use, since I only rarely use more than a single CPU and GPU when I am doing work on any of my computers. Thus, the other CPUs/GPUs could continue automatically.

I know I can free a CPU by adjusting the number using the "... use at most __% of the processors ...", but I don't want to have to adjust that down every time I want to check my email and other things, and then back up when I am finished. The alternative is to always leave 1 not in use. I am aware of NO easy alternative for GPU usage adjustment.

I am sure many, many other people are running multi-processor and -GPU computers now, so this might give a bit more CPU/GPU power to science.
ID: 1570328 · Report as offensive
OzzFan Crowdfunding Project Donor*Special Project $75 donorSpecial Project $250 donor
Volunteer tester
Avatar

Send message
Joined: 9 Apr 02
Posts: 15691
Credit: 84,761,841
RAC: 28
United States
Message 1570406 - Posted: 11 Sep 2014, 9:43:05 UTC - in response to Message 1570328.  
Last modified: 11 Sep 2014, 9:44:23 UTC

Why should you have to adjust the CPUs BOINC uses while you check your email? By default, the science applications run at the lowest thread priority supported by the OS, and things like email or other user-initiated tasks all run at normal priority. There is no competition for CPU resources between these two things; the user resources will all win out.

For GPU apps, use the <exclusive_gpu_app> param in cc_config.xml so that it suspends GPU processing whenever a specific executable is in memory.
ID: 1570406 · Report as offensive
Darrell Wilcox Project Donor
Volunteer tester

Send message
Joined: 11 Nov 99
Posts: 303
Credit: 180,954,940
RAC: 118
Vietnam
Message 1570958 - Posted: 12 Sep 2014, 14:12:57 UTC - in response to Message 1570406.  

Why should you have to adjust the CPUs BOINC uses while you check your email? By default, the science applications run at the lowest thread priority supported by the OS, and things like email or other user-initiated tasks all run at normal priority. There is no competition for CPU resources between these two things; the user resources will all win out.

For GPU apps, use the <exclusive_gpu_app> param in cc_config.xml so that it suspends GPU processing whenever a specific executable is in memory.
It is not the email that uses much CPU or GPU, it is the "other" things that often get performed during the time when I check my email. Some tasks use small amounts of CPU many, many times. Each little sip of CPU requires an admittedly small wait for one of the CPUs to come free. My understanding of Windows is that it is a polling that results in task switches, not an interrupt. Thus the elapsed time is extended and responsiveness suffers.

Even "normal" uses are impacted by the "background" uses of projects. It may just be that the projects are not offering to give up the CPU often enough. Whatever it is, I notice it as lag between typing and action of the program. When I have BOINC leave 1 or more CPUs for my use, I don't get the lags.

Another "thing" is when a video game is being played. One of my machines has 4 GPUs, all of which must stop if I want a single GPU for my use.
ID: 1570958 · Report as offensive
Profile BilBg
Volunteer tester
Avatar

Send message
Joined: 27 May 07
Posts: 3720
Credit: 9,385,827
RAC: 0
Bulgaria
Message 1571036 - Posted: 12 Sep 2014, 17:06:33 UTC - in response to Message 1570958.  

Another "thing" is when a video game is being played. One of my machines has 4 GPUs, all of which must stop if I want a single GPU for my use.

For this problem you can try GPUSwitch 2.0
"Script for disabling/enabling GPUs on the fly"
http://setiathome.berkeley.edu/forum_thread.php?id=62127

The original site (http://www.hellhorse.net/) is down (no DNS record) so I Uploaded my copy:
http://www2.zippyshare.com/v/78377495/file.html

The GPU Switch script makes changes to cc_config.xml


Before usage you need to change some strings in GPUSwitch.js

var strBOINCDir = "D:\\Sensitive data programs\\BOINC";

And all strings (read the above link for cc_config.xml to know why):
ignore_cuda_dev

... to:
ignore_nvidia_dev

 
 


- ALF - "Find out what you don't do well ..... then don't do it!" :)
 
ID: 1571036 · Report as offensive
John McLeod VII
Volunteer developer
Volunteer tester
Avatar

Send message
Joined: 15 Jul 99
Posts: 24806
Credit: 790,712
RAC: 0
United States
Message 1571327 - Posted: 13 Sep 2014, 4:37:33 UTC - in response to Message 1570958.  

Why should you have to adjust the CPUs BOINC uses while you check your email? By default, the science applications run at the lowest thread priority supported by the OS, and things like email or other user-initiated tasks all run at normal priority. There is no competition for CPU resources between these two things; the user resources will all win out.

For GPU apps, use the <exclusive_gpu_app> param in cc_config.xml so that it suspends GPU processing whenever a specific executable is in memory.
It is not the email that uses much CPU or GPU, it is the "other" things that often get performed during the time when I check my email. Some tasks use small amounts of CPU many, many times. Each little sip of CPU requires an admittedly small wait for one of the CPUs to come free. My understanding of Windows is that it is a polling that results in task switches, not an interrupt. Thus the elapsed time is extended and responsiveness suffers.

Even "normal" uses are impacted by the "background" uses of projects. It may just be that the projects are not offering to give up the CPU often enough. Whatever it is, I notice it as lag between typing and action of the program. When I have BOINC leave 1 or more CPUs for my use, I don't get the lags.

Another "thing" is when a video game is being played. One of my machines has 4 GPUs, all of which must stop if I want a single GPU for my use.

It is up to the OS to do the switching. The programs only control their priority. There is a checkbox someplace in the control panel (System maybe) that allows you to optimize for background tasks or foreground tasks. Optimize for foreground tasks means that the process switcher will respond faster to high priority tasks requesting CPU time.

that said, Most users do not notice that all of their CPUs are in use by BOINC on most machines. The reverse is true for GPUs. Most users will notice a difference if the GPUs are all in use when you are active.


BOINC WIKI
ID: 1571327 · Report as offensive
Darrell Wilcox Project Donor
Volunteer tester

Send message
Joined: 11 Nov 99
Posts: 303
Credit: 180,954,940
RAC: 118
Vietnam
Message 1571478 - Posted: 13 Sep 2014, 14:57:59 UTC - in response to Message 1571327.  

... There is a checkbox someplace in the control panel (System maybe) that allows you to optimize for background tasks or foreground tasks. ...
I think you mean the Computer > Properties > Advanced > Performance > Settings > Advanced tab. I can select "Adjust for best performance of: 1) Programs, or 2) Background services". Since I am running programs for my usage, I chose "Programs". If it had been the other way, your suggestion might have been just the ticket to success.

Most users do not notice that all of their CPUs are in use by BOINC on most machines
I agree with you 100%, but then I am probably NOT the average user. I have six systems with i7 CPUs, two with dual cores, and another bare bones I only use for certain standalone disk maintenance activities. I am fairly sure most users don't run that many systems. I also worked in IT for 30 years as an operator, system programmer, manager, configuration manager, and have a BSEE degree. I am quite aware of when my computers are not acting quite right, and try to adjust things so they are optimal.

This forum is for "wishes", and this is one of mine. Do the developers read these wishes and put them into some road map for incorporation? It would be good to know which are planned and which are still just wishes.
ID: 1571478 · Report as offensive
Darrell Wilcox Project Donor
Volunteer tester

Send message
Joined: 11 Nov 99
Posts: 303
Credit: 180,954,940
RAC: 118
Vietnam
Message 1571484 - Posted: 13 Sep 2014, 15:03:01 UTC - in response to Message 1571036.  

To BilBg: Thanks for the references. I will take a look to see if it/they will satisfy my wish in another way.
ID: 1571484 · Report as offensive
John McLeod VII
Volunteer developer
Volunteer tester
Avatar

Send message
Joined: 15 Jul 99
Posts: 24806
Credit: 790,712
RAC: 0
United States
Message 1571760 - Posted: 14 Sep 2014, 3:17:07 UTC - in response to Message 1571478.  

... There is a checkbox someplace in the control panel (System maybe) that allows you to optimize for background tasks or foreground tasks. ...
I think you mean the Computer > Properties > Advanced > Performance > Settings > Advanced tab. I can select "Adjust for best performance of: 1) Programs, or 2) Background services". Since I am running programs for my usage, I chose "Programs". If it had been the other way, your suggestion might have been just the ticket to success.

Most users do not notice that all of their CPUs are in use by BOINC on most machines
I agree with you 100%, but then I am probably NOT the average user. I have six systems with i7 CPUs, two with dual cores, and another bare bones I only use for certain standalone disk maintenance activities. I am fairly sure most users don't run that many systems. I also worked in IT for 30 years as an operator, system programmer, manager, configuration manager, and have a BSEE degree. I am quite aware of when my computers are not acting quite right, and try to adjust things so they are optimal.

This forum is for "wishes", and this is one of mine. Do the developers read these wishes and put them into some road map for incorporation? It would be good to know which are planned and which are still just wishes.

If there is a possible configuration problem, we try to fix that first before bringing the wish to the attention of the developers. There have been quite a few wishes that were solved by fixing a configuration issue,

What is the state of using GPU when you are active?


BOINC WIKI
ID: 1571760 · Report as offensive
Profile Jord
Volunteer tester
Avatar

Send message
Joined: 9 Jun 99
Posts: 15184
Credit: 4,362,181
RAC: 3
Netherlands
Message 1571813 - Posted: 14 Sep 2014, 8:44:35 UTC - in response to Message 1571478.  

This forum may be for wishes, but what you wish for is something that needs to be added to the Boinc framework, not to Seti. And no, the Boinc developers certainly don't read these forums.

That said, what you wish for is one thing that gets wished for about 7 times a year on the Boinc forums and which I no longer forward to the developers anymore, as it's in some form on their "future to do list" already: http://boinc.berkeley.edu/trac/wiki/PrefsRemodel.
ID: 1571813 · Report as offensive
Darrell Wilcox Project Donor
Volunteer tester

Send message
Joined: 11 Nov 99
Posts: 303
Credit: 180,954,940
RAC: 118
Vietnam
Message 1571865 - Posted: 14 Sep 2014, 14:01:00 UTC - in response to Message 1571760.  

What is the state of using GPU when you are active?
I'm not quite sure what you are asking here. What I see when I notice lags is one task running a heavy CPU workload and displaying a progress bar while a second task, also heavy CPU, is crunching away on what it is doing. The progress bar normally has a steady progression from left to right for each chunk of work, except when my second task is also running. Then the progress bar will move, pause a little, move some more from where it stopped, pause, move, ... If I use Tools - > Computing preferences > processor usage > "... use at most 90% ..." to have BOINC stop using a CPU, the progress bar returns to its normal, steady progressing. Neither of these tasks use the GPU for anything other than normal displays.

Did this help any? Could this be the result of some O/S resource locking which isn't getting enough CPU to release its lock in a timely manner? Perhaps I will try giving CPU preference to the background processes to see if it changes.

Any other questions or suggestions to try?
ID: 1571865 · Report as offensive
Darrell Wilcox Project Donor
Volunteer tester

Send message
Joined: 11 Nov 99
Posts: 303
Credit: 180,954,940
RAC: 118
Vietnam
Message 1571867 - Posted: 14 Sep 2014, 14:05:08 UTC - in response to Message 1571813.  

That said, what you wish for is one thing that gets wished for about 7 times a year on the Boinc forums and which I no longer forward to the developers anymore, as it's in some form on their "future to do list" already: http://boinc.berkeley.edu/trac/wiki/PrefsRemodel.
Excellent! You are acting as the "front end processor" for the devs to filter duplicate wishes. And the link you gave is a great place to look before making any more wishes here. Thanks!
ID: 1571867 · Report as offensive
Profile BilBg
Volunteer tester
Avatar

Send message
Joined: 27 May 07
Posts: 3720
Credit: 9,385,827
RAC: 0
Bulgaria
Message 1571970 - Posted: 14 Sep 2014, 20:35:24 UTC - in response to Message 1571865.  

On which computer ID is this:
http://setiathome.berkeley.edu/hosts_user.php?userid=61201

How do you know "Neither of these tasks use the GPU"?
Are they SETI@home v7 or AstroPulse?
What is the process name (.exe)?

What you describe (lag and % progress in 'chunks') seems like OpenCL GPU AstroPulse task
 


- ALF - "Find out what you don't do well ..... then don't do it!" :)
 
ID: 1571970 · Report as offensive
Darrell Wilcox Project Donor
Volunteer tester

Send message
Joined: 11 Nov 99
Posts: 303
Credit: 180,954,940
RAC: 118
Vietnam
Message 1572133 - Posted: 15 Sep 2014, 8:46:58 UTC - in response to Message 1571970.  

On which computer ID is this:
http://setiathome.berkeley.edu/hosts_user.php?userid=61201
The one I use most frequently for my other work is ID: 5111135

How do you know "Neither of these tasks use the GPU"? Are they SETI@home v7 or AstroPulse? What is the process name (.exe)?
Neither one is a BOINC project - they are "other" programs I use. The program that shows the progress bar is a batch-type conversion program working on (usually) a large number of files, and each file gets its progress of conversion being reported individually. Thus I can see the progress file by file, and during each file conversion. The other program is a preprocessor for the conversion program and works on a large number of files, but has no progress bar. While the preprocessor works one batch of files, the conversion program works on the previous batch. There is no overlap between the batches.

Since computer ID: 5111135 only has an iGPU, I don't run games on it, but it is the one where I see lags from the CPU usage. The lag I see is NOT for the display - it is in the progress of the conversions. If the progress bar "jumped", then it would be a display lag. The progress bar is smooth, but with intermittent pauses in processing.
ID: 1572133 · Report as offensive
Profile BilBg
Volunteer tester
Avatar

Send message
Joined: 27 May 07
Posts: 3720
Credit: 9,385,827
RAC: 0
Bulgaria
Message 1572595 - Posted: 16 Sep 2014, 7:48:11 UTC - in response to Message 1572133.  

Neither one is a BOINC project - they are "other" programs I use.

Then why we (you) discuss this here??

"other" programs run in normal (or higher) priority
CPU tasks of any project run by BOINC use low/idle priority so do not introduce lag (even when they show as using 100% CPU)
Even on 500 MHz CPU I do not feel lag (i.e. no difference if BOINC runs or not CPU SETI@home task on the single core of this CPU)
 


- ALF - "Find out what you don't do well ..... then don't do it!" :)
 
ID: 1572595 · Report as offensive
Darrell Wilcox Project Donor
Volunteer tester

Send message
Joined: 11 Nov 99
Posts: 303
Credit: 180,954,940
RAC: 118
Vietnam
Message 1572663 - Posted: 16 Sep 2014, 13:59:13 UTC - in response to Message 1572595.  

Then why we (you) discuss this here??
I posted my wish for a BOINC capability and you started asking questions.

My experience with all CPUs running BOINC projects (not just SETI), is not the same as yours. I DO notice lags when I don't make BOINC use fewer than all CPUs when I run my heavy tasks.

In the link posted earlier in this thread, I see that others have also wished for the same capability, or at least one that is similar, so I am content to wait for the developers to add it, someday. Meanwhile, I will either throttle BOINC manually or just live with the lags.

So far as I am concerned, this thread is ended.
ID: 1572663 · Report as offensive

Questions and Answers : Wish list : Ability to specify "How many" CPUs to use when computer is in use


 
©2024 University of California
 
SETI@home and Astropulse are funded by grants from the National Science Foundation, NASA, and donations from SETI@home volunteers. AstroPulse is funded in part by the NSF through grant AST-0307956.