Can I make BRP4cuda use 0.25 CPU instead of 0.20 CPU?

Alaun  Pederson
Alaun Pederson
Joined: 5 Sep 10
Posts: 8
Credit: 59,120,449
RAC: 0
Topic 196550

Linux
CUDA
BRP4cuda

Quad core intel
(2) GTX 460

With other projects I have written an app_info file to manually set parameters.

I want to have Einstein CUDA tasks use 0.25 CPU instead of the stock 0.20 CPU. That way four GPU tasks will reserve one CPU core. Everything runs faster when I give the GPU tasks their own core.

How can I do this in Einstein, and does anyone have a sample App_Info?

Jord
Joined: 26 Jan 05
Posts: 2,952
Credit: 5,893,653
RAC: 16

Can I make BRP4cuda use 0.25 CPU instead of 0.20 CPU?

What makes you think that running 4 x 0.20 CPU does not reserve one CPU core for the GPU? And why not just tell BOINC to run with one less CPU core then, if you want that one CPU core to be reserved for the GPU?

"On multiprocessors, use at most" 75% "of the processors ".

Alaun  Pederson
Alaun Pederson
Joined: 5 Sep 10
Posts: 8
Credit: 59,120,449
RAC: 0

When I use 0.25 CPU, only 3

When I use 0.25 CPU, only 3 CPU tasks will start. (because the 4th core is fully reserved)

When I use 0.20 CPU, I get 4 CPU tasks (because there's still 0.20 of a core available)

If I set BOINC to use 75% of the processors, it still doesnt reserve a core for the GPU, it just treats my system like it only has 3 cores. (3 CPU tasks, one of which is trying to run on 0.20 of a core.)

Horacio
Horacio
Joined: 3 Oct 11
Posts: 205
Credit: 80,557,243
RAC: 0

RE: If I set BOINC to use

Quote:
If I set BOINC to use 75% of the processors, it still doesnt reserve a core for the GPU, it just treats my system like it only has 3 cores. (3 CPU tasks, one of which is trying to run on 0.20 of a core.)

Nope... BOINC does not set any kind of affinity between the apps and the cores.
If you set it at 75% it means that BOINC will only start 3 CPU tasks, and the 4th core will be theoretically "free" but anyway it will be used to feed the GPUs, its exactly the same result you will have using 0.25 in the CPU usage of GPU apps. The only difference is that the 4th core wont be used even if you have no GPU work.

Alaun  Pederson
Alaun Pederson
Joined: 5 Sep 10
Posts: 8
Credit: 59,120,449
RAC: 0

RE: If you set it at 75% it

Quote:
If you set it at 75% it means that BOINC will only start 3 CPU tasks, and the 4th core will be theoretically "free" but anyway it will be used to feed the GPUs

Setting to 75% leaves the 4th core completely unavailable to BOINC. The 4th core idles along at 2%.

If you set it up the other way, the 4th core runs at more like 60% feeding the GPUs.

We could argue that all day, but my question is, how do I write a Linux app_info for this project?

Gundolf Jahn
Gundolf Jahn
Joined: 1 Mar 05
Posts: 1,079
Credit: 341,280
RAC: 0

Anonymous platform

Anonymous platform

Computer sind nicht alles im Leben. (Kleiner Scherz)

Horacio
Horacio
Joined: 3 Oct 11
Posts: 205
Credit: 80,557,243
RAC: 0

RE: RE: If you set it at

Quote:
Quote:
If you set it at 75% it means that BOINC will only start 3 CPU tasks, and the 4th core will be theoretically "free" but anyway it will be used to feed the GPUs

Setting to 75% leaves the 4th core completely unavailable to BOINC. The 4th core idles along at 2%.

If you set it up the other way, the 4th core runs at more like 60% feeding the GPUs.

We could argue that all day, but my question is, how do I write a Linux app_info for this project?


Im not arguing with you.
Everybody here is using this to reserve cores for the GPU, including me, and it works. If it doesnt work for you, may be there is something else going on in your host that we dont know.

Anyway, while using an app_info its not forbidden by the Einstein project, its strongly discouraged. They have added the BRP factor utilization as a prefference option to the configuration to avoid the necessity of an app_info, so nowaday there is little data available about what the contents of the file should be...

Anyway, If you really want to go that route, you will need to study the contents of the client_state.xml file (in the BOINC data directory) to find the apps settings related to the Einstein apps that you need to add to the app_info...
Also, Im sure there are some old threads in this forum with older versions of the app_info that you can use as a starter...

Fred J. Verster
Fred J. Verster
Joined: 27 Apr 08
Posts: 118
Credit: 22,451,438
RAC: 0

RE: RE: RE: If you set

Quote:
Quote:
Quote:
If you set it at 75% it means that BOINC will only start 3 CPU tasks, and the 4th core will be theoretically "free" but anyway it will be used to feed the GPUs

Setting to 75% leaves the 4th core completely unavailable to BOINC. The 4th core idles along at 2%.

If you set it up the other way, the 4th core runs at more like 60% feeding the GPUs.

We could argue that all day, but my question is, how do I write a Linux app_info for this project?


Im not arguing with you.
Everybody here is using this to reserve cores for the GPU, including me, and it works. If it doesnt work for you, may be there is something else going on in your host that we dont know.

Anyway, while using an app_info its not forbidden by the Einstein project, its strongly discouraged. They have added the BRP factor utilization as a prefference option to the configuration to avoid the necessity of an app_info, so nowaday there is little data available about what the contents of the file should be...

Anyway, If you really want to go that route, you will need to study the contents of the client_state.xml file (in the BOINC data directory) to find the apps settings related to the Einstein apps that you need to add to the app_info...
Also, Im sure there are some old threads in this forum with older versions of the app_info that you can use as a starter...

Freeing 1 or 2 cores of a CPU makes sense if you skip CPU-affinity, through
cmdline setting, which isn't possible at Einstein, IIRC.

Comment viewing options

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