CPU vs GPU task priority

taketwicedailey
taketwicedailey
Joined: 30 Nov 17
Posts: 23
Credit: 736333184
RAC: 4136634
Topic 231284

On my main host, I run a bunch of All-Sky GPU tasks, and have enough threads left over to run a bunch of Gamma-Ray CPU tasks.

Normally BOINC seems to know that the GPU tasks as more important than the CPU tasks, but recently I have seen behaviour where the GPU tasks will be "Waiting to run" while the rest of my allocated threads are sent to more CPU tasks.

This is bad not only because I want to prioritize All Sky as it is worth more (and GWs are cool), but because this resets the GPU task staggering, requiring me to set it up again.

Is there a way to prioritize GPU task threads, so that a certain number of threads are dedicated to them only? Even if the CPU tasks I have downloaded are in danger of going over the deadline, I still want a certain number of threads dedicated to GPU tasks.

archae86
archae86
Joined: 6 Dec 05
Posts: 3157
Credit: 7220564931
RAC: 970958

The third party application

The third party application Process Lasso has somewhat extensive faclities to customize things by application.  In particular you can set applications only to run on particular CPUs, and you can set priorities that differ by application.

The results may not always be those you expect, so careful experimentation is rewarded.

I have run it for years now.

 

 

Ian&Steve C.
Ian&Steve C.
Joined: 19 Jan 20
Posts: 3945
Credit: 46731542642
RAC: 64208653

my sidebar suggestion is to

my sidebar suggestion is to not bother with task staggering. it might help initially, but the phasing will ebb and flow naturally, so unless you're constantly correcting it, it wont matter in the long run, and it will all even itself out.

you can limit the number of concurrent gamma ray CPU tasks by using the app_config.xml file with a subproject-specific <max_concurrent> setting.

_________________________________________________________________________

taketwicedailey
taketwicedailey
Joined: 30 Nov 17
Posts: 23
Credit: 736333184
RAC: 4136634

Yeah, the phase does change

Yeah, the phase does change over time for sure, but at least on my machine it can take up to a day to fully "randomize", so if all of the GPU tasks start off at the same time, I like to at least stagger one task on each GPU to help it along. But you are right, it doesn't matter in the long run.

 

And thanks for the app config suggestion, that is exactly what I was looking for, not sure why I didn't think of that.

taketwicedailey
taketwicedailey
Joined: 30 Nov 17
Posts: 23
Credit: 736333184
RAC: 4136634

Now I have another

Now I have another problem.

I think BOINC is underestimating the time it takes my CPU to finish a Gamma-Ray task, and is sending many of these tasks, so much so that it fills the maximum task cache size and now no more GW tasks are being downloaded.

There doesn't seem to be a way to limit the number of tasks downloaded for a specific app, but it would be nice if I could do that.

pututu
pututu
Joined: 6 Apr 17
Posts: 63
Credit: 653417392
RAC: 8

Maybe try running two

Maybe try running two boinc instances: one for gpu and the other for cpu without resorting to using <max_concurrent> flag?

There was a report about an issue when using <max_concurrent> flag as posted here. Maybe it could have been fixed in the latest version but worth checking out if this is related.

 

Eugene Stemple
Eugene Stemple
Joined: 9 Feb 11
Posts: 67
Credit: 374031734
RAC: 541172

taketwicedailey wrote: Now I

taketwicedailey wrote:

Now I have another problem.

I think BOINC is underestimating the time it takes my CPU to finish a Gamma-Ray task, and is sending many of these tasks, so much so that it fills the maximum task cache size and now no more GW tasks are being downloaded.

There doesn't seem to be a way to limit the number of tasks downloaded for a specific app, but it would be nice if I could do that.

A known BOINC problem when mixing cpu and gpu applications in the same project.  The best workaround I know of is to set the cache size really small - I use 0.3 day + 0.1 day.  My O3AS gpu tasks show 75 minutes estimated but run in 18 minutes, meanwhile BRP4G cpu tasks show 4:40 estimated but (typically) run 5:30.  It's a BOINC thing...  estimating based on "computation size" and being unaware of the difference between gpu and cpu capabilities.  The estimator is pulled in opposite directions, gpu tasks finish faster and cpu slower, and constantly "hunts" for a compromize.  As you've noted, with a typical cache size the "underestimated" cpu tasks dominate and tend to crowd out the gpu work.

 

taketwicedailey
taketwicedailey
Joined: 30 Nov 17
Posts: 23
Credit: 736333184
RAC: 4136634

This could very well be the

This could very well be the issue, as this was reportedly fixed in BOINC version 7.20 and I am running 7.18.

 

The only reason I haven't gone to the version 8 of BOINC is that their page still recommends 7.4 for Linux x86. Anyone upgrade beyond 7.18 on Ubuntu Linux x86? If so, where did you download it and how did you install it?

mikey
mikey
Joined: 22 Jan 05
Posts: 12680
Credit: 1839083724
RAC: 3916

taketwicedailey wrote: This

taketwicedailey wrote:

This could very well be the issue, as this was reportedly fixed in BOINC version 7.20 and I am running 7.18.

 

The only reason I haven't gone to the version 8 of BOINC is that their page still recommends 7.4 for Linux x86. Anyone upgrade beyond 7.18 on Ubuntu Linux x86? If so, where did you download it and how did you install it?

I use the 64 bit version and do it this way---I have Ubuntu on one of my pc's and it's running Boinc ver 7.24.1 and I got to there from 7.16 by opening the Synaptic Package Manager, it's  the list of programs,  and clicking the search box on the top right and typing boinc and pressing the enter key. It comes up with a list of boinc related stuff that you click to check to then install. On that pc I have boinc, boinc-client, boinc-client-nvidia-cuda, boinc-manager, boinc-virtualbox, libboinc-app7 and libboinc7 checked and then I go up top and click to Apply and it does it.

It shows the installed version AND the upgradable version on the same line and Version 8.02 JUST showed up on the list as upgrades to Apply if I wish, I'm not doing that right now but will at some point as all of my Windows pc's are already there.

taketwicedailey
taketwicedailey
Joined: 30 Nov 17
Posts: 23
Credit: 736333184
RAC: 4136634

Hmmm, did as you say, but all

Hmmm, did as you say, but all of the related boinc packages list the latest version as 7.18.1 for me.

mikey
mikey
Joined: 22 Jan 05
Posts: 12680
Credit: 1839083724
RAC: 3916

taketwicedailey wrote: Hmmm,

taketwicedailey wrote:

Hmmm, did as you say, but all of the related boinc packages list the latest version as 7.18.1 for me.

I wonder if that's because you said you are using the 32bit version of Boinc and I believe they've stopped development on it and are only doing any required problem fixes now.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.