GPU Tasks not Utilizing GPU

Thegs
Thegs
Joined: 12 Nov 13
Posts: 3
Credit: 315744486
RAC: 0
Topic 198080

Hello, I am using an AMD R9 290X, and while I have the "Suspend GPU work while computer is in use?" option set to no in both the computing preferences webpage and my BOINC manager, my GPU use constantly sits at 0% and the GPU task time remaining keeps on going up. Is there a setting or config file that I missed? Thank you in advance.

Richard Haselgrove
Richard Haselgrove
Joined: 10 Dec 05
Posts: 2143
Credit: 2944980902
RAC: 695086

GPU Tasks not Utilizing GPU

The tasks you have been allocated require support for the OpenCL programming language (normally provided via the GPU driver).

Your GPU is described by BOINC as

'Coprocessors: CAL Hawaii (8192MB)'

with no further information - there would normally be details of OpenCL and driver version numbers.

So, I suspect you need a GPU driver update, but I'll leave it to the ATI card owners to fill in the details.

Gary Roberts
Gary Roberts
Moderator
Joined: 9 Feb 05
Posts: 5872
Credit: 116990794587
RAC: 36715660

Can you please stop and

Can you please stop and restart BOINC and copy and paste all the startup messages from BOINC Manager's event log into a new message here? That way we will be able to see what BOINC thinks about your GPU.

If you have a GPU task showing elapsed time increasing but no progress being made, it sounds like there may be a problem with the driver.

You should also realise that local preference settings (in BOINC Manager) supersede website preferences so you should be careful when you are changing things. If you try to set something on the website you may be over-ridden by a previous setting you made locally. It's good practice to make a choice of where you will change preferences and try to stick to it if possible.

Edit: Richard has posted while I was composing my response. I agree with his assessment of possible missing OpenCL libs. The startup messages will confirm that.

Cheers,
Gary.

Thegs
Thegs
Joined: 12 Nov 13
Posts: 3
Credit: 315744486
RAC: 0

Here's the event log after a

Here's the event log after a restart:

5/5/2015 7:25:11 AM | | cc_config.xml not found - using defaults
5/5/2015 7:25:11 AM | | Starting BOINC client version 7.4.42 for windows_x86_64
5/5/2015 7:25:11 AM | | log flags: file_xfer, sched_ops, task
5/5/2015 7:25:11 AM | | Libraries: libcurl/7.39.0 OpenSSL/1.0.1j zlib/1.2.8
5/5/2015 7:25:11 AM | | Data directory: C:\ProgramData\BOINC
5/5/2015 7:25:11 AM | | Running under account Andrew
5/5/2015 7:25:11 AM | | OpenCL: AMD/ATI GPU 0: Hawaii (driver version 1642.5 (VM), device version OpenCL 2.0 AMD-APP (1642.5), 8192MB, 8192MB available, 3626 GFLOPS peak)
5/5/2015 7:25:11 AM | | OpenCL CPU: Intel(R) Core(TM) i5-4690K CPU @ 3.50GHz (OpenCL driver vendor: Advanced Micro Devices, Inc., driver version 1642.5 (sse2,avx), device version OpenCL 1.2 AMD-APP (1642.5))
5/5/2015 7:25:11 AM | | Host name: Luna
5/5/2015 7:25:11 AM | | Processor: 4 GenuineIntel Intel(R) Core(TM) i5-4690K CPU @ 3.50GHz [Family 6 Model 60 Stepping 3]
5/5/2015 7:25:11 AM | | Processor features: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss htt tm pni ssse3 fma cx16 sse4_1 sse4_2 movebe popcnt aes f16c rdrandsyscall nx lm avx avx2 vmx tm2 pbe fsgsbase bmi1 hle smep bmi2
5/5/2015 7:25:11 AM | | OS: Microsoft Windows 7: Ultimate x64 Edition, Service Pack 1, (06.01.7601.00)
5/5/2015 7:25:11 AM | | Memory: 7.95 GB physical, 23.85 GB virtual
5/5/2015 7:25:11 AM | | Disk: 238.37 GB total, 181.05 GB free
5/5/2015 7:25:11 AM | | Local time is UTC -4 hours
5/5/2015 7:25:11 AM | | VirtualBox version: 4.3.12
5/5/2015 7:25:11 AM | Einstein@Home | URL http://einstein.phys.uwm.edu/; Computer ID 11877060; resource share 100
5/5/2015 7:25:11 AM | Einstein@Home | General prefs: from Einstein@Home (last modified 04-May-2015 20:40:51)
5/5/2015 7:25:11 AM | Einstein@Home | Host location: none
5/5/2015 7:25:11 AM | Einstein@Home | General prefs: using your defaults
5/5/2015 7:25:11 AM | | Reading preferences override file
5/5/2015 7:25:11 AM | | Preferences:
5/5/2015 7:25:11 AM | | max memory usage when active: 4071.46MB
5/5/2015 7:25:11 AM | | max memory usage when idle: 7328.63MB
5/5/2015 7:25:11 AM | | max disk usage: 100.00GB
5/5/2015 7:25:11 AM | | suspend work if non-BOINC CPU load exceeds 75%
5/5/2015 7:25:11 AM | | (to change preferences, visit a project web site or select Preferences in the Manager)
5/5/2015 7:25:11 AM | | Not using a proxy

