Regression in BOINC client 7.4.27: GPU not found

Message boards : Questions and problems : Regression in BOINC client 7.4.27: GPU not found
Message board moderation

To post messages, you must log in.

AuthorMessage
Rafcio

Send message
Joined: 26 Oct 13
Posts: 12
United States
Message 57909 - Posted: 19 Nov 2014, 22:10:25 UTC

It looks like something got broken in the recent client. The older client used to be working fine, but the recent client for some reason cannot properly recognize GPU, or OpenCL capability. The log file entries show OpenCL being recognized, but then it has entries that GPU doesn't support it.

18-Nov-2014 06:35:19 [---] Starting BOINC client version 7.4.27 for windows_x86_64
18-Nov-2014 06:35:19 [---] log flags: file_xfer, sched_ops, task, coproc_debug
18-Nov-2014 06:35:19 [---] Libraries: libcurl/7.33.0 OpenSSL/1.0.1h zlib/1.2.8
18-Nov-2014 06:35:19 [---] Data directory: C:\ProgramData\BOINC
18-Nov-2014 06:35:19 [---] Running under account PCUSER
18-Nov-2014 06:35:19 [---] GPU specified in cc_config.xml: 1 ATI
18-Nov-2014 06:35:19 [---] [coproc] launching child process at C:\Program Files\BOINC\boinc.exe
18-Nov-2014 06:35:19 [---] [coproc] relative to directory C:\ProgramData\BOINC
18-Nov-2014 06:35:19 [---] [coproc] with data directory "C:\ProgramData\BOINC"
18-Nov-2014 06:35:19 [---] CAL: ATI GPU 0: ATI Radeon HD 5800/5900 series (Cypress/Hemlock) (CAL version 1.4.1848, 1024MB, 991MB available, 4406 GFLOPS peak)
18-Nov-2014 06:35:19 [---] OpenCL: AMD/ATI GPU 0: ATI Radeon HD 5800/5900 series (Cypress/Hemlock) (driver version 1573.4 (VM), device version OpenCL 1.2 AMD-APP (1573.4), 1024MB, 991MB available, 4406 GFLOPS peak)
18-Nov-2014 06:35:19 [---] OpenCL CPU: Intel(R) Core(TM)2 Quad CPU Q9650 @ 3.00GHz (OpenCL driver vendor: Advanced Micro Devices, Inc., driver version 1573.4 (sse2), device version OpenCL 1.2 AMD-APP (1573.4))
18-Nov-2014 06:35:19 [---] No NVIDIA library found
18-Nov-2014 06:35:19 [---] ATI GPU info taken from cc_config.xml
18-Nov-2014 06:35:19 [---] App version needs OpenCL but GPU doesn't support it
18-Nov-2014 06:35:19 [Einstein@Home] Application uses missing ATI GPU
18-Nov-2014 06:35:19 [---] App version needs OpenCL but GPU doesn't support it
18-Nov-2014 06:35:19 [Einstein@Home] Application uses missing ATI GPU
18-Nov-2014 06:35:19 [---] App version needs OpenCL but GPU doesn't support it
18-Nov-2014 06:35:19 [Einstein@Home] Application uses missing ATI GPU
18-Nov-2014 06:35:19 [Einstein@Home] Missing coprocessor for task p2030.20131125.G200.51+00.44.C.b0s0g0.00000_496_0
18-Nov-2014 06:35:19 [Einstein@Home] Missing coprocessor for task PB0059_01451_276_1
18-Nov-2014 06:35:19 [---] Host name: PCUSER-PC
18-Nov-2014 06:35:19 [---] Processor: 4 GenuineIntel Intel(R) Core(TM)2 Quad CPU Q9650 @ 3.00GHz [Family 6 Model 23 Stepping 10]
18-Nov-2014 06:35:19 [---] 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 cx16 sse4_1 syscall nx lm vmx smx tm2 pbe
18-Nov-2014 06:35:19 [---] OS: Microsoft Windows 7: Ultimate x64 Edition, Service Pack 1, (06.01.7601.00)
18-Nov-2014 06:35:19 [---] Memory: 8.00 GB physical, 20.00 GB virtual
18-Nov-2014 06:35:19 [---] Disk: 650.00 GB total, 484.83 GB free
18-Nov-2014 06:35:19 [---] Local time is UTC -7 hours
18-Nov-2014 06:35:19 [---] VirtualBox version: 4.3.18


When I reverted back to version 7.2.42 all is good again.

