BOINC doesn't detect Vega 8 GPU in Ubuntu 20.04

Message boards : GPUs : BOINC doesn't detect Vega 8 GPU in Ubuntu 20.04
Message board moderation

To post messages, you must log in.

AuthorMessage
Bill
Avatar

Send message
Joined: 13 Jun 17
Posts: 88
United States
Message 104035 - Posted: 21 Apr 2021, 2:44:42 UTC

I upgraded the CPU in my daily driver, so I took the old CPU (Ryzen 3 2200G, which has integrated Vega 8 graphics) and put it into a new computer to run BOINC, with no discrete GPU. I decided to run the computer with Ubuntu 20.04. After installing Ubuntu, BOINC Manager, and the Costamagna ppa of the client (7.16.16), I noticed that I was not receiving any GPU tasks.

I've done a little bit of research, but I still am stuck on what the problem is. Here is what I do know, though:

1. I added a start delay to the client (120 seconds), and that did not have any affect.
2. In the even log, all it says is no GPU detected. For those interested, here's the start of my log:

Tue 20 Apr 2021 01:12:35 PM CDT | | Starting BOINC client version 7.16.16 for x86_64-pc-linux-gnu
Tue 20 Apr 2021 01:12:35 PM CDT | | log flags: file_xfer, sched_ops, task
Tue 20 Apr 2021 01:12:35 PM CDT | | Libraries: libcurl/7.68.0 OpenSSL/1.1.1f zlib/1.2.11 brotli/1.0.7 libidn2/2.2.0 libpsl/0.21.0 (+libidn2/2.2.0) libssh/0.9.3/openssl/zlib nghttp2/1.40.0 librtmp/2.3
Tue 20 Apr 2021 01:12:35 PM CDT | | Data directory: /var/lib/boinc-client
Tue 20 Apr 2021 01:12:35 PM CDT | | No usable GPUs found
Tue 20 Apr 2021 01:12:37 PM CDT | | libc: Ubuntu GLIBC 2.31-0ubuntu9.2 version 2.31
Tue 20 Apr 2021 01:12:37 PM CDT | | Host name: Bill-R3-Micro
Tue 20 Apr 2021 01:12:37 PM CDT | | Processor: 4 AuthenticAMD AMD Ryzen 3 2200G with Radeon Vega Graphics [Family 23 Model 17 Stepping 0]
Tue 20 Apr 2021 01:12:37 PM CDT | | Processor features: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc cpuid extd_apicid aperfmperf pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_llc mwaitx cpb hw_pstate sme ssbd sev ibpb vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf xsaveerptr arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic v_vmsave_vmload vgif overflow_recov succor smca
Tue 20 Apr 2021 01:12:37 PM CDT | | OS: Linux Ubuntu: Ubuntu 20.04.2 LTS [5.8.0-50-generic|libc 2.31 (Ubuntu GLIBC 2.31-0ubuntu9.2)]
Tue 20 Apr 2021 01:12:37 PM CDT | | Memory: 5.81 GB physical, 2.00 GB virtual
Tue 20 Apr 2021 01:12:37 PM CDT | | Disk: 227.74 GB total, 205.26 GB free


3. From what I understand, Ubuntu is supposed to maintain up to date graphics drivers. Here is the output from two commands to check that they are installed (my understanding is that the output proves I have the right drivers? Please correct me if I'm wrong):

dpkg -l | grep linux.*5\.8.*-generic
ii linux-headers-5.8.0-43-generic 5.8.0-43.49~20.04.1 amd64 Linux kernel headers for version 5.8.0 on 64 bit x86 SMP
ii linux-headers-5.8.0-50-generic 5.8.0-50.56~20.04.1 amd64 Linux kernel headers for version 5.8.0 on 64 bit x86 SMP
ii linux-image-5.8.0-43-generic 5.8.0-43.49~20.04.1 amd64 Signed kernel image generic
ii linux-image-5.8.0-50-generic 5.8.0-50.56~20.04.1 amd64 Signed kernel image generic
ii linux-modules-5.8.0-43-generic 5.8.0-43.49~20.04.1 amd64 Linux kernel extra modules for version 5.8.0 on 64 bit x86 SMP
ii linux-modules-5.8.0-50-generic 5.8.0-50.56~20.04.1 amd64 Linux kernel extra modules for version 5.8.0 on 64 bit x86 SMP
ii linux-modules-extra-5.8.0-43-generic 5.8.0-43.49~20.04.1 amd64 Linux kernel extra modules for version 5.8.0 on 64 bit x86 SMP
ii linux-modules-extra-5.8.0-50-generic 5.8.0-50.56~20.04.1 amd64 Linux kernel extra modules for version 5.8.0 on 64 bit x86 SMP

sudo lshw -c video

*-display
description: VGA compatible controller
product: Raven Ridge [Radeon Vega Series / Radeon Vega Mobile Series]
vendor: Advanced Micro Devices, Inc. [AMD/ATI]
(snip)
version: c8
width: 64 bits
clock: 33MHz
capabilities: pm pciexpress msi msix vga_controller bus_master cap_list rom
configuration: driver=amdgpu latency=0
(snip)

4. I then saw that AMD had Ubuntu 20.04 drivers on their website. I tried installing the 20.20 drivers, but they didn't complete installation, error code 1. I uninstalled, then discovered there was a 20.45 driver. I tried installing that, and got the same error. Now after I uninstalled the drivers, I don't have 1080 resolution available anymore, just 720. I just set BOINC to NNT and I'll do a clean install to get back to square one.

So, any idea what the problem can be? I thought it was interesting that the 20.20 and 20.45 drivers listed a lot of AMD GPUs, new and old, but I didn't see it mention that it was compatible with their integrated graphics CPUs. The GPU worked fine when I used it in my Windows computer a few weeks ago. I don't know if this problem is with Ubuntu, BOINC, or myself. Any help would be appreciated, thank you!
ID: 104035 · Report as offensive
Ian&Steve C.

Send message
Joined: 24 Dec 19
Posts: 159
United States
Message 104042 - Posted: 21 Apr 2021, 14:23:40 UTC

there do not appear to be linux drivers available for this particular product. on the AMD support page for the 2200G, they only have Windows drivers.

seems there are Mesa drivers available, but I don't think those will work with BOINC projects.
ID: 104042 · Report as offensive
Profile Keith Myers
Volunteer tester
Help desk expert
Avatar

Send message
Joined: 17 Nov 16
Posts: 599
United States
Message 104045 - Posted: 21 Apr 2021, 15:50:08 UTC

The original problem is no OpenCL drivers are installed. No, the Mesa drivers do not have OpenCL support currently. They are making progress though on that front.
https://www.phoronix.com/scan.php?page=news_item&px=Mesa-OpenCL-Features-State
ID: 104045 · Report as offensive
Bill
Avatar

Send message
Joined: 13 Jun 17
Posts: 88
United States
Message 104055 - Posted: 21 Apr 2021, 19:39:32 UTC

Thanks for confirming it isn't just me missing something obvious.

I was wondering if OpenCL drivers were not included. There is a installation page for the AMD GPU drivers, (here is the link). It looks like I can try to force it, and maybe it will work? I'll give that a shot, but I'm not hopeful.

Even if OpenCL isn't set up right, how is BOINC detecting GPUs? Is it just based on OpenCL, or something else? I'm asking more out of curiousity.
ID: 104055 · Report as offensive
Bill
Avatar

Send message
Joined: 13 Jun 17
Posts: 88
United States
Message 104062 - Posted: 22 Apr 2021, 19:13:39 UTC

Ok, BOINC is still not detecting my GPU. I did install the most current drivers (revision 21.10 for Ubuntu), and I was able to restore 1080 for my resolution.

I did install CLinfo, and this is the output I got:

clinfo -A --always-all-props
Number of platforms 1
Platform Name AMD Accelerated Parallel Processing
Platform Vendor Advanced Micro Devices, Inc.
Platform Version OpenCL 2.1 AMD-APP (3224.4)
Platform Profile FULL_PROFILE
Platform Extensions cl_khr_icd cl_amd_event_callback cl_amd_offline_devices
Platform Max metadata object keys (AMD) <gatherPlatformInfo:5: get CL_PLATFORM_MAX_KEYS_AMD : error -30>
Platform Host timer resolution 1ns
Platform Extensions function suffix AMD

Platform Name AMD Accelerated Parallel Processing
Number of devices 0

NULL platform behavior
clGetPlatformInfo(NULL, CL_PLATFORM_NAME, ...) No platform
clGetDeviceIDs(NULL, CL_DEVICE_TYPE_ALL, ...) No platform
clCreateContext(NULL, ...) [default] No platform
clCreateContext(NULL, ...) [other] No platform
clCreateContextFromType(NULL, CL_DEVICE_TYPE_DEFAULT) No devices found in platform
clCreateContextFromType(NULL, CL_DEVICE_TYPE_CPU) No devices found in platform
clCreateContextFromType(NULL, CL_DEVICE_TYPE_GPU) No devices found in platform
clCreateContextFromType(NULL, CL_DEVICE_TYPE_ACCELERATOR) No devices found in platform
clCreateContextFromType(NULL, CL_DEVICE_TYPE_CUSTOM) No devices found in platform
clCreateContextFromType(NULL, CL_DEVICE_TYPE_ALL) No devices found in platform


I know I don't have any real understanding of what is going on, but what is BOINC looking for to detect the GPU? I would like to send AMD a bug report to push for drivers (even though it may be unlikely that they respond), but I want to at least provide some worthwhile information.
ID: 104062 · Report as offensive
Profile Keith Myers
Volunteer tester
Help desk expert
Avatar

Send message
Joined: 17 Nov 16
Posts: 599
United States
Message 104063 - Posted: 22 Apr 2021, 20:09:26 UTC - in response to Message 104055.  

BOINC relies on calls to the gpu vendors API to lookup the PCI Id's of the system detected cards. It then looks for the requisite OpenCL library for the platform, Windows, Mac or Linux.

OpenCL is not high on the AMD development list for consumer cards. They are more concerned with graphics performance in gaming.

AMD does support OpenCL on their professional cards used for compute via the RoCm drivers. But those drivers only are supported in the latest gpus with the necessary software and hardware architecture.

Which then brings you to the fact that BOINC itself has not been updated to handle the RoCm version of OpenCL. I don't think many projects work correctly with the RoCm drivers, maybe Einstein or Milkyway?

There is an installation parameter for the AMD drivers that indicates RoCm but I actually think that it really defaults back to the initial, original OpenCL drivers. You'd have to ask specifically in the many threads on Einstein's Crunchers Corner forum.

It is a shame that the AMD drivers are such a mess among the various generations of AMD cards. They do have the performance there . . . if you can get past the installation of working drivers.
ID: 104063 · Report as offensive
Bill
Avatar

Send message
Joined: 13 Jun 17
Posts: 88
United States
Message 104064 - Posted: 22 Apr 2021, 20:36:29 UTC - in response to Message 104063.  

It is a shame that the AMD drivers are such a mess among the various generations of AMD cards. They do have the performance there . . . if you can get past the installation of working drivers.
That is the shame, I thought the GPU, despite being modest, did a decent job of crunching MW@H GPU tasks. It was crunching E@H for awhile until the application needed more than 2GB of video memory, causing BSOD when the APU was in a Windows system.

I can see if anyone on the E@H forums knows what to do, but judging by your response it is going to end up a dead end. I'm not sure I understand everything you've explained on a first read-through, but it has been helpful. Thank you!

Pre-post edit: After doing a little more searching, it looks like someone found a solution, and even gave you credit, Keith! Take a look here. I think this is a little beyond my time and ability, so I'm going to pass on trying this.
ID: 104064 · Report as offensive
Profile Keith Myers
Volunteer tester
Help desk expert
Avatar

Send message
Joined: 17 Nov 16
Posts: 599
United States
Message 104069 - Posted: 23 Apr 2021, 2:36:45 UTC - in response to Message 104064.  
Last modified: 23 Apr 2021, 2:40:24 UTC

Ha ha ha LOL, don't credit me. I just have just perused all the messages and conversations with my teammate Tom M. who runs AMD cards of various generations. He is constantly fighting AMD drivers trying to get 6,7 or more gpus running at the same time on motherboards to get to the top of the leader boards.

He was the one that discovered that all the later kernels don't work with the AMD drivers and to revert back to older kernels and prevent them from being updated.

I have been reading that the latest drivers work a bit better with the newer kernels. But if you have older, weaker hardware, best to stick with the older AMD driver packages that were concurrent with the introduction of those older AMD gpus like the video parts of the older APUs.

I PM'd Tom to give your thread a looksee and see if he can offer any suggestions. He is the actual AMD expert, not me. I have stuck to Nvidia simply because of the ease of installing the drivers. Might not have the absolute top-notch MW or Einstein performance but since I run multiple projects and some that only support Nvidia, it is the best generic architecture for my usage.
ID: 104069 · Report as offensive
Profile Tom M

Send message
Joined: 6 Jul 14
Posts: 77
United States
Message 104070 - Posted: 23 Apr 2021, 3:56:05 UTC - in response to Message 104069.  

I have a new am4 socket mb I was about to test.
I will get out my 2200g and see if installing ubuntu 20 without the rj47 works like it does for 2700x.
If it does it should be a straight forward test to see if I can get either the AIO or ubuntu repository to download and run some gamma ray gpu tasks.
Might have a result by mid-day Friday.
While there are many ideas it gets down to installing the Linux off line and then install the gpu drivers with internet plugged in.
I make it less aggravating by setting all the Linux updates to no, wait and delay.

Hth,
Tom M
ID: 104070 · Report as offensive
Profile Tom M

Send message
Joined: 6 Jul 14
Posts: 77
United States
Message 104077 - Posted: 23 Apr 2021, 15:16:34 UTC - in response to Message 104070.  

I have a new am4 socket mb I was about to test.
I will get out my 2200g and see if installing ubuntu 20 without the rj47 works like it does for 2700x.
If it does it should be a straight forward test to see if I can get either the AIO or ubuntu repository to download and run some gamma ray gpu tasks.
Might have a result by mid-day Friday.
While there are many ideas it gets down to installing the Linux off line and then install the gpu drivers with internet plugged in.
I make it less aggravating by setting all the Linux updates to no, wait and delay.

Hth,
Tom M


It is working with the AIO version so my guess is you don't really have the gpu driver installed. My experience is if ANY error is reported during the command line install, the GPU driver was not installed in a way that I can make it run.

I am responding in detail https://einsteinathome.org/content/getting-amd-apu-work-ubuntu-2004#comment-185154 over at Einstein at Home. If needed I can cross post back here.

Tom M
"You are entitled to your own opinion but not to your own facts." Senator and Professor Patrick Moynihan
In detail I am a Big Picture sort of guy.
ID: 104077 · Report as offensive

Message boards : GPUs : BOINC doesn't detect Vega 8 GPU in Ubuntu 20.04

Copyright © 2021 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.