APPSDK is no longer compatible with the amdgpu-pro, so you should not install appsdk with this driver.
There is no conflicting information on those threads that you mentioned. Amdgpu-pro does not support SI cards, so, APPSDK with older graphics driver was suggested on this thread Recommended Open CL SDK for use with AMDGPU-PRO on Linux? .
Rx580 is supported by the latest amdgpu-pro, so no need to downgrade in your case.
What about the current ABI mismatches between X11 and the amdgpu-pro drivers?
My Ubuntu 16.04 Xorg.0.log file shows:
[ 6.562] (**) ModulePath set to "/opt/amdgpu-pro/lib/xorg/modules,/opt/amdgpu/lib/xorg/modules,/usr/lib/xorg/modules" [ 6.562] (II) The server relies on udev to provide the list of input devices. If no devices become available, reconfigure udev or disable AutoAddDevices. [ 6.562] (II) Loader magic: 0x5602a733fdc0 [ 6.562] (II) Module ABI versions: [ 6.562] X.Org ANSI C Emulation: 0.4 [ 6.562] X.Org Video Driver: 20.0 [ 6.562] X.Org XInput driver : 22.1 [ 6.562]
X.Org Server Extension : 9.0
... slightly further down...
[ 6.570] (II) LoadModule: "glx" [ 6.572] (II) Loading /opt/amdgpu-pro/lib/xorg/modules/extensions/libglx.so [ 6.590] (II) Module glx: vendor="X.Org Foundation" [ 6.590] compiled for 1.19.0, module version = 1.0.0 [ 6.590] ABI class: X.Org Server Extension, version 10.0 [ 6.590] (EE) module ABI major version (10) doesn't match the server's version (9) [ 6.590] (II) UnloadModule: "glx" [ 6.590] (II) Unloading glx [ 6.590] (EE) Failed to load module "glx" (module requirement mismatch, 0) [ 6.590] (II) LoadModule: "amdgpu" [ 6.590] (II) Loading /opt/amdgpu/lib/xorg/modules/drivers/amdgpu_drv.so [ 6.591] (II) Module amdgpu: vendor="X.Org Foundation" [ 6.591] compiled for 1.19.3, module version = 1.4.0 [ 6.592] Module class: X.Org Video Driver [ 6.592] ABI class: X.Org Video Driver, version 23.0 [ 6.592] (EE) module ABI major version (23) doesn't match the server's version (20) [ 6.592] (II) UnloadModule: "amdgpu" [ 6.592] (II) Unloading amdgpu [
6.592] (EE) Failed to load module "amdgpu" (module requirement mismatch, 0)
Should I use an older amdgpu-pro driver ?
17.50 caused this error.
I checked the /var/log/Xorg.0.log to verify the version - but didn't find any version information related to amdgpu.
Also, I grep'd dmesg output (dmesg | grep amdgpu) and didn't find a version number either.
The Ubuntu 16.04 x86_64 system was installed and updated (sudo apt dist-upgrade) a few days ago.
I'm happy to try alpha/beta drivers, or try anything you'd like.
Heck, if you think it would help I'd ship you the motherboard. It's an ASRock motherboard with the latest BIOS:
Vendor: American Megatrends Inc.
Release Date: 05/16/2012
Base Board Information
Product Name: G31M-GS.
It looks like a similar issue was reported under support forum: Amdgpu-pro 17.30-465504 fails to install on 64 bit Ubuntu 16.04 f
Please try out the suggestion mentioned there. If it does not help, please report the issue here:Drivers & Software
Oh my, that solved both ABI mismatch problems perfectly!
Thank you so much!
I have the 17.50 amdgpu-pro drivers being used, and my /var/log/Xorg.0.conf has zero errors (EE).
To anyone that stumbles upon this: I recommend reading the article that dipak provided, but to summarize this is what fixed the ABI mismatch issues for me:
sudo apt install --install-recommends linux-generic-hwe-16.04 xserver-xorg-hwe-16.04
Also, all I had to do to get OpenCL working on my RX 580 was this:
$ sudo ./amdgpu-pro-install -y --opencl=legacy
$ sudo reboot
$ clinfo works fine
No OpenCL programs will compile though, as cl.h won't be found. The solution to that seems to be (undocumented?):
$ sudo apt-get install opencl-headers
At this point my OpenCL test program compiles, links and runs.
Since the latest Ubuntu 16.04 may not work without the hwe update, perhaps an update to the 17.50 install docs is in order? Specifically for:
Ah, after testing there was one more thing I had to do that was specific to my motherboard: I had to set DVMT to auto. Any fixed values seemed to cause instability.
I also created this file: /etc/X11/xorg.conf.d/20-amdgpu.conf
with the contents:
because I was previously having trouble with the i915 on the motherboard.
With all of the things I changed, I'm not sure this is required. Just mentioning it to be thorough.