18-Nov-2014 20:55:08 [---] Starting BOINC client version 7.2.42 for windows_x86_64
18-Nov-2014 20:55:08 [---] log flags: file_xfer, sched_ops, task, coproc_debug
18-Nov-2014 20:55:08 [---] Libraries: libcurl/7.25.0 OpenSSL/1.0.1 zlib/1.2.6
18-Nov-2014 20:55:08 [---] Data directory: C:\ProgramData\BOINC
18-Nov-2014 20:55:08 [---] Running under account PCUSER
18-Nov-2014 20:55:08 [---] [coproc] launching child process at C:\Program Files\BOINC\\boinc.exe
18-Nov-2014 20:55:08 [---] [coproc] relative to directory C:\ProgramData\BOINC
18-Nov-2014 20:55:08 [---] [coproc] with data directory "C:\ProgramData\BOINC"
18-Nov-2014 20:55:08 [---] CAL: ATI GPU 0: ATI Radeon HD 5800/5900 series (Cypress/Hemlock) (CAL version 1.4.1848, 1024MB, 991MB available, 4406 GFLOPS peak)
18-Nov-2014 20:55:08 [---] OpenCL: AMD/ATI GPU 0: ATI Radeon HD 5800/5900 series (Cypress/Hemlock) (driver version 1573.4 (VM), device version OpenCL 1.2 AMD-APP (1573.4), 1024MB, 991MB available, 4406 GFLOPS peak)
18-Nov-2014 20:55:08 [---] OpenCL CPU: Intel(R) Core(TM)2 Quad CPU Q9650 @ 3.00GHz (OpenCL driver vendor: Advanced Micro Devices, Inc., driver version 1573.4 (sse2), device version OpenCL 1.2 AMD-APP (1573.4))
18-Nov-2014 20:55:08 [---] No NVIDIA library found
18-Nov-2014 20:55:08 [---] Host name: PCUSER-PC
18-Nov-2014 20:55:08 [---] Processor: 4 GenuineIntel Intel(R) Core(TM)2 Quad CPU Q9650 @ 3.00GHz [Family 6 Model 23 Stepping 10]
18-Nov-2014 20:55:08 [---] 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 cx16 sse4_1 syscall nx lm vmx smx tm2 pbe
18-Nov-2014 20:55:08 [---] OS: Microsoft Windows 7: Ultimate x64 Edition, Service Pack 1, (06.01.7601.00)
18-Nov-2014 20:55:08 [---] Memory: 8.00 GB physical, 20.00 GB virtual
18-Nov-2014 20:55:08 [---] Disk: 650.00 GB total, 482.08 GB free
18-Nov-2014 20:55:08 [---] Local time is UTC -7 hours
18-Nov-2014 20:55:08 [---] VirtualBox version: 4.3.18
18-Nov-2014 20:55:08 [---] Version change (7.4.27 -> 7.2.42)


I doubt that the problem is on my side. I'm reporting this so the developers can look into this issue.
ID: 57909 · Report as offensive
Claggy

Send message
Joined: 23 Apr 07
Posts: 1112
United Kingdom
Message 57910 - Posted: 19 Nov 2014, 23:04:12 UTC - in response to Message 57909.  
Last modified: 19 Nov 2014, 23:07:30 UTC

18-Nov-2014 06:35:19 [---] GPU specified in cc_config.xml: 1 ATI

18-Nov-2014 06:35:19 [---] ATI GPU info taken from cc_config.xml


What have you got specified in your cc_config.xml, and why? Boinc can do it's own Nvidia & ATI/AMD & Intel GPU detection without any extra config help.

Claggy
ID: 57910 · Report as offensive
Profile Jord
Volunteer tester
Help desk expert
Avatar

Send message
Joined: 29 Aug 05
Posts: 15483
Netherlands
Message 57913 - Posted: 19 Nov 2014, 23:22:53 UTC - in response to Message 57909.  

I doubt that the problem is on my side.

But then of course, if it were the client, these forums and all forums for that matter would be amass with people complaining about it. Thus far, I've only seen your report.

Since the client shows it detects OpenCL perfectly well, it's not that. What Catalyst drivers are you using? 14.8, I think? A beta at that? There could be all kinds of things wrong with drivers like that, so first try other drivers. 14.9 or 14.4, not beta's.
ID: 57913 · Report as offensive
Rafcio

Send message
Joined: 26 Oct 13
Posts: 12
United States
Message 58029 - Posted: 22 Nov 2014, 7:44:05 UTC

Some time ago I had different problem with GPU detection. With every reboot OpenCL was somehow "wiped out" and couldn't be detected. Nobody responded to my question on how to fix that on AMD forum and here despite lots of help and different suggestions nothing worked, so I unwillingly followed one of the suggestions that seem to always work - reformat and reinstall Windows. The file was used as a part of the troubleshooting of that old problem. Mainly, it is there to turn on debugging. Here is the content.

