Ubuntu + AMD HD 8570: Is there a driver/config that works?

Message boards : Number crunching : Ubuntu + AMD HD 8570: Is there a driver/config that works?
Message board moderation

To post messages, you must log in.

AuthorMessage
hostmaster
Avatar

Send message
Joined: 23 Jul 00
Posts: 2
Credit: 6,619,113
RAC: 29,531
United States
Message 1902095 - Posted: 20 Nov 2017, 20:40:59 UTC

I've tried several variations of config and drivers to try to get the GPU working with Boinc on an older system. Tried both kernels 4.4 and 4.10, Ubuntu is on 16.04.3-LTS. Have tried both the opensource AMD driver and the AMDGPU-PRO driver (17.40). The driver does support this GPU https://support.amd.com/en-us/kb-articles/Pages/AMDGPU-PRO-Driver-for-Linux-Release-Notes.aspx :

Should I chalk this down to immature AMD support and move on? I was going to retire this kit but thought I'd give boinc a whirl, just for giggles. At this point I'm kind of embarrassed by the amount of time I've spent trying to get this to work. I've seen other threads, notably this one, with people going through the same rigmarole and then giving up: https://boinc.berkeley.edu/dev/forum_thread.php?id=11630&postid=78341#78341

The computer in question is: https://setiathome.berkeley.edu/show_host_detail.php?hostid=8303993

The GPU is identified by the system correctly:

$ lspci|grep -i vga
01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Oland [Radeon HD 8570 / R7 240/340 OEM]


Boinc sees it too (from boinc.log)

17-Nov-2017 17:12:46 [---] OpenCL: AMD/ATI GPU 0: AMD Radeon HD 8500 Series (driver version 2482.3, device version OpenCL 1.2 AMD
-APP (2482.3), 782MB, 782MB available, 599 GFLOPS peak)


But, tasks keep getting postponed when I enable GPU computation:
17-Nov-2017 17:13:20 [---] Resuming GPU computation
17-Nov-2017 17:13:21 [SETI@home] task postponed 30.000000 sec: 
17-Nov-2017 17:13:22 [SETI@home] task postponed 30.000000 sec: 


They will eventually time out, and fail after retries with the message "too many boinc_temporary_exit()s". . The task stderr looks like this:
/var/lib/boinc-client/slots/29$ more stderr.txt 
OpenCL platform detected: Advanced Micro Devices, Inc.
Number of OpenCL devices found : 1 
BOINC assigns slot on device #0.
Info: BOINC provided OpenCL device ID used
ERROR: OpenCL kernel/call 'Creating Command Queue. (clCreateCommandQueue)' call failed (-6) in file ../../src/GPU_lock.cpp near l
ine 1359.
Waiting 30 sec before restart...


Both opencl_ati5_nocal and opencl_ati5_SoG_nocal tasks fail in the same way.

An example of a task that has errored out is here: https://setiathome.berkeley.edu/result.php?resultid=6170921519

clinfo output:
Number of platforms                               1
  Platform Name                                   AMD Accelerated Parallel Processing
  Platform Vendor                                 Advanced Micro Devices, Inc.
  Platform Version                                OpenCL 2.0 AMD-APP (2482.3)
  Platform Profile                                FULL_PROFILE
  Platform Extensions                             cl_khr_icd cl_amd_event_callback cl_amd_offline_devices 
  Platform Extensions function suffix             AMD

  Platform Name                                   AMD Accelerated Parallel Processing
Number of devices                                 1
  Device Name                                     Oland
  Device Vendor                                   Advanced Micro Devices, Inc.
  Device Vendor ID                                0x1002
  Device Version                                  OpenCL 1.2 AMD-APP (2482.3)
  Driver Version                                  2482.3
  Device OpenCL C Version                         OpenCL C 1.2 
  Device Type                                     GPU
  Device Profile                                  FULL_PROFILE
  Device Board Name (AMD)                         AMD Radeon HD 8500 Series
  Device Topology (AMD)                           PCI-E, 01:00.0
  Max compute units                               6
  SIMD per compute unit (AMD)                     4
  SIMD width (AMD)                                16
...
  Device Extensions                               cl_khr_fp64 cl_amd_fp64 cl_khr_global_int32_base_atomics cl_khr_global_int32_ex
tended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_int64_base_atomics cl_khr_int64_extende
d_atomics cl_khr_3d_image_writes cl_khr_byte_addressable_store cl_khr_gl_sharing cl_amd_device_attribute_query cl_amd_vec3 cl_amd
_printf cl_amd_media_ops cl_amd_media_ops2 cl_amd_popcnt cl_khr_image2d_from_buffer cl_khr_spir cl_khr_gl_event 
ID: 1902095 · Report as offensive
TBar
Volunteer tester

Send message
Joined: 22 May 99
Posts: 4031
Credit: 227,396,891
RAC: 221,450
United States
Message 1902136 - Posted: 21 Nov 2017, 2:47:25 UTC - in response to Message 1902095.  

I don't know about the Newer drivers, but, you should be able to get it working with the Older drivers. Use the same setup as this machine,https://setiathome.berkeley.edu/show_host_detail.php?hostid=8316299
That machine is using Ubuntu from the 14.04.1 image. It locks the kernel at 3.13 which works with the drivers the card needs, AMD App 1800. I'm using an older driver because it works a little better with my card. You should be fine with the repository driver. Use the image from here, ubuntu-14.04.1-desktop-amd64.iso
I'm kinda fond of the BOINC version 7.8.3 myself, it goes in your Home folder and makes it easier to deal with. If you are going to have to make a clean install, I'd use BOINC 7.8.3, http://www.arkayn.us/forum/index.php?topic=197.msg4519#msg4519
ID: 1902136 · Report as offensive
Jon Guillemette

Send message
Joined: 11 Jun 99
Posts: 5
Credit: 17,901,554
RAC: 6,145
United States
Message 1916314 - Posted: 1 Feb 2018, 17:10:28 UTC
Last modified: 1 Feb 2018, 17:11:22 UTC

I see the same issue as hostmaster does, only with CentOS 7. Seti applications fail with the same messages. Einstein applications with a different error. But, same net result, no OpenCL applications seem to pass the test.

It may be of note, the Gnome desktop experiences corruption in the menus that have slider bars. KDE does not. Swapped the 8570 with another, issue persists. So I'm inclined to believe the driver is not ready also. For now, i've turned off GPU processing to stop the failures, and will wait for the next release.
ID: 1916314 · Report as offensive
Profile Mike Special Project $75 donor
Volunteer tester
Avatar

Send message
Joined: 17 Feb 01
Posts: 31053
Credit: 62,545,156
RAC: 28,020
Germany
Message 1916324 - Posted: 1 Feb 2018, 18:26:54 UTC

Sadly you need driver 17.40 to get it work under ubuntu 16.04 which is not available for HD 8500 series.
With each crime and every kindness we birth our future.
ID: 1916324 · Report as offensive
TBar
Volunteer tester

Send message
Joined: 22 May 99
Posts: 4031
Credit: 227,396,891
RAC: 221,450
United States
Message 1916326 - Posted: 1 Feb 2018, 18:53:01 UTC - in response to Message 1916324.  
Last modified: 1 Feb 2018, 19:13:50 UTC

Actually, if you were to follow my instructions and use the Ubuntu 14.04.1 Install image it will work about as well as it's going to ever work. Someone else with a 8570 installed the system and it worked without any trouble, https://setiathome.berkeley.edu/show_host_detail.php?hostid=8446778 The problem is a '5' card in any series is a weak card and is just a little faster than the CPU using an optimized App....but it does work. Since then he has again tried it with 16.04 without success, and appears to have even tried the Hackintosh route, https://setiathome.berkeley.edu/show_host_detail.php?hostid=8451777, again without success. In my opinion the 8570 isn't worth using and with those old cards being rather cheap, something like my 6850 will be much more productive, https://setiathome.berkeley.edu/show_host_detail.php?hostid=8316299. If you use my old ATI App you can even avoid the False Overflows that those cards get with the stock Linux App.