It looks like OpenCL is detected. I also have it set to use the GPU while the computer is in use; I was previously using an Nvidia 660 that Einstein@home recognized and used.

Also, Gary, some progress was being made on the GPU task, so I left the monitor running through the day and apparently it is getting work, but in little spikes that don't exceed 20% load and are roughly a minute apart.

Richard Haselgrove
Richard Haselgrove
Joined: 10 Dec 05
Posts: 2143
Credit: 2944980902
RAC: 695086

RE: Also, Gary, some

Quote:
Also, Gary, some progress was being made on the GPU task, so I left the monitor running through the day and apparently it is getting work, but in little spikes that don't exceed 20% load and are roughly a minute apart.


With BOINC v7.4.42, that may be the 'pseudo-progress' I've commented on before - it's estimated for reassurance, but may not be a true refection of actual work done. Keep an eye on it.

mountkidd
mountkidd
Joined: 14 Jun 12
Posts: 176
Credit: 12439562555
RAC: 8120699

Hi Andrew, You have a full

Hi Andrew,

You have a full cpu load of Asteroids + Milkyway + Einstein GR/GW and have not reserved a cpu core to feed the GPU. It didn't matter with the NV but does with the AMD. In the BOINC Manager, under Tools/Computing Preferences/Processor Usage set "On multiprocessor systems, use at most" to 75% to free up one cpu core. This will allow up to 2 GPU tasks to run simultaneously, while running 3 concurrent cpu tasks.

Gord

Thegs
Thegs
Joined: 12 Nov 13
Posts: 3
Credit: 315744486
RAC: 0

RE: Hi Andrew, You have a

Quote:

Hi Andrew,

You have a full cpu load of Asteroids + Milkyway + Einstein GR/GW and have not reserved a cpu core to feed the GPU. It didn't matter with the NV but does with the AMD. In the BOINC Manager, under Tools/Computing Preferences/Processor Usage set "On multiprocessor systems, use at most" to 75% to free up one cpu core. This will allow up to 2 GPU tasks to run simultaneously, while running 3 concurrent cpu tasks.

Gord


That did it, thank you Gord.

Gary Roberts
Gary Roberts
Moderator
Joined: 9 Feb 05
Posts: 5872
Credit: 116990794587
RAC: 36715660

That's rather astounding

That's rather astounding really. I just looked through your tasks list and the task that was in progress at the time you eventually freed up a core for GPU support, ended up taking a whopping 68 ksecs. Subsequent tasks have taken less than 3 ksecs. I have a lot of HD7850 GPUs and they do run slowly without a free core, but not that slowly. I didn't realise that high end GPUs suffered that much.

You may like to consider an alternative method of arranging GPU support without restricting the cores available to BOINC the way you have to with the 75% setting. If you use that setting, BOINC will always be restricted to three cores, irrespective of whether or not Einstein GPU tasks are running. If you set that figure back to 100% and changed your GPU utilization factor to 0.5 or 0.33, BOINC would automatically reserve a CPU core but only whilst BRP6 tasks were running. The other advantage would be that your GPU would be even more productive than it currently is. You would be completing two or three concurrent tasks respectively in a time quite a bit less than what it would take to do the same number of tasks consecutively. If you change the GPU utilization factor, the new value only takes effect when a download of new tasks occurs, but it does then apply to all tasks in your work cache.

GPU utilization factor is a website preference setting. You can achieve the same effect locally through the the use of an application configuration file, (app_config.xml) which is documented near the bottom of the linked page, after the stuff on client configuration. Using this file over-rides any website settings for GPU utilization factor. The advantage of using such a file is that you can experiment with settings and get instant change (using BOINC Manager's 're-read config files' option) without having to wait for a download of new work. Here is an example of an app_config.xml that would allow you to run three concurrent GPU tasks with one CPU core reserved for support. The file should be installed in your Einstein project directory. If you wanted to see if reserving 2 CPU cores made the GPU tasks run faster, you would just need to change to be say 0.7 - ie to a value where 3 times the value is greater than 2. In fact 0.67 would do it.
[pre]


einsteinbinary_BRP6
3

0.33
0.5

[/pre]

Cheers,
Gary.

Comment viewing options

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