Package Details: opencl-amd 19.30.838629-1

Git Clone URL: https://aur.archlinux.org/opencl-amd.git (read-only)
Package Base: opencl-amd
Description: OpenCL userspace driver as provided in the amdgpu-pro driver stack. This package is intended to work along with the free amdgpu stack.
Upstream URL: http://www.amd.com
Keywords: amd amdgpu computing gpgpu opencl radeon
Licenses: custom:AMD
Conflicts: amdgpocl
Provides: opencl-driver
Submitter: grmat
Maintainer: grmat
Last Packager: grmat
Votes: 66
Popularity: 2.233290
First Submitted: 2016-12-01 03:45
Last Updated: 2019-07-09 15:12

Required by (21)

Sources (1)

Latest Comments

« First ‹ Previous ... 6 7 8 9 10 11 12 Next › Last »

p4block commented on 2017-08-01 13:08

With the latest upgrade, openCL apps are complaining about

/opt/amdgpu-pro/share/libdrm/amdgpu.ids: No such file or directory

And segfault

pgeorgiadis commented on 2017-07-18 07:16

I have a fresh system install which I did 2-3 days ago to test this with an AMD RX550.

"lspci -k" shows that the device is recognized and using the amdgpu driver:
01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Polaris12 (rev c7)
Subsystem: Device 1da2:e367
Kernel driver in use: amdgpu
Kernel modules: amdgpu

But "clinfo" shows the platform with name "AMD Accelerated Parallel Processing" with only 1 device, which is the CPU of the system.

What am I doing wrong?

BTW, AMD seems to have a slightly newer version of the driver here: https://www2.ati.com/drivers/linux/ubuntu/amdgpu-pro-17.10-450821.tar.xz.

marmistrz commented on 2017-07-17 19:33

I was trying to set this up on a friend's computer running Manjaro and I get an error while running clinfo:

amdgpu_device_initialize: DRM version is 2.49.0 but this driver is only compatible with 3.x.x.

Vi0L0 commented on 2017-07-13 20:01

@leidola:

do_opencl()
{
rm -r "${srcdir}/opencl"
}

and then:

do_drm()
{
mv "${srcdir}/opencl/etc" "${pkgdir}/"
}

how could that work?

grmat commented on 2017-06-28 10:01

@leidola: thanks for the update, you could always create a PR ;-)

The mid-term target for me would be to actually remove the libdrm fiddling and depend on packages like libdrm-amd (they released libdrm code for their hybrid stack recently*) and linux-amd (mainline). However, I've had problems with that setup which is why I didn't push an update.

*see https://cgit.freedesktop.org/~agd5f/drm/log/?h=amd-mainline-hybrid-master20170517

Note that this branch is currently missing the file with the IDs. It could be acquired from upstream or extracted from the -pro stack

leidola commented on 2017-06-27 20:47

The following is a patch for 17.20 version. Works for me with my 470 + linux-amd-mainline-git kernel; not sure if the stock kernel works.
(or pull from https://github.com/oleid/opencl-amd.git)
#########
commit ad2785880854070baaa45fd303ea24a4ce8f45d1
Author: Olaf Leidinger <oleid@mescharet.de>
Date: Tue Jun 27 22:43:30 2017 +0200

Restructure + 17.20 version

diff --git a/PKGBUILD b/PKGBUILD
index 468b7cc..598eaab 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -2,7 +2,7 @@

pkgname=opencl-amd
pkgdesc="OpenCL userspace driver as provided in the amdgpu-pro driver stack. This package is intended to work along with the free amdgpu stack."
-pkgver=17.10.429170
+pkgver=17.20.445420
pkgrel=1
arch=('x86_64')
url='http://www.amd.com'
@@ -14,30 +14,55 @@ conflicts=('amdgpocl')
DLAGENTS='https::/usr/bin/wget --referer https://support.amd.com/en-us/kb-articles/Pages/AMDGPU-PRO-Driver-for-Linux-Release-Notes.aspx -N %u'

prefix='amdgpu-pro-'
-major='17.10'
-minor='429170'
+major='17.20'
+minor='445420'
shared="opt/amdgpu-pro/lib/x86_64-linux-gnu"

source=("https://www2.ati.com/drivers/linux/ubuntu/${prefix}${major}-${minor}.tar.xz")
-sha256sums=('cb1ea7f9756f197a976138d2c00f239ae4ee43b839fbb1ea57f8770957d4afd6')
+sha256sums=('44066abd68be933571e9a01cc2486d458e4250a22e477f9401bc883a5bc49512')

pkgver() {
echo "${major}.${minor}"
}

-package() {
- mkdir "${srcdir}/opencl"
+unpack_deb() {
+ ar x "$1"
+ tar xvJf data.tar.xz
+}
+
+do_opencl()
+{
+ mkdir -p "${srcdir}/opencl"
cd "${srcdir}/opencl"
- ar x "${srcdir}/${prefix}${major}-${minor}/opencl-amdgpu-pro-icd_${major}-${minor}_amd64.deb"
- tar xJf data.tar.xz
+ unpack_deb "${srcdir}/${prefix}${major}-${minor}/opencl-amdgpu-pro-icd_${major}-${minor}_amd64.deb"
+
cd ${shared}
sed -i "s|libdrm_amdgpu|libdrm_amdgpo|g" libamdocl64.so

- mkdir "${srcdir}/libdrm"
+ rm -r "${srcdir}/opencl"
+}
+
+do_drm_ids()
+{
+ mkdir -p "${srcdir}/libdrm"
+ cd "${srcdir}/libdrm"
+
+ unpack_deb "${srcdir}/${prefix}${major}-${minor}/ids-amdgpu-pro_1.0.0-${minor}_all.deb"
+ mkdir -p ${pkgdir}/opt/amdgpu-pro/share
+ mv "${srcdir}/libdrm/opt/amdgpu-pro/share/libdrm" "${pkgdir}/opt/amdgpu-pro/share"
+
+ rm -r "${srcdir}/libdrm"
+}
+
+
+do_drm()
+{
+ mkdir -p "${srcdir}/libdrm"
cd "${srcdir}/libdrm"
- ar x "${srcdir}/${prefix}${major}-${minor}/libdrm-amdgpu-pro-amdgpu1_2.4.70-${minor}_amd64.deb"
- tar xJf data.tar.xz
+
+ unpack_deb "${srcdir}/${prefix}${major}-${minor}/libdrm-amdgpu-pro-amdgpu1_2.4.70-${minor}_amd64.deb"
cd ${shared}
+
rm "libdrm_amdgpu.so.1"
mv "libdrm_amdgpu.so.1.0.0" "libdrm_amdgpo.so.1.0.0"
ln -s "libdrm_amdgpo.so.1.0.0" "libdrm_amdgpo.so.1"
@@ -49,7 +74,12 @@ package() {
mv "${srcdir}/libdrm/${shared}/libdrm_amdgpo.so.1.0.0" "${pkgdir}/usr/lib/"
mv "${srcdir}/libdrm/${shared}/libdrm_amdgpo.so.1" "${pkgdir}/usr/lib/"

- rm -r "${srcdir}/opencl"
rm -r "${srcdir}/libdrm"
}

+package() {
+ do_opencl
+
+ do_drm
+ do_drm_ids
+}

milek7 commented on 2017-06-10 15:35

For me OpenCL apps don't detect GPUs without libdrm installed.

grmat commented on 2017-05-05 12:43

@bluebugs:
The missing library isn't included in amdgpu-pro, maybe it was used in the legacy driver, I don't know. But I can confirm that clinfo is still looking for it.

However, clinfo works for me and shows me both the GPU and Ryzen as computing devices. Have you tried if the amdgpu-pro stack on a supported distribution works with your hardware?

bluebugs commented on 2017-05-04 18:24

I am unable with both this package and the 16.40 in the comment to get clinfo to detect my GPU an RX480, but it detect the CPU a Ryzen 5 as device #0. I have been trying to debug this a bit, but couldn't get any error message any where. dmesg is all happy about switching to amdgpu and strace of clinfo only report a missing libamdoclsc64.so, but it doesn't seems to be provided by anything.

Would anyone have an idea why clinfo doesn't detect the GPU at all ?

GuSec commented on 2017-04-24 11:04

@leidola I was running fine under the very same circumstances (but RX480), i.e. 16.60, but am experiencing seemingly random crashes of OpenCL processes on 17.10 (both on linux and linux-git). For example, some cryptocurrency mining applications seem stable (e.g. Claymore Zcash) while others are unstable (Claymore Ethereum+Decred) and some completely broken; All of which worked on 16.60. Are you seeing similar issues on your end, or are you completely stable on 17.10?

@grmat I would very much appreciate a 16.40 version on AUR!