Also, if you have one of these old ATI cards and you want to use it in Linux for SETI there isn't any sense in waiting in hopes of a new driver as ATI stopped supporting those cards long ago. The best hope is to install the system that supports the Driver those cards require which means Ubuntu 14.04.1 or 14.04.2. I'm kinda partial to 14.04.1 myself as It's always worked with my 6800s & 7750s.
ID: 1916326 · Report as offensive
Tom Rinehart
Volunteer tester

Send message
Joined: 12 Dec 01
Posts: 113
Credit: 3,074,493
RAC: 14,553
United States
Message 1916427 - Posted: 2 Feb 2018, 3:36:10 UTC - in response to Message 1916326.  

This is my computer. A Dell Optiplex 3020 SFF with a descrete AMD Radeon HD 8570. I picked it up for $30 at my local university’s surplus sales. As Tbar has described, I have tried a lot of different OS combinations on it trying to get the GPU to work. The GPU isn’t supported very well. None of the setups I have tried show the correct amount of memory on the card. My card has 1 GB.

Ubuntu 14.04 as Tbar describes works for SETI. It offered three driver options - the open source drivers and two AMD drivers. I chose the last one of the AMD drivers. It happily crunched away but only shows 860 MB of memory for the card. Tbar’s BOINC and AVX2 and AMD apps worked great on it. It has a Haswell i3 and completes the current WUs in about 4600 seconds on the CPU and about 3200 on the GPU. I run 4 tasks on the CPU and one the GPU. It seems to work fine not dedicating a CPU thread to the GPU.

I have tried Ubuntu 16.04 with the AMD drivers from their website. It will recognize the card but it only shows 365 MB of VRAM. I get the same postponing for 30 seconds error. The AMD instructions aren’t very clear. They show the card as supported but it is not clear which options to use. I used the pro version with the legacy support. This GPU has GCN 1st gen. If I were to try again, I’d try the non-pro version.

I am currently playing around with Mac OS 10.12 Sierra on it. After a lot of trial and error I have the GPU working. It does fine on general graphics tasks like playing a DVD but isn’t stable for BOINC yet.

My next effort is to go back to Ubuntu 14.04 and try the two other drivers and see if either recognizes all the card’s VRAM.
ID: 1916427 · Report as offensive
TBar
Volunteer tester

Send message
Joined: 22 May 99
Posts: 4031
Credit: 227,396,891
RAC: 221,450
United States
Message 1916542 - Posted: 2 Feb 2018, 23:38:23 UTC - in response to Message 1916427.  

My next effort is to go back to Ubuntu 14.04 and try the two other drivers and see if either recognizes all the card’s VRAM.

There is a setting you can make to the Profile that might help. In your home folder select View/Show Hidden Files, then open .profile and add lines so it looks like this;
    fi
fi

#AMD GPU driver options
export set GPU_MAX_ALLOC_PERCENT=100
export set GPU_MAX_HEAP_SIZE=100



That will result in all the GPU memory being used. This is what it says about my 1024mb card;
Max memory allocation: 1073741824
Global memory size: 1073741824

You have to restart to see it take affect.
ID: 1916542 · Report as offensive
Tom Rinehart
Volunteer tester

Send message
Joined: 12 Dec 01
Posts: 113
Credit: 3,074,493
RAC: 14,553
United States
Message 1916620 - Posted: 3 Feb 2018, 4:32:50 UTC - in response to Message 1916542.  

Thanks, I will try that.

My next effort is to go back to Ubuntu 14.04 and try the two other drivers and see if either recognizes all the card’s VRAM.

There is a setting you can make to the Profile that might help. In your home folder select View/Show Hidden Files, then open .profile and add lines so it looks like this;
    fi
fi

#AMD GPU driver options
export set GPU_MAX_ALLOC_PERCENT=100
export set GPU_MAX_HEAP_SIZE=100



That will result in all the GPU memory being used. This is what it says about my 1024mb card;
Max memory allocation: 1073741824
Global memory size: 1073741824

You have to restart to see it take affect.
ID: 1916620 · Report as offensive

Message boards : Number crunching : Ubuntu + AMD HD 8570: Is there a driver/config that works?


 
©2018 University of California
 
SETI@home and Astropulse are funded by grants from the National Science Foundation, NASA, and donations from SETI@home volunteers. AstroPulse is funded in part by the NSF through grant AST-0307956.