Advanced search

Message boards : Graphics cards (GPUs) : GPU enabled only on GPUGRID project?

Author Message
rmstep
Send message
Joined: 15 Sep 08
Posts: 1
Credit: 0
RAC: 0
Level

Scientific publications
wat
Message 2356 - Posted: 15 Sep 2008 | 17:43:09 UTC

I was wondering if the BOINC project has to be GPU enabled to use the GPU procesing. The reason I ask is because I participate in the "World Community Grid", and it would be nice to harness the power of the GPUs for that project.

Additionally, is it possible to run one BOINC project on the GPU and one on the CPU(s). If this is the case I might start generating maximum heat and put gpugrid.net on the GPU and WCG on the CPU.

DeleteNull
Send message
Joined: 28 Aug 08
Posts: 10
Credit: 142,385,295
RAC: 0
Level
Cys
Scientific publications
watwatwatwatwatwatwatwatwatwat
Message 2358 - Posted: 15 Sep 2008 | 18:17:33 UTC - in response to Message 2356.


Additionally, is it possible to run one BOINC project on the GPU and one on the CPU(s). If this is the case I might start generating maximum heat and put gpugrid.net on the GPU and WCG on the CPU.


In the moment (Boinc 6.3.10) the boinc-client assigns one WU to each CPU, regardless if this WU is a GPU-WU or a CPU-WU.
To meet your target, you have to fool the boinc-client by announcing one additional CPU, e.g. Host 8166 with 5 CPU's.
On this host i am crunching 4 CPU-WU's (PrimeGrid) and one PS3-WU; the PrimeGrid-WU's with 99% per CPU and PS3 with about 5%.

Profile Venturini Dario[VENETO]
Send message
Joined: 26 Jul 08
Posts: 44
Credit: 4,832,360
RAC: 0
Level
Ala
Scientific publications
watwatwatwatwatwatwatwat
Message 2359 - Posted: 15 Sep 2008 | 19:11:47 UTC - in response to Message 2358.


To meet your target, you have to fool the boinc-client by announcing one additional CPU, e.g. Host 8166 with 5 CPU's.
On this host i am crunching 4 CPU-WU's (PrimeGrid) and one PS3-WU; the PrimeGrid-WU's with 99% per CPU and PS3 with about 5%.


???? How did you manage to do that??

DeleteNull
Send message
Joined: 28 Aug 08
Posts: 10
Credit: 142,385,295
RAC: 0
Level
Cys
Scientific publications
watwatwatwatwatwatwatwatwatwat
Message 2360 - Posted: 15 Sep 2008 | 19:20:35 UTC - in response to Message 2359.
Last modified: 15 Sep 2008 | 19:21:20 UTC

???? How did you manage to do that??


1. check out the sources.
2. file boinc/client/hostinfo_unix.C in line 764: p_ncpus = p_ncpus + 1; (+=1)
3. compile and use it (linux version)

for a windows version #2 should be done in ...hostinfo_win.C

Profile GDF
Volunteer moderator
Project administrator
Project developer
Project tester
Volunteer developer
Volunteer tester
Project scientist
Send message
Joined: 14 Mar 07
Posts: 1957
Credit: 629,356
RAC: 0
Level
Gly
Scientific publications
watwatwatwatwat
Message 2361 - Posted: 15 Sep 2008 | 19:27:53 UTC - in response to Message 2358.


Additionally, is it possible to run one BOINC project on the GPU and one on the CPU(s). If this is the case I might start generating maximum heat and put gpugrid.net on the GPU and WCG on the CPU.


In the moment (Boinc 6.3.10) the boinc-client assigns one WU to each CPU, regardless if this WU is a GPU-WU or a CPU-WU.
To meet your target, you have to fool the boinc-client by announcing one additional CPU, e.g. Host 8166 with 5 CPU's.
On this host i am crunching 4 CPU-WU's (PrimeGrid) and one PS3-WU; the PrimeGrid-WU's with 99% per CPU and PS3 with about 5%.


