Optimising GPU-usage

ExtraTerrestrial Apes
ExtraTerrestria...
Joined: 10 Nov 04
Posts: 770
Credit: 570673643
RAC: 171847

RE: Haven't tried on at

Message 99291 in response to message 99290

Quote:
Haven't tried on at MilkyWay :).

Don't borther ;)
GTX 4870, 470 and 465 can use 1/8 of their single precision FLOPs at MW, the GTX460 can use 1/12 and the ATIs can use 2/5. And pack quite a lot of raw horse power to begin with.

Quote:
An ATI 4850 can do a lot work there, ~40 -60K RAC

My HD4870 (>1.5 years old, 160€ back then) currently runs OC'ed at 820 MHz (up from 750) core and with underclocked memory (465 MHz instead of 900, saves ~30 W). Each WU normally takes 171.5s, so let's say on average 172s. Therefore it could reach an RAC of 107k. That's what I call impressive!

The only modification I had to do is to use the anonymous platform and give it the "b-1" parameter. This makes the display a little sluggish and costs some CPU cycles, but drives GPU utilization up to 99%. Running a second WU in parallel would still get a higher throughput, as there's a break of 2-3s between WUs (CPU prepares the work).

MrS

Scanning for our furry friends since Jan 2002

Fred J. Verster
Fred J. Verster
Joined: 27 Apr 08
Posts: 118
Credit: 22451438
RAC: 0

Hi, my bad, (only left-eye,)

Message 99292 in response to message 99291

Hi, my bad, (only left-eye,) eye-sight, just managed to kill a bunch of GPU+CPU tasks, app_info.xml wasn't OK and I forgot to pull the internet cabel, s**t :( .

Seeing hardly any difference even when running 2 WU's per card, in GPU-Load.
Taken out the app_info.xml file. This I do not like and have to apologize to my wingmen for having to wait longer.
Don't know if they do resends, but they were gone in a split-second............

My stupid mistake.......:(
But running them on a FERMI GPU, is a waste of resources, IMO!

Metod, S56RKO
Metod, S56RKO
Joined: 11 Feb 05
Posts: 135
Credit: 822960981
RAC: 84507

I'm trying to get optimum

I'm trying to get optimum settings for this host: a Q6600 and GF9800GX2 (2 cores). My problem seems to be lack of GRAM: there's 512MB per GPU. In essence, I can't set coproc count to less than 0.5 or else ABP cuda app fails. I'd really like to have that count down to what it takes as GPU load to maximize throughput together with SAH cuda app (as everybody knows, it runs mostly on GPU and consumes much less GRAM).

Right now 4 ABP cuda apps are running in parallel just happily.

How does BOINC cc decide, whether there's enough GPU power to launch another GPU process? How about count for EAH to be say 0.37 and for SAH 0.62? BOINC shouldn't try to launch more than 2 EAH processes per GPU nor more than one SAH process per GPU but sould be able to launch 1 EAH and 1 SAH process per GPU, right?

[edit]
I just changed cuda count to 0.4 for EAH and 0.6 for SAH. 4 ABP2 are running right now, but I'll just have to wait for SAH to come up again.
[/edit]

Metod ...

Fred J. Verster
Fred J. Verster
Joined: 27 Apr 08
Posts: 118
Credit: 22451438
RAC: 0

Since my bad experience with

Message 99294 in response to message 99293

Since my bad experience with a fault/parse error in the app_info.xml file, I still run 1 CPU+1GPU, in Einstein WU's.
I do hope they will develop a better/faster/more efficient app.
Also run GPUGrid, which makes better use of the GPU, but some calculations are very hard to parelell lize. It's bit like compairing apples and oranges.
And FERMI class GPU's have a different architecture, more possebillities,
programming wise, but some Backward Compatabilly, has to be maintained.
But the 'mainsteam' and 'set and forget' crowd, is probably the biggest and
most steady, in calculation terms. Amount of GFLOPS performed, or Cobblestones,
ofcoarse.
Inspite of their prices €459,00 for a GTX480 (ASUS), they perform better compaired to the 200 series, better heat proof, but different architecture.
But a HD5870 costs, in the Netherlands, about the same and can produce even more
>1.5TFLOPS !

mikey
mikey
Joined: 22 Jan 05
Posts: 12570
Credit: 1838955849
RAC: 18052

RE: Right now 4 ABP cuda

Message 99295 in response to message 99293

Quote:

Right now 4 ABP cuda apps are running in parallel just happily.

How does BOINC cc decide, whether there's enough GPU power to launch another GPU process? How about count for EAH to be say 0.37 and for SAH 0.62? BOINC shouldn't try to launch more than 2 EAH processes per GPU nor more than one SAH process per GPU but sould be able to launch 1 EAH and 1 SAH process per GPU, right?

No I don't think so, Boinc runs gpu apps as a fifo(first in first out) thing, so if you get 5 Seti units you will finish those BEFORE you even start on your Einstein units. So running multiple projects at once on your gpu is not currently an option. It is a pain and not what most users want but to change it you have to convince Dr. David Anderson, the guy from Seti who wrote and maintains Boinc. He is available on the Boinc Developers Mailing List but be warned he likes Boinc as it is and it is his baby, so suggestions are not always taken in a positive light.

Metod, S56RKO
Metod, S56RKO
Joined: 11 Feb 05
Posts: 135
Credit: 822960981
RAC: 84507

RE: RE: Right now 4 ABP

Message 99296 in response to message 99295

Quote:
Quote:

Right now 4 ABP cuda apps are running in parallel just happily.

How does BOINC cc decide, whether there's enough GPU power to launch another GPU process? How about count for EAH to be say 0.37 and for SAH 0.62? BOINC shouldn't try to launch more than 2 EAH processes per GPU nor more than one SAH process per GPU but sould be able to launch 1 EAH and 1 SAH process per GPU, right?

No I don't think so, Boinc runs gpu apps as a fifo(first in first out) thing, so if you get 5 Seti units you will finish those BEFORE you even start on your Einstein units. So running multiple projects at once on your gpu is not currently an option. It is a pain and not what most users want but to change it you have to convince Dr. David Anderson, the guy from Seti who wrote and maintains Boinc. He is available on the Boinc Developers Mailing List but be warned he likes Boinc as it is and it is his baby, so suggestions are not always taken in a positive light.

I see and it itches me too ;-) I don't feel like I'd try to convince somebody already convinced other way around.

Metod ...

Metod, S56RKO
Metod, S56RKO
Joined: 11 Feb 05
Posts: 135
Credit: 822960981
RAC: 84507

RE: RE: RE: Right now 4

Message 99297 in response to message 99296

Quote:
Quote:
Quote:

Right now 4 ABP cuda apps are running in parallel just happily.

How does BOINC cc decide, whether there's enough GPU power to launch another GPU process? How about count for EAH to be say 0.37 and for SAH 0.62? BOINC shouldn't try to launch more than 2 EAH processes per GPU nor more than one SAH process per GPU but sould be able to launch 1 EAH and 1 SAH process per GPU, right?

No I don't think so, Boinc runs gpu apps as a fifo(first in first out) thing, so if you get 5 Seti units you will finish those BEFORE you even start on your Einstein units. So running multiple projects at once on your gpu is not currently an option. It is a pain and not what most users want but to change it you have to convince Dr. David Anderson, the guy from Seti who wrote and maintains Boinc. He is available on the Boinc Developers Mailing List but be warned he likes Boinc as it is and it is his baby, so suggestions are not always taken in a positive light.

I see and it itches me too ;-) I don't feel like I'd try to convince somebody already convinced other way around.

It seems that you were not entirely right. It seems that BOINC indeed schedules GPU tasks FIFO ... but not really all tasks from one project first, then tasks from another project. It schedules tasks regardless of project. If tasks get assigned in right sequence, then GPU might get loaded better. Here's screenshot of my host: it has 2 GPUs and runs SAH and EAH tasks in parallel. Note that SAH tasks are run on two distinct GPUs and one EAH task is run in parallel to one SAH on same GPU.

[edit]
Now it even runs two EAH in parallel with 2 SAH tasks. Updated screenshot.
[/edit]

It still is pity that BOINC scheduler doesn't run GPU tasks in parallel not only by coincidence but rather as a rule.

Metod ...

mikey
mikey
Joined: 22 Jan 05
Posts: 12570
Credit: 1838955849
RAC: 18052

RE: RE: RE: RE: Right

Message 99298 in response to message 99297

Quote:
Quote:
Quote:
Quote:

Right now 4 ABP cuda apps are running in parallel just happily.

How does BOINC cc decide, whether there's enough GPU power to launch another GPU process? How about count for EAH to be say 0.37 and for SAH 0.62? BOINC shouldn't try to launch more than 2 EAH processes per GPU nor more than one SAH process per GPU but sould be able to launch 1 EAH and 1 SAH process per GPU, right?

No I don't think so, Boinc runs gpu apps as a fifo(first in first out) thing, so if you get 5 Seti units you will finish those BEFORE you even start on your Einstein units. So running multiple projects at once on your gpu is not currently an option. It is a pain and not what most users want but to change it you have to convince Dr. David Anderson, the guy from Seti who wrote and maintains Boinc. He is available on the Boinc Developers Mailing List but be warned he likes Boinc as it is and it is his baby, so suggestions are not always taken in a positive light.

I see and it itches me too ;-) I don't feel like I'd try to convince somebody already convinced other way around.

It seems that you were not entirely right. It seems that BOINC indeed schedules GPU tasks FIFO ... but not really all tasks from one project first, then tasks from another project. It schedules tasks regardless of project. If tasks get assigned in right sequence, then GPU might get loaded better. Here's screenshot of my host: it has 2 GPUs and runs SAH and EAH tasks in parallel. Note that SAH tasks are run on two distinct GPUs and one EAH task is run in parallel to one SAH on same GPU.

[edit]
Now it even runs two EAH in parallel with 2 SAH tasks. Updated screenshot.
[/edit]

It still is pity that BOINC scheduler doesn't run GPU tasks in parallel not only by coincidence but rather as a rule.

I cannot explain that, except to say that perhaps because Einstein's gpu app mostly uses the cpu maybe Boinc is recognizing that and running a 2nd gpu unit also. It doesn't seem that it should but in your case I can see that your screen shot does show 1 of each running on each of your 2 video cards. What version of Boinc are you running? I am at 6.10.56 or .58 on all of my pc's.

Metod, S56RKO
Metod, S56RKO
Joined: 11 Feb 05
Posts: 135
Credit: 822960981
RAC: 84507

RE: RE: [edit] Now it

Message 99299 in response to message 99298

Quote:
Quote:


[edit]
Now it even runs two EAH in parallel with 2 SAH tasks. Updated screenshot.
[/edit]

It still is pity that BOINC scheduler doesn't run GPU tasks in parallel not only by coincidence but rather as a rule.

I cannot explain that, except to say that perhaps because Einstein's gpu app mostly uses the cpu maybe Boinc is recognizing that and running a 2nd gpu unit also. It doesn't seem that it should but in your case I can see that your screen shot does show 1 of each running on each of your 2 video cards. What version of Boinc are you running? I am at 6.10.56 or .58 on all of my pc's.

I'm running BOINC 6.10.58. However, I did tinker with app_info.xml for both projects, hence 'weird' settings for CPU and GPU usage (1.0 CPU + 0.4 GPU for EAH and 0.04 CPU + 0.6 GPU for SAH).

I came out with those numbers through try-and-fail procedure: I found that it's just fine to run 2 EAH tasks per GPU, but not more (in my case it fails due to lack of graphic RAM - 512MB per GPU) - so GPU usage for EAH should be between 0.34 and 0.50. The fact that machine in question is a Q6600 (4 CPU cores) which wouldn't like running more than 4 EAH tasks in parallel anyway shouldn't spoil the fun of experiment.
I also found out that it's not possible to run more than one SAH per GPU, hence GPU usage for SAH between 0.51 and 1.0.

Again, the setings are fine for my particular setup (amount of gRAM, mix of GPU projects, ...) and should be taken with a grain of salt.

Metod ...

ExtraTerrestrial Apes
ExtraTerrestria...
Joined: 10 Nov 04
Posts: 770
Credit: 570673643
RAC: 171847

I agree - there's nothing

Message 99300 in response to message 99299

I agree - there's nothing strange with your screenshot. It's just the result of appropriate settings and luck. The 4 WUs running on 2 GPUs were received just one after the other. That's why FIFO didn't ruin the nice scheduling. During the large block of "only SETI WUs" above those WUs there were probably only 2 SETIs running at any one time.

MrS

Scanning for our furry friends since Jan 2002

Comment viewing options

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