FGRP application v 1.07 (OPENCL) feedback thread

Bikeman (Heinz-Bernd Eggenstein)
Bikeman (Heinz-...
Joined: 28 Aug 06
Posts: 164
Credit: 1864017
RAC: 0
Topic 84921

Dear all,

I just released 10 different new app versions for FGRP#2, with version number 1.07:

OSX OpenCL x (ati , nvidia)
Win x (32 bit, 64 bit) x (ati, nvidia)
Linux x (32 bit, 64 bit) x (ati, nvidia)

This new version contains bug fixes only, performance should be the same as in previous version.

Bugs addressed:

- Failure to run on the correct GPU (the one assigned by the BOINC client) for hosts that have more than one OpenCL capable GPUs installed
- Too verbose log output so that the beginning of the log would be truncated when uploaded to the server
- Error handling was incomplete in previous version.

So now you should be able to see in the results view of the web interface that the app logs the brand/type of the graphics card it uses in the log (as with BRP4), and you can check that this makes sense.

Thanks go especially to Richard Haselgrove and others who experienced the GPU detection problem, reported it here and helped in tracking it down. Sorry it took (me) so long to fix this.

Please report any problems or other feedback in this thread.

Cheers
HBE

Richard Haselgrove
Richard Haselgrove
Joined: 10 Dec 05
Posts: 143
Credit: 5409572
RAC: 0

FGRP application v 1.07 (OPENCL) feedback thread

Yes, this one seems to have the device allocation sorted out:

Device 0 == GPU 2 == GPUGrid
Device 1 == GPU 1 == Albert

http://albertathome.org/task/789043

I didn't want to spam the boards with my stats - just milestone theads - but apparently signatures are no longer optional. Follow the link if you're interested.

http://www.boincsynergy.com/images/stats/comb-3475.jpg

Bikeman (Heinz-Bernd Eggenstein)
Bikeman (Heinz-...
Joined: 28 Aug 06
Posts: 164
Credit: 1864017
RAC: 0

Good to hear that! The plot

Good to hear that!

The plot is a good demonstration of what the current app does. Like the very first GPU version of BRP4, it uses the GPU only for some parts of the computation (FFT) and the rest is handled by the CPU. Needless to say, we will try to improve this in future versions.

Cheers
HB

Jeroen
Jeroen
Joined: 25 Nov 05
Posts: 12
Credit: 638256
RAC: 0

I have been running the new

I have been running the new version for the past two days. I am actually seeing significantly better performance compared to the previous version I ran a while back. In Linux via a GTX 680 and quad core processor - HT disabled, I have seen the following runtimes:

1-task - ~796 seconds per task
3-tasks - 885-963 seconds per task

36 tasks have validated so far. Unfortunately, I am not able to retrieve GPU load in Linux. I suspect the load is fairly low as the GPU temperature is around 38-41C with 80% fan speed. If I had more CPU cores and cache memory, I think I would be able to run additional tasks at once via a single GPU without significant performance drop per task.

The tasks that errored out happened because I accidentally overwrote my 64-bit BOINC with 32-bit BOINC and did not have the 32-bit OpenCL libraries installed.

Bikeman (Heinz-Bernd Eggenstein)
Bikeman (Heinz-...
Joined: 28 Aug 06
Posts: 164
Credit: 1864017
RAC: 0

Hi Thanks for the

Message 79715 in response to message 79714

Hi

Thanks for the feedback.

Quote:
I have been running the new version for the past two days. I am actually seeing significantly better performance compared to the previous version I ran a while back.

This is surprising, we didn't change anything that should have a significant effect on performance. We made the logging less verbose which might help performance a tiny bit, but not more. Some volunteers might see performance increases or even decreases because the tasks are now actually running on the GPU intended by BOINC for it and not the one picked erroneously by the app before (which might be busy with other tasks already), but I understand your host here at Albert has only one GPU installed, so this should not happen in your case.

Quote:


In Linux via a GTX 680 and quad core processor - HT disabled, I have seen the following runtimes:

1-task - ~796 seconds per task
3-tasks - 885-963 seconds per task

Note however that setting the nr of concurrent GPU jobs in the profile currently has NO effect on the FGRP app, we didn't enable this feature for the Fermi search, yet. So one would need a app_info.xml or app_config.xml file for the FGRP app. I'm wondering whether BOINC is running BRP4 jobs and FGRP jobs in parallel in a "mixed" configuration (e.g. FGRP needs 1 GPU, BRP4 0.333 GPUs. Will BOINC let all BRP4 tasks finish and hold of running new ones before letting FGRP crunch?)

Cheers
HB

tolafoph
tolafoph
Joined: 18 Nov 11
Posts: 3
Credit: 342780
RAC: 0

RE: I'm wondering whether

Message 79716 in response to message 79715

Quote:

I'm wondering whether BOINC is running BRP4 jobs and FGRP jobs in parallel in a "mixed" configuration (e.g. FGRP needs 1 GPU, BRP4 0.333 GPUs. Will BOINC let all BRP4 tasks finish and hold of running new ones before letting FGRP crunch?)

Test on a GTX 580.
BRP4 @Einstein set to 0.5 GPU and FGRP @Albert is set to 1 GPU. I stopped all GPU-tasks of BRP4 except for one at 60% and one at 0% and let it run. Several FGRP task were waiting to start. After the first task finished the second ran alone. Only after this one finished the FGRP task started.

The average GPU load is 24% vs 84% for a BRP4 task.

Jeroen
Jeroen
Joined: 25 Nov 05
Posts: 12
Credit: 638256
RAC: 0

RE: Hi Thanks for the

Message 79717 in response to message 79715

Quote:

Hi

Thanks for the feedback.

This is surprising, we didn't change anything that should have a significant effect on performance. We made the logging less verbose which might help performance a tiny bit, but not more. Some volunteers might see performance increases or even decreases because the tasks are now actually running on the GPU intended by BOINC for it and not the one picked erroneously by the app before (which might be busy with other tasks already), but I understand your host here at Albert has only one GPU installed, so this should not happen in your case.

Hello,

I am not too sure on the difference. A single task used to have a runtime of around 1,100 seconds when I tried previously and now has a runtime of around 800 seconds. I will take a look at my system configuration to see if anything may have changed there since when I ran the previous version.

Quote:


Note however that setting the nr of concurrent GPU jobs in the profile currently has NO effect on the FGRP app, we didn't enable this feature for the Fermi search, yet. So one would need a app_info.xml or app_config.xml file for the FGRP app. I'm wondering whether BOINC is running BRP4 jobs and FGRP jobs in parallel in a "mixed" configuration (e.g. FGRP needs 1 GPU, BRP4 0.333 GPUs. Will BOINC let all BRP4 tasks finish and hold of running new ones before letting FGRP crunch?)

Cheers
HB

I had an app_config.xml file setup for a short while as I wanted to see how well the new application would scale on a single GPU. However, since then I removed the app_config.xml file.

Thanks for the work done on porting the application to GPU.

TRuEQ & TuVaLu
TRuEQ & TuVaLu
Joined: 11 Sep 06
Posts: 75
Credit: 615315
RAC: 0

I am not sure that the GPU

I am not sure that the GPU load is correct.
I run 3 tasks, 1 on each GPU.
I have:

gpu(0) ATI 5850
gpu(1) ATI 5970 ; first gpu
gpu(2) ATI 5970 ; second gpu

I have a SIV picure that shows how it looks.

I saw in post in previous version that similiar thing was found.

TRuEQ & TuVaLu
TRuEQ & TuVaLu
Joined: 11 Sep 06
Posts: 75
Credit: 615315
RAC: 0

I also got this from another

I also got this from another programmer.
Can it be of use here?

"As I recall BOINC uses ADL_Adapter_NumberOfAdapters_Get () and ADL_Adapter_AdapterInfo_Get() to get the list of GPUs."

Jeroen
Jeroen
Joined: 25 Nov 05
Posts: 12
Credit: 638256
RAC: 0

I ran 81 tasks in Linux via

I ran 81 tasks in Linux via an AMD 7970. 37 tasks have validated so far and the remaining are pending validation.

Runtime: ~610 seconds
GPU Load: 58-60%

Via the same system, these tasks are running 4-5 times faster on the GPU and CPU combined compared to the CPU alone.

Bikeman (Heinz-Bernd Eggenstein)
Bikeman (Heinz-...
Joined: 28 Aug 06
Posts: 164
Credit: 1864017
RAC: 0

RE: I have a SIV picure

Message 79721 in response to message 79718

Quote:


I have a SIV picure that shows how it looks.

I saw in post in previous version that similiar thing was found.

Hmm.. that stuff looks odd. The card with the highest load according to the diagram over a timeline has a low temperature, while another GPU with only intermittent load has a very high temperature, and the second GPU doesn't have a temperature reading at all, even tho all GPUs are very similar (Cypress GPU). So I'm not quite sure which part of the data from this tool can be trusted, because there are obvious inconsistencies.

Cheers
HB

Comment viewing options

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