Hi,
is the GPU application any slower doing this?

gdf

DeleteNull
Send message
Joined: 28 Aug 08
Posts: 10
Credit: 142,385,295
RAC: 0
Level
Cys
Scientific publications
watwatwatwatwatwatwatwatwatwat
Message 2362 - Posted: 15 Sep 2008 | 19:47:28 UTC - in response to Message 2361.

Hi,
is the GPU application any slower doing this?

gdf


In 21 hours and 26 minutes my 8800-Card has made 1 WU and 36,5% of the next WU. That matches exactly the average time of 54200 seconds per WU with the 6.42 application.
Perhaps (?) the CPU-usage of 5%-6% is one percent higher than before, but this is not significant. It is a great success that you can use (nearly) one more CPU for other projects.

Profile K1atOdessa
Send message
Joined: 25 Feb 08
Posts: 249
Credit: 370,320,941
RAC: 0
Level
Asp
Scientific publications
watwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwat
Message 2363 - Posted: 15 Sep 2008 | 20:31:49 UTC - in response to Message 2360.


1. check out the sources.
2. file boinc/client/hostinfo_unix.C in line 764: p_ncpus = p_ncpus + 1; (+=1)
3. compile and use it (linux version)

for a windows version #2 should be done in ...hostinfo_win.C


I searched for hostinfo_win.C in the boinc/client path, but was not able to locate it. Any ideas? I installed as protected so BOINC is running as a user account. Could this have any impact on me being able to locate this file?

DeleteNull
Send message
Joined: 28 Aug 08
Posts: 10
Credit: 142,385,295
RAC: 0
Level
Cys
Scientific publications
watwatwatwatwatwatwatwatwatwat
Message 2364 - Posted: 15 Sep 2008 | 20:54:58 UTC - in response to Message 2363.


1. check out the sources.


svn co http://boinc.berkeley.edu/svn/trunk/boinc

Have you done this? Or what do you mean with "installed protected mode"? "Check out" is not an installation!

ExtraTerrestrial Apes
Volunteer moderator
Volunteer tester
Avatar
Send message
Joined: 17 Aug 08
Posts: 2705
Credit: 1,311,122,549
RAC: 0
Level
Met
Scientific publications
watwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwat
Message 2365 - Posted: 15 Sep 2008 | 20:57:52 UTC

He's talking about downloading the BOINC source files, editing a line and compiling it yourself. I don't want to be rude, but if you didn't get this it's probably not meant for you ;)

MrS
____________
Scanning for our furry friends since Jan 2002

Profile GDF
Volunteer moderator
Project administrator
Project developer
Project tester
Volunteer developer
Volunteer tester
Project scientist
Send message
Joined: 14 Mar 07
Posts: 1957
Credit: 629,356
RAC: 0
Level
Gly
Scientific publications
watwatwatwatwat
Message 2366 - Posted: 15 Sep 2008 | 21:07:25 UTC - in response to Message 2365.

He's talking about downloading the BOINC source files, editing a line and compiling it yourself. I don't want to be rude, but if you didn't get this it's probably not meant for you ;)

MrS


Please do not change the BOINC code if possible. It will be difficult to debug issues for us if there are different policies in place.

If this user test confirms that the GPU application runs at the same speed, we will change the server policy to release the processor.

If the gpu application is slower with the current boinc client and all cpu taken, you will be losing credits instead of increasing it, because you are slowing down the fastest device on the computer. Just wait a couple of days of testing with this user machine.

gdf

DeleteNull
Send message
Joined: 28 Aug 08
Posts: 10
Credit: 142,385,295
RAC: 0
Level
Cys
Scientific publications
watwatwatwatwatwatwatwatwatwat
Message 2368 - Posted: 15 Sep 2008 | 21:17:47 UTC

Hi gdf,

the only modification is: p_ncpus = p_ncpus + 1;

And this works (for me) very well...

ExtraTerrestrial Apes
Volunteer moderator
Volunteer tester
Avatar
Send message
Joined: 17 Aug 08
Posts: 2705
Credit: 1,311,122,549
RAC: 0
Level
Met
Scientific publications
watwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwat
Message 2369 - Posted: 15 Sep 2008 | 21:40:32 UTC

I think GDF is right. We don't want people to start messing with compilers and learning all the tricks and glitches the hard way by causing errors in a beta project. The only realistic option would be to distribute the modded BOINC, but since 6.3.11 is not that far away this probably isn't worth the hassle.

MrS
____________
Scanning for our furry friends since Jan 2002

Profile GDF
Volunteer moderator
Project administrator
Project developer
Project tester
Volunteer developer
Volunteer tester
Project scientist
Send message
Joined: 14 Mar 07
Posts: 1957
Credit: 629,356
RAC: 0
Level
Gly
Scientific publications
watwatwatwatwat
Message 2370 - Posted: 15 Sep 2008 | 21:55:55 UTC - in response to Message 2368.

Hi gdf,

the only modification is: p_ncpus = p_ncpus + 1;

And this works (for me) very well...



That's good. If we see that works, we will release the cpu. The new boinc client is designed to make sure that the gpu application is not suspended while time-slicing the cpu between the other tasks. This can potentially making the gpu application slower (it was so when we tested months ago, but we were also using 100% of cpu).

gdf

Profile GDF
Volunteer moderator
Project administrator
Project developer
Project tester
Volunteer developer
Volunteer tester
Project scientist
Send message
Joined: 14 Mar 07
Posts: 1957
Credit: 629,356
RAC: 0
Level
Gly
Scientific publications
watwatwatwatwat
Message 2371 - Posted: 15 Sep 2008 | 21:59:26 UTC - in response to Message 2370.
Last modified: 15 Sep 2008 | 21:59:51 UTC

Hi gdf,

the only modification is: p_ncpus = p_ncpus + 1;

And this works (for me) very well...



That's good. If we see that works, we will release the cpu. The new boinc client is designed to make sure that the gpu application is not suspended while time-slicing the cpu between the other tasks. This can potentially making the gpu application slower (it was so when we tested months ago, but we were also using 100% of cpu).

gdf



Also, now that the cpu is free, we may end up using it anyway for doing other computing tasks while GPU is crunching. This will give additional credits of course (work in progress).

gdf

Profile koschi
Avatar
Send message
Joined: 14 Aug 08
Posts: 124
Credit: 486,829,198
RAC: 1,362,608
Level
Gln
Scientific publications
watwatwatwatwatwatwatwatwatwatwat
Message 2372 - Posted: 15 Sep 2008 | 22:12:34 UTC

There are other, more easier ways to let BOINC use more processors than the system actually has. Don't ask... Figure it out, its not difficult or far away!

I configured my C2D to use 3 cores and my Quad to use 5 and right now each crunches n+1 processes. So far this looks good, times seem not to drop.

My Quad with the 9800GT used to take 58600 seconds for one unit with 6.42. With 6.44 I can say that it takes somewhere in the range of 16-17 hours, but its a little difficult to say, as wall time for that unit can not be found under Linux. Time per step was 69.4ms.
Yesterday I switched to 5 tasks on that hosts and the unit that was just reported took no longer than 16,5 to max 17 hours at 70.754ms per step.

So it was a little slower, but not much. The 2% slowdown I'm willing to take, when I can have that core free.

On the C2D with 8800GTS the time per step increased from 52.8ms to 53.8ms.

In our forum other users (windows) have reported that this increases their crunching time for one unit a lot. So for Windows users forcing one extra core / thread is not expedient.
Might be some scheduler issue in the operating system, I don't know...

But for me and Stoffel it seems to run fine so far.
Lets monitor this for some days. I set my client to return results immediately, so that I can use the upload time as run time indicator. Maybe Linux is already ready for running the GPU thread in parrallel without (or just very small) impact to the run times... :)

Profile K1atOdessa
Send message
Joined: 25 Feb 08
Posts: 249
Credit: 370,320,941
RAC: 0
Level
Asp
Scientific publications
watwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwat
Message 2373 - Posted: 15 Sep 2008 | 23:14:25 UTC - in response to Message 2365.

He's talking about downloading the BOINC source files, editing a line and compiling it yourself. I don't want to be rude, but if you didn't get this it's probably not meant for you ;)

MrS



Over my head. :-) Just running BOINC to help out science. Don't want to get too involved or create issues by tweaking something that possibly will be a feature in a future version of BOINC. I'll keep crunching along -- thanks for the response.

JKuehl2
Send message
Joined: 18 Jul 08
Posts: 33
Credit: 3,233,174
RAC: 0
Level
Ala
Scientific publications
watwatwatwatwat
Message 2387 - Posted: 16 Sep 2008 | 13:11:40 UTC - in response to Message 2360.
Last modified: 16 Sep 2008 | 13:14:03 UTC

???? How did you manage to do that??


1. check out the sources.
2. file boinc/client/hostinfo_unix.C in line 764: p_ncpus = p_ncpus + 1; (+=1)
3. compile and use it (linux version)

for a windows version #2 should be done in ...hostinfo_win.C


can be done both in linux and windows in cc_config.xml with attribute
<ncpus>

see here for documentaiton of cc_config
http://boinc.berkeley.edu/wiki/Client_configuration

But it slows down processing ALOT (maybe only on windows, problem with the scheduler?) 31k seconds before and 55k seconds after the modification.

We tracked down the issue (it was not the firewall causing the increase in computation time).

Profile Krunchin-Keith [USA]
Avatar
Send message
Joined: 17 May 07
Posts: 512
Credit: 111,288,061
RAC: 0
Level
Cys
Scientific publications
watwatwatwatwatwatwatwatwatwatwatwatwatwatwat
Message 2391 - Posted: 16 Sep 2008 | 15:08:01 UTC - in response to Message 2387.

???? How did you manage to do that??


1. check out the sources.
2. file boinc/client/hostinfo_unix.C in line 764: p_ncpus = p_ncpus + 1; (+=1)
3. compile and use it (linux version)

for a windows version #2 should be done in ...hostinfo_win.C


can be done both in linux and windows in cc_config.xml with attribute
<ncpus>

see here for documentaiton of cc_config
http://boinc.berkeley.edu/wiki/Client_configuration

But it slows down processing ALOT (maybe only on windows, problem with the scheduler?) 31k seconds before and 55k seconds after the modification.

We tracked down the issue (it was not the firewall causing the increase in computation time).

This <ncpus> is meant for diagnostics only and not meant to be used as a normal way to run boinc.

I would advise to wait for an official release.

Profile DoctorNow
Avatar
Send message
Joined: 18 Aug 07
Posts: 83
Credit: 122,995,082
RAC: 0
Level
Cys
Scientific publications
watwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwat
Message 2454 - Posted: 19 Sep 2008 | 9:29:44 UTC - in response to Message 2391.
Last modified: 19 Sep 2008 | 9:30:45 UTC

This <ncpus> is meant for diagnostics only and not meant to be used as a normal way to run boinc.

I would advise to wait for an official release.

Well, this is what I use currently under Windows after Stoffels hint at our team forum.
It works pretty well for me, already crunching the second WU with it, while the 2 main cpus doing PrimeGrid.
____________
Member of BOINC@Heidelberg and ATA!

Profile [SETI.USA]Tank_Master
Avatar
Send message
Joined: 8 Jul 07
Posts: 85
Credit: 67,463,387
RAC: 0
Level
Thr
Scientific publications
watwatwatwatwatwatwatwatwatwatwatwat
Message 2477 - Posted: 19 Sep 2008 | 16:35:10 UTC

things go bad when a project goes into "High Priority Mode" when you have it configured that way. And it doesn't stop BOINC from running 3 WUs from primgrid or any other project.

Post to thread

Message boards : Graphics cards (GPUs) : GPU enabled only on GPUGRID project?

//