<cc_config>
<log_flags>
<coproc_debug>1</coproc_debug>
</log_flags>
<options>
<coproc>
<type>ATI</type>
<count>1</count>
</coproc>
</options>
</cc_config>


Now, with the fresh installation of Windows I had no problem with GPU until I installed the latest client. Then I noticed the same old scary message in the Tasks tab - "GPU missing".

First, I reinstalled the AMD drivers version 14.9 thinking that the old problem returned, but reinstallation didn't fix the problem like it did previously (until the next reboot). So I decided to revert to the previous version of the client and indeed the problem went away.

If version 7.2.42 of the client doesn't have that issue and 7.4.27 does, with nothing else changing, what is the logical conclusion? Obviously, something got broken in the client somewhere between the version 7.2.42 and 7.4.27. Isn't this logical conclusion?

So, driver version 14.9 and client version 7.2.42 - everything is OK.
Driver version 14.9 and client version 7.4.27 - GPU "detection" is broken.
ID: 58029 · Report as offensive
MarkJ
Volunteer tester
Help desk expert

Send message
Joined: 5 Mar 08
Posts: 272
Australia
Message 58030 - Posted: 22 Nov 2014, 8:59:50 UTC

The 7.4 client has changes around defining your own coproc. That is exactly what you have done in your cc_config.

Remove the coproc block, you can leave the debug logging if you wish, and then restart the client and see what it has to say.
MarkJ
ID: 58030 · Report as offensive
Profile Jord
Volunteer tester
Help desk expert
Avatar

Send message
Joined: 29 Aug 05
Posts: 15483
Netherlands
Message 58034 - Posted: 22 Nov 2014, 13:45:46 UTC - in response to Message 58030.  

Yup.

  • client: generalize naming scheme for OpenCL devices, add more general have_rsrc() functions.
  • client: group new (non-NVIDIA, non-AMD, non-INTEL) OpenCL device types by vendor name string rather than by CL_DEVICE_VENDOR_ID. This assumes that OpenCL reports identical vendor name strings for all devices from the same vendor on a given host. I incorrectly thought CL_DEVICE_VENDOR_ID was a numeric ID of the vendor which would be the same for each device from that vendor, but it is actually a unique numeric ID assigned by a given vendor to each device on a particular host.
  • client: continue adding support for OpenCL devices (GPUs and accelerators) other than AMD/ATI, NVIDIA or Intel GPUs.
    • For now, handle AMD/ATI, NVIDIA or Intel GPUs as before. But for other, "new" vendors, we treat each device as a separate resource, creating an entry for each instance in the COPROCS::coprocs[] array and copying the device name COPROC::opencl_prop.name into the COPROC::type field (instead of the vendor name.)
    • For devices from "new" vendors, set field in init_data.xml file to the vendor string supplied by OpenCL. This should allow boinc_get_opencl_ids() to work correctly with these "new" devices without modification.
  • client: set work requests for coprocs specified in cc_config.xml
    We weren't copying the request fields from RSC_WORK_FETCH to COPROC. Do this, and clean up the code a bit.
    • Note: the arrays that parallel the COPROCS::coprocs array are a bit of a kludge; that stuff logically belongs in COPROC. But it's specific to the client, so I can't put it there. Maybe I could do something fancy with derived classes, not sure.


ID: 58034 · Report as offensive
Rafcio

Send message
Joined: 26 Oct 13
Posts: 12
United States
Message 58065 - Posted: 23 Nov 2014, 2:50:25 UTC

OK, it was the content of cc_config file. Still, the backward compatibility was broken in the recent client. If the entries were valid before and causing issues in the new client, then it was the new client that introduced the problem. There was nothing there that might throw the client off, like nVidia instead of ATI.
ID: 58065 · Report as offensive
Profile Jord
Volunteer tester
Help desk expert
Avatar

Send message
Joined: 29 Aug 05
Posts: 15483
Netherlands
Message 58066 - Posted: 23 Nov 2014, 3:57:29 UTC - in response to Message 58065.  

As per 7.4.27, when you leave those lines in the cc_config.xml file, you override the GPU detection and instead tell BOINC what kind of device it is.

The full code for this is:
<coproc>
  <type>some_name</type>
  <count>1</count>
  <device_nums>N</device_nums>
  [ <peak_flops>1e10</peak_flops> ]
</coproc>

This is why BOINC stated:
18-Nov-2014 06:35:19 [---] GPU specified in cc_config.xml: 1 ATI
followed by
18-Nov-2014 06:35:19 [---] ATI GPU info taken from cc_config.xml
and ignored the details about the detected ATI GPU.
ID: 58066 · Report as offensive

Message boards : Questions and problems : Regression in BOINC client 7.4.27: GPU not found

Copyright © 2024 University of California.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation.