AMD-Grafikkarten unter Linux: Treiber, OpenCL, BOINC, amdconfig und headless per ssh

Trotz der 3 Jahre alten guten Anleitung (Danke EselTreiber) hakt die Installation bei mir.
Vielleicht liegt es an den mittlerweile neueren Treiber und Ubuntu Versionen.

Stand jetzt habe ich Ubuntu 14.4.5 (Standard, also Unity) genutzt und dabei "radeon-crimson-15.12" + "AMD-APP-SDKInstaller-v3.0.130.136" installieren müssen.
Nach der Installation des letzteren startete schon der Rechner nicht mehr, das System blieb beim Ubuntu-Logo hängen.
Muss hier wohl die Anleitung aktualisiert werden? Oder muss ich jetzt (3 Jahre also später) penibel auf die Versionen achten und diese so herunterladen?

Natürlich habe ich kein Problem damit, mein womöglich zerschossenes Ubuntu neuzuinstallieren, geht ja schnell.
 
Also bei AMD ist da so viel passiert, das muss man alles neu bewerten.
Ich bleibe deswegen noch auf Debian Stable, weil sonst meine "alten" GCN mit den neuen nicht mehr unterstützt würden.
 
Ich würde gern Milkyway@Home unter Ubuntu 16.04 LTS auf GPUs laufen lassen. Da hätte ich zwei AMD 7950 GPUs.
Die Treiberunterstützung hat sich aber leider geändert mit 16.04 (keine fglrx Unterstützung mehr)
Wie bewerkstellige ich das? Leider rechnet er nur auf der CPU. Es gibt auch keine app_info.xml und in der app_config.xml steht auch nichts drin ...
Könnte mir da bitte jemand helfen? Ich bin jetzt eher kein Linux-Kenner ;D und eher überfordert mit den Kommandozeilen-Bergen in den Foren.

Habe diese Seite gelesen:
https://wiki.ubuntuusers.de/Grafikkarten/AMD/
amdgpu und AMD GPU-PRO unterstützen die 7950 leider nicht.

Wie bekomme ich also OpenCL und den richtigen Treiber auf meinem System eingebunden? (Wenn es geht bitte mit Anleitung 8)
 
Das Problem sollte man mal allgemein angehen.
Wie ich schon schrieb, konnte ich zuletzte dieser Anleitung folgend kein System mehr selbst mit 14.04 aufsetzen.
1 Tag basteln inkl. mehrere Neuinstallationen waren mir dann doch zu viel und habe aufgegeben.
Letztendlich habe ich zu Windows 10 gegriffen.
 
Der fglrx Treiber 15.12.302 ist auch führ Ubuntu 14.04.2, ich habe es gerade auf xubuntu 14.04.5 probiert und er kollidiert mit dem
xserver-xorg-core-lts-xenial möglicherweise steckt der selbe xserver drin wie in Ubuntu 16.04
und der ist nicht mehr kompatibel zum fglrx treiber, den Kernel haben sie auch gewechselt von 3.16 nach 4.4.

--- Update ---

Auf xubuntu 14.04.2 mit Kernel 3.16.77 hat es noch einwandfei funjtioniert, ich hab dem System die Pakete bauen lassen und dann
installiert. zwei Rechner laufen bei mir auch mit Linux Mint 17.3 rechnen erfolgreich auf ihren GPUs.

xubuntu 16.04.2 habe ich anschliessend noch mal installiert(HD 7850) alles auf den neuesten stand gebracht und Boinc installiert,
nach dem ich den amdgpu-pro Treiber installiert hatte sah ich nach dem neustart nur einen schwarzen Hintergrund mit blinkendem -
das System lief im hintergrund weiter auch Boinc leider mit Berechnungsfehler auf der Graka(Collatz,PPS-Sieve und Milkyway)
16.04 hatte ich Gestern schon mal getestet und die Karte gleich gegen eine RX470 getausch, ebenfalls mit Schwarzem Hintergrund
aber Collatz hat er auf der Graka gerechnet, auf Linux Mint 18.2 beta lässt sich der amdgpu-pro Treiber nicht installieren.

--- Update ---

Auf Ubuntu Gnome 14.04.4 habe ich den fglrx installiert bekommen und das System hat sich auch auf 14.04.5 aktualisiert
Collatz PPS Sieve und Milkyway hat er erfolgreich gerechnet.
dafür habe ich ein Problem mit Ubuntu 16.04.2 und amd-gpu-pro auf demselben Rechner, er läuft aber ich lande nur in der Konsole.
 
Zuletzt bearbeitet:
Linux ist solang sehr schön, solang man nichts "per Hand" installieren will. Dann hört es auf mit der Nutzerfreundlichkeit. Ich habe jetzt leider wieder Windows installieren müssen, damit Milkyway läuft :[
 
Also einfach ist etwas anderes, aber es reizt schon etwas sich mit Linux auseinander zu setzten, der amdgpu Treiber ist ja noch vergleichsweise
neu aber ich habe ihn mit ach und krach eine RX460 und eine RX470 mit Linux Mint Xfce zum laufen gebracht, und sie sind bei Collatz PPS Sieve
und Milkyway am arbeiten meine HD 7850 liefert zwar ein Bild, bei Boinc macht sie alle Wus platt, meine R7 360 rechnet zwar unter Boinc
ich hatte mit ihr aber nur ein schearzes Bild und nur zugruff über SSH.
 
Zuletzt bearbeitet:
Ich habe Linux Mint 18.2. mit Kernel 4.11.12 am laufen.

Bei den AMD Gpupro Treibern muss man im Installer script nach ubuntu suchen und mit linuxmint ersetzen.
Wenn man das ein paar mal gemacht hat gehts eigentlich.
Ebenso war ich überrascht wie einfach der umstieg auf meinem Ryzen war.

Gruß
Mike
 
Sorry für ein wenig offtoppic:

Wenn man sich so überhaupt nicht mit Linux und Treibern auskennt, empfehle ich folgendes Video:
Es geht zwar auch allgemein um Linux aber es wir ganz gut erklärt wie es sich mit Treibersystem bei Linux verhällt.

Mir ist dadurch einiges klar geworden, für unsere Profilinuxer ist das natürlich kalter Kaffee.
 
Mal für die Suchmaschinen:
Funktionierende Installation Lubuntu 18.04.1 desktop AMD64 für RX560+BOINC (Getestet mit Einstein/Milkyway/Collatz/Primegrid)
Code:
minimal; ohne ThirdParty Soft; mit Updates; Format/part HDD Full delete all

Fernsteuerung+Überwachung (nur Intern ohne SSH!):
sudo apt install x11vnc psensor autocutsel 

x11vnc config:
sudo x11vnc -storepasswd PASSWORD /etc/x11vnc.pass 
mkdir /home/*USER*/.config/autostart
leafpad /home/*USER*/.config/autostart/x11vnc.desktop
>>>
[Desktop Entry]
Type=Application
Version=1.0
Name=x11vnc
Comment=x11vnc starten
Exec=/sbin/.x11vnc.sh
Path=/home/*USER*/.config/autostart
Categories=System;
Name=x11vnc
<<<

sudo leafpad /sbin/.x11vnc.sh
>>>
#!/bin/bash
sleep 1
sudo -S <<< "ROOT" /usr/bin/x11vnc -auth /var/run/lightdm/root/:0 -display :0 -rfbauth /etc/x11vnc.pass -rfbport 5901 -nowf -noxrecord -noxfixes -noxdamage -forever -bg -sleepin 30 -o /var/log/x11vnc.log
<<<

sudo chmod +x /sbin/.x11vnc.sh

autocutsel on LXsession autostart eintragen

AMDpro GPU Treiber(für MW erforderlich -> GPU wird doppelt erkannt):
entpacken auf Desktop amdgpu-pro-18.50-708488-ubuntu-18.04.tar.xz
sudo /home/*USER*/Desktop/amdgpu-pro-18.50-708488-ubuntu-18.04/amdgpu-pro-install -y --opencl=legacy,pal

BOINC:
sudo apt install boinc boinc-virtualbox boinc-client-opencl ocl-icd-opencl-dev

vbox lizenz erst esc drücken dann bestätigen

boinc config:
sudo leafpad /etc/boinc-client/cc_config.xml
>>>
<cc_config>

 <options>
  <start_delay>30</start_delay>
  <report_results_immediately>1</report_results_immediately>
  <max_file_xfers>2</max_file_xfers>
  <max_file_xfers_per_project>1</max_file_xfers_per_project>
  <suppress_net_info>0</suppress_net_info>  
  <use_all_gpus>1</use_all_gpus>
  <exclude_gpu>
   <url>http://milkyway.cs.rpi.edu/milkyway/</url>
   <device_num>0</device_num>
   <type>ATI</type>
  </exclude_gpu>
  <exclude_gpu>
   <url>http://www.primegrid.com/</url>
   <device_num>1</device_num>
   <type>ATI</type>
  </exclude_gpu>
  <exclude_gpu>
   <url>http://einstein.phys.uwm.edu/</url>
   <device_num>1</device_num>
   <type>ATI</type>
  </exclude_gpu>
  <exclude_gpu>
   <url>https://boinc.thesonntags.com/collatz/</url>
   <device_num>1</device_num>
   <type>ATI</type>
  </exclude_gpu>
 </options>
 
 <log_flags>
  <task>1</task>
  <file_xfer>1</file_xfer>
  <sched_ops>1</sched_ops>
 </log_flags>

</cc_config>
<<<


sudo leafpad /etc/boinc-client/remote_hosts.cfg
>>>
192.168.XXX.XXX
<<<

Code:
<![CDATA[Starting BOINC client version 7.9.3 for x86_64-pc-linux-gnu]]>

<![CDATA[Libraries: libcurl/7.58.0 OpenSSL/1.1.0g zlib/1.2.11 libidn2/2.0.4 libpsl/0.19.1 (+libidn2/2.0.4) nghttp2/1.30.0 librtmp/2.3]]>

<![CDATA[OpenCL: AMD/ATI GPU 0: Radeon RX 560 Series (POLARIS11 / DRM 3.27.0 / 4.15.0-43-generic, LLVM 6.0.0) (driver version 18.0.5, device version OpenCL 1.1 Mesa 18.0.5, 3942MB, 3942MB available, 1647 GFLOPS peak)]]>
<![CDATA[OpenCL: AMD/ATI GPU 1: Radeon RX 560 Series (driver version 2766.4, device version OpenCL 1.2 AMD-APP (2766.4), 1968MB, 1968MB available, 2636 GFLOPS peak)]]>
<![CDATA[[libc detection] gathered: 2.27, Ubuntu GLIBC 2.27-3ubuntu1]]>

<![CDATA[OS: Linux Ubuntu: Ubuntu 18.04.1 LTS [4.15.0-43-generic|libc 2.27 (Ubuntu GLIBC 2.27-3ubuntu1)]]]>
<![CDATA[VirtualBox version: 5.2.18_Ubuntur123745]]>

 Milkyway@Home | <![CDATA[Config: excluded GPU.  Type: ATI.  App: all.  Device: 0]]>
 PrimeGrid | <![CDATA[Config: excluded GPU.  Type: ATI.  App: all.  Device: 1]]>
 Einstein@Home | <![CDATA[Config: excluded GPU.  Type: ATI.  App: all.  Device: 1]]>
 collatz | <![CDATA[Config: excluded GPU.  Type: ATI.  App: all.  Device: 1]]>
 
Zuletzt bearbeitet:
Auf diesem Rechner ist Linux Mint 19 mit dem Kernel 4.15.0-20.21 installiert.

>thorsam@System-2:~/Downloads/amdgpu-pro-18.50-708488-ubuntu-18.04$ sudo ./amdgpu-pro-install -y --opencl=pal,legacy --headless
>./amdgpu-pro-install: 1: ./amdgpu-pro-install: ?#!/bin/bash: not found
>./amdgpu-pro-install: 24: ./amdgpu-pro-install: shopt: not found
>thorsam@System-2:~/Downloads/amdgpu-pro-18.50-708488-ubuntu-18.04$

In der Datei "amdgpu-pro-install" habe ich "ubuntu" durch "linuxmint" ersetzt. Sie ist auf "ausführbar" gesetzt.
In dem Verzeichnis "bin" ist auch die Datei "bash" vorhanden.

TAL9000 hast Du einen Tip für mich? Ich versuche gerade Testweise eine RX460 von backwood zum laufen zu bringen.
 
Probiere es mit mal mit der absoluten Pfadangabe, bzw. ohne ./ da bereits im richtigen Verzeichnis. Das Script wird scheinbar nicht richtig ausgeführt, habe aber noch kein Mint 19 installiert, so das ich nicht sicher sagen kann ob da was grundlegendes verschlimmbessert wurde... würde mich aber wundern bei so was wie bash/shopt
 
Habe testweise mal ein Ubuntu 19.04 plus Mesa (19.1 devel) PPA installiert um zu schauen ob man auch ohne OpenCL aus dem offiziellen AMDGPU Treiber auskommt. BOINC erkennt die Karte und nutzt sie auch.

Code:
Sa 16 Mär 2019 23:53:31 CET |  | OpenCL: AMD/ATI GPU 0: Radeon RX 580 Series (POLARIS10, DRM 3.27.0, 5.0.0-7-generic, LLVM 8.0.0) (driver version 19.1.0-devel, device version OpenCL 1.1 Mesa 19.1.0-devel (git-158d45d 2019-03-16 disco-oibaf-ppa), 8192MB, 8192MB available, 3226 GFLOPS peak

Ausgabe von clinfo:
#clinfo
Number of platforms 1
Platform Name Clover
Platform Vendor Mesa
Platform Version OpenCL 1.1 Mesa 19.1.0-devel (git-158d45d 2019-03-16 disco-oibaf-ppa)
Platform Profile FULL_PROFILE
Platform Extensions cl_khr_icd
Platform Extensions function suffix MESA

Platform Name Clover
Number of devices 1
Device Name Radeon RX 580 Series (POLARIS10, DRM 3.27.0, 5.0.0-7-generic, LLVM 8.0.0)
Device Vendor AMD
Device Vendor ID 0x1002
Device Version OpenCL 1.1 Mesa 19.1.0-devel (git-158d45d 2019-03-16 disco-oibaf-ppa)
Driver Version 19.1.0-devel
Device OpenCL C Version OpenCL C 1.1
Device Type GPU
Device Profile FULL_PROFILE
Device Available Yes
Compiler Available Yes
Max compute units 36
Max clock frequency 1120MHz
Max work item dimensions 3
Max work item sizes 256x256x256
Max work group size 256
Preferred work group size multiple 64
Preferred / native vector sizes
char 16 / 16
short 8 / 8
int 4 / 4
long 2 / 2
half 8 / 8 (cl_khr_fp16)
float 4 / 4
double 2 / 2 (cl_khr_fp64)
Half-precision Floating-point support (cl_khr_fp16)
Denormals No
Infinity and NANs Yes
Round to nearest Yes
Round to zero No
Round to infinity No
IEEE754-2008 fused multiply-add No
Support is emulated in software No
Single-precision Floating-point support (core)
Denormals No
Infinity and NANs Yes
Round to nearest Yes
Round to zero No
Round to infinity No
IEEE754-2008 fused multiply-add No
Support is emulated in software No
Correctly-rounded divide and sqrt operations No
Double-precision Floating-point support (cl_khr_fp64)
Denormals Yes
Infinity and NANs Yes
Round to nearest Yes
Round to zero Yes
Round to infinity Yes
IEEE754-2008 fused multiply-add Yes
Support is emulated in software No
Address bits 64, Little-Endian
Global memory size 8589934592 (8GiB)
Error Correction support No
Max memory allocation 6871947673 (6.4GiB)
Unified memory for Host and Device No
Minimum alignment for any data type 128 bytes
Alignment of base address 32768 bits (4096 bytes)
Global Memory cache type None
Image support No
Local memory type Local
Local memory size 32768 (32KiB)
Max number of constant args 16
Max constant buffer size 2147483647 (2GiB)
Max size of kernel argument 1024
Queue properties
Out-of-order execution No
Profiling Yes
Profiling timer resolution 0ns
Execution capabilities
Run OpenCL kernels Yes
Run native kernels No
Device Extensions cl_khr_byte_addressable_store cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_int64_base_atomics cl_khr_int64_extended_atomics cl_khr_fp64 cl_khr_fp16

NULL platform behavior
clGetPlatformInfo(NULL, CL_PLATFORM_NAME, ...) Clover
clGetDeviceIDs(NULL, CL_DEVICE_TYPE_ALL, ...) Success [MESA]
clCreateContext(NULL, ...) [default] Success [MESA]
clCreateContextFromType(NULL, CL_DEVICE_TYPE_DEFAULT) Success (1)
Platform Name Clover
Device Name Radeon RX 580 Series (POLARIS10, DRM 3.27.0, 5.0.0-7-generic, LLVM 8.0.0)
clCreateContextFromType(NULL, CL_DEVICE_TYPE_CPU) No devices found in platform
clCreateContextFromType(NULL, CL_DEVICE_TYPE_GPU) Success (1)
Platform Name Clover
Device Name Radeon RX 580 Series (POLARIS10, DRM 3.27.0, 5.0.0-7-generic, LLVM 8.0.0)
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) Success (1)
Platform Name Clover
Device Name Radeon RX 580 Series (POLARIS10, DRM 3.27.0, 5.0.0-7-generic, LLVM 8.0.0)

ICD loader properties
ICD loader Name OpenCL ICD Loader
ICD loader Vendor OCL Icd free software
ICD loader Version 2.2.11
ICD loader Profile OpenCL 2.1
Hier wird also Clover verwendet, noch nicht ROCm.

Das Ganze hat den Vorteil dass man nicht an Ubuntu 18.04 LTS gebunden ist und neuere Kernel (hier 5.0) verwenden kann. Neben Polaris/Vega soll AMDGPU ältere Karten experimentell unterstützen. In Ermangelung einer GCN Karte kann ich das aber nicht testen.

Auf der RX580 klappt das, lasse gerade einige Aufgaben bei Einstein rechnen:
https://einsteinathome.org/host/12770352

Code:
LATeah1055L_100.0_0_0.0_2231208_1	396053860	16 Mar 2019 22:59:27 UTC	16 Mar 2019 23:33:55 UTC	Completed, waiting for validation	1,019	98	0	Gamma-ray pulsar binary search #1 on GPUs v1.18 () x86_64-pc-linux-gnu
LATeah1055L_100.0_0_0.0_2245887_0	396053869	16 Mar 2019 22:59:27 UTC	17 Mar 2019 00:46:52 UTC	Completed, waiting for validation	1,016	98	0	Gamma-ray pulsar binary search #1 on GPUs v1.18 () x86_64-pc-linux-gnu
LATeah1055L_100.0_0_0.0_2247518_0	396053870	16 Mar 2019 22:59:27 UTC	16 Mar 2019 23:28:22 UTC	Completed, waiting for validation	1,026	97	0	Gamma-ray pulsar binary search #1 on GPUs v1.18 () x86_64-pc-linux-gnu
LATeah1055L_100.0_0_0.0_2846095_0	396054237	16 Mar 2019 22:59:27 UTC	16 Mar 2019 23:51:01 UTC	Completed, waiting for validation	1,016	98	0	Gamma-ray pulsar binary search #1 on GPUs v1.18 () x86_64-pc-linux-gnu

1026s ist für eine WU aber eher ein bischen mau, da sind ansonsten mit dem closed source OpenCL 2 WUs in der Zeit möglich. Hier lohnt sich evtl. einmal ROCm zu probieren.

edit:
Code:
LATeah1055L_100.0_0_0.0_2232839_1	396053861	16 Mar 2019 22:59:27 UTC	17 Mar 2019 1:27:11 UTC	Completed, waiting for validation	572	103	0	Gamma-ray pulsar binary search #1 on GPUs v1.18 () x86_64-pc-linux-gnu
LATeah1055L_100.0_0_0.0_2252411_0	396053873	16 Mar 2019 22:59:27 UTC	17 Mar 2019 1:37:29 UTC	Completed, waiting for validation	571	103	0	Gamma-ray pulsar binary search #1 on GPUs v1.18 () x86_64-pc-linux-gnu
Jetzt mit ROCm, Unterschied wie Tag und Nacht, top!

ROCm mit 2 E@H WUs parallel:
Code:
LATeah1055L_100.0_0_0.0_2234470_1	396053862	16 Mar 2019 22:59:27 UTC	17 Mar 2019 12:29:48 UTC	Completed and validated	1,085	113	3,465	Gamma-ray pulsar binary search #1 on GPUs v1.18 () x86_64-pc-linux-gnu
LATeah1055L_100.0_0_0.0_2236101_1	396053863	16 Mar 2019 22:59:27 UTC	17 Mar 2019 11:51:35 UTC	Completed and validated	1,087	113	3,465	Gamma-ray pulsar binary search #1 on GPUs v1.18 () x86_64-pc-linux-gnu
LATeah1055L_140.0_0_0.0_15372175_1	396146678	17 Mar 2019 11:11:41 UTC	17 Mar 2019 13:42:15 UTC	Completed and validated	1,086	114	3,465	Gamma-ray pulsar binary search #1 on GPUs v1.18 () x86_64-pc-linux-gnu
LATeah1055L_140.0_0_0.0_15380330_1	396146683	17 Mar 2019 11:11:41 UTC	17 Mar 2019 13:42:15 UTC	Completed and validated	1,086	114	3,465	Gamma-ray pulsar binary search #1 on GPUs v1.18 () x86_64-pc-linux-gnu
LATeah1055L_140.0_0_0.0_15390116_0	396146689	17 Mar 2019 11:11:41 UTC	17 Mar 2019 13:42:15 UTC	Completed and validated	1,084	114	3,465	Gamma-ray pulsar binary search #1 on GPUs v1.18 () x86_64-pc-linux-gnu
~30-40 Sekunden langsamer als das OpenCL aus dem 18.50er Treiber, aber immer noch ein Gewinn gegenüber nur einer WU.

Über ROCm zeigt sich die GPU im BOINC log folgendermaßen:
Code:
Sun 17 Mar 2019 10:36:44 AM CET |  | OpenCL: AMD/ATI GPU 0: Ellesmere [Radeon RX 470/480/570/570X/580/580X] (driver version 2833.0 (HSA1.1,LC), device version OpenCL 1.2, 8192MB, 8192MB available, 5161 GFLOPS peak)

Werde womöglich noch Milkyway / Collatz probieren, einige Resultate abliefern und dann die Validierung abwarten. Links zu den Hosts update ich sobald verfügbar.

edit:
Collatz (https://boinc.thesonntags.com/collatz/results.php?hostid=848341):
Code:
Mit Clover (unoptimiert):
26528758 	24298674 	16 Mar 2019, 23:51:54 UTC 	17 Mar 2019, 0:18:04 UTC 	Completed and validated 	1,550.71 	49.76 	37,485.15 	Collatz Sieve v1.40 (opencl_ati_gpu)
x86_64-pc-linux-gnu
Mit ROCm (unoptimiert):
26529214 	23736499 	16 Mar 2019, 23:51:54 UTC 	17 Mar 2019, 9:57:14 UTC 	Completed and validated 	1,585.02 	74.21 	37,312.34 	Collatz Sieve v1.40 (opencl_ati_gpu)
x86_64-pc-linux-gnu
ROCm + Optimierung (verbose=1 kernels_per_reduction=48 threads=8 lut_size=17 sleep=1 cache_sieve=1)
26529217 	24299109 	16 Mar 2019, 23:51:54 UTC 	17 Mar 2019, 11:06:08 UTC 	Completed and validated 	1,266.31 	68.09 	37,052.14 	Collatz Sieve v1.40 (opencl_ati_gpu)
x86_64-pc-linux-gnu


##################################
Beeindruckend bisher, ganz ohne unfreies OpenCL aus dem AMDGPU Treiber, ohne Bindung an bestimmte Distributionen oder Kernel.

edit (Sonntag):

Milkyway mochte die Kombination allerdings nicht

Stderr output
<core_client_version>7.14.2</core_client_version>
<![CDATA[
<message>
process exited with code 1 (0x1, -255)</message>
<stderr_txt>
<search_application> milkyway_separation 1.46 Linux x86_64 double OpenCL </search_application>
Reading preferences ended prematurely
BOINC GPU type suggests using OpenCL vendor 'Advanced Micro Devices, Inc.'
Setting process priority to 0 (13): Permission denied
Error loading Lua script 'astronomy_parameters.txt': [string "number_parameters: 4..."]:1: '<name>' expected near '4'
Switching to Parameter File 'astronomy_parameters.txt'
<number_WUs> 5 </number_WUs>
<number_params_per_WU> 20 </number_params_per_WU>
Using AVX path
Error getting number of platform (-1001): CL_PLATFORM_NOT_FOUND_KHR
Failed to get information about device
Error getting device and context (1): MW_CL_ERROR
Failed to calculate likelihood
Using AVX path
Error getting number of platform (-1001): CL_PLATFORM_NOT_FOUND_KHR
Failed to get information about device
Error getting device and context (1): MW_CL_ERROR
Failed to calculate likelihood
Using AVX path
Error getting number of platform (-1001): CL_PLATFORM_NOT_FOUND_KHR
Failed to get information about device
Error getting device and context (1): MW_CL_ERROR
Failed to calculate likelihood
Using AVX path
Error getting number of platform (-1001): CL_PLATFORM_NOT_FOUND_KHR
Failed to get information about device
Error getting device and context (1): MW_CL_ERROR
Failed to calculate likelihood
Using AVX path
Error getting number of platform (-1001): CL_PLATFORM_NOT_FOUND_KHR
Failed to get information about device
Error getting device and context (1): MW_CL_ERROR
Failed to calculate likelihood
02:37:28 (5591): called boinc_finish(1)

</stderr_txt>
]]>
Das Problem ist laut Projektforum seit 2017 beim Projekt bekannt.

edit:
Primegrid (https://www.primegrid.com/results.php?hostid=949350)
Code:
982323327	603861892	17 Mar 2019 | 10:21:08 UTC	17 Mar 2019 | 10:44:51 UTC	Completed and validated			850.03	166.81	3,371.00	PPS (Sieve) v1.41 (openclatiPPSsieve)
982312822	603856869	17 Mar 2019 | 9:30:45 UTC	17 Mar 2019 | 10:11:19 UTC	Completed, waiting for validation	846.47	165.43	pending	PPS (Sieve) v1.41 (openclatiPPSsieve)




Alle Werte im Compute Mode bei ~82W.
 
Zuletzt bearbeitet:
sudo add-apt-repository ppa:paulo-miguel-dias/mesa
sudo apt-get update

Wenn ich "apt search mesa" ausführe, bekomme ich nur Treffer mit Mesa 19.0?

Boinc macht zwar Abfragen bei S@H nach AMD/ATI GPU WUs, bekommt aber keine.

Meine Versuche mach ich mit Sabroes Vega64.
 
Ich hatte folgendes PPA genommen:
https://launchpad.net/~oibaf/+archive/ubuntu/graphics-drivers

Nach dem apt update ein apt upgrade gemacht. Mesa etc. hast du ja schon drauf, dann zieht der das aber auf 19.1 hoch.

Dann mit clinfo schauen ob die Karte angezeigt wird. Glaube auch ocl-icd-libopencl1, mesa-opencl-icd plus auf jeden Fall boinc-client-opencl braucht es. Hab mir leider keine Aufzeichnungen gemacht.

Je nach OpenCL Implementierung wird die Karte in BOINC dann unterschiedlich angezeigt:


Code:
AMDGPU Treiber + legacy OpenCL (closed 18.50)
Sun 17 Mar 2019 16:14:07 CET |  | OpenCL: AMD/ATI GPU 0: Radeon RX 580 Series (driver version 2766.4, device version OpenCL 1.2 AMD-APP (2766.4), 8169MB, 8169MB available, 5161 GFLOPS peak)
Sicherlich aktuell die vollständigste Implementierung

Code:
AMDGPU + ROCm 2.2
Sun 17 Mar 2019 10:36:44 AM CET |  | OpenCL: AMD/ATI GPU 0: Ellesmere [Radeon RX 470/480/570/570X/580/580X] (driver version 2833.0 (HSA1.1,LC), device version OpenCL 1.2, 8192MB, 8192MB available, 5161 GFLOPS peak)
ähnlich performant wie legacy OpenCL, jedoch sind nicht alle Anwendungen lauffähig

Code:
AMDGPU + Mesa & Clover
Sa 16 Mär 2019 23:53:31 CET |  | OpenCL: AMD/ATI GPU 0: Radeon RX 580 Series (POLARIS10, DRM 3.27.0, 5.0.0-7-generic, LLVM 8.0.0) (driver version 19.1.0-devel, device version OpenCL 1.1 Mesa 19.1.0-devel (git-158d45d 2019-03-16 disco-oibaf-ppa), 8192MB, 8192MB available, 3226 GFLOPS peak
Nur OpenCL 1.1 und langsamer als obige Versionen, nicht alle Anwendungen sind lauffähig


Da mit ROCm und Clover ja zB. Milkyway nicht funktioniert, bleiben AMDGPU + legacy OpenCL die beste Lösung. Laut https://linuxconfig.org/install-opencl-for-the-amdgpu-open-source-drivers-on-debian-and-ubuntu lassen sich die OpenCL Komponenten aus dem offiziellen Treiber auch mit anderen Releases als Ubuntu 18.04 und neueren Kerneln nutzen. Dazu seien nur die OpenCL Komponenten zu installieren, der AMDGPU Treiber selbst ist ja eh Bestandteil des Linuxkernels.
Ich habe dieses heute einmal versucht, musste dpkg aber zwingen einiges an Abhängigkeiten zu ignorieren. Trotzdem wurde die Karte nicht erkannt. Ich versuche es nachher noch einmal mit einer frischen Installation...
 
Code:
So 17 Mär 2019 21:27:50 CET |  | OpenCL: AMD/ATI GPU 0: Radeon RX Vega (VEGA10, DRM 3.27.0, 5.0.0-7-generic, LLVM 8.0.0) (driver version 19.1.0-devel, device version OpenCL 1.1 Mesa 19.1.0-devel (git-29179f5 2019-03-17 disco-oibaf-ppa), 8176MB, 8176MB available, 8346 GFLOPS peak)

So 17 Mär 2019 21:33:09 CET | SETI@home | Requesting new tasks for AMD/ATI GPU
So 17 Mär 2019 21:33:11 CET | SETI@home | Scheduler request completed: got 0 new tasks

Liegt das jetzt an Seti oder an der Karte?

Ich lasse es mal noch eine Weile laufen.
 
Versuch mal bitte mit der Kombi entweder PrimeGrid PPS, Collatz oder Einstein, die haben bei mir direkt geliefert. Vielleicht kann SETI mit der Karte so nichts anfangen, sie keiner plan_class zuordnen und gibt dir daher keine WUs. Ich hatte SETI selbst nicht probiert, zu unterschiedlich sind die Ergebnisse um dort nach kurzer Zeit Vergleiche ziehen zu können...
 
So 17 Mär 2019 21:51:40 CET | Einstein@Home | Requesting new tasks for CPU and AMD/ATI GPU

Nur CPU WUs bekommen

So 17 Mär 2019 22:05:16 CET | Milkyway@Home | Requesting new tasks for AMD/ATI GPU
So 17 Mär 2019 22:05:18 CET | Milkyway@Home | No work available

So 17 Mär 2019 22:07:25 CET | collatz | Requesting new tasks for CPU and AMD/ATI GPU
So 17 Mär 2019 22:07:34 CET | collatz | Finished download of collatz_sieve_1.40_x86_64-pc-linux-gnu__opencl_ati
 
Milkyway wird pausiert, gibt keine neuen Wuzen wegen Server Umzug am Dienstag
 
Milkyway geht auf ROCm & MESA/Clover eh kaputt, das bringt nix.

Ich habe aus den AMDGPU 18.50 Treiberpaketen ein paar Libraries rausgefummelt und in ein DEB Paket gepackt
http://kerbodyne.com/boinc/amdgpu-ocl.deb

Bitte herunterladen und installieren, hat keine nennenswerten Abhängigkeiten. Bei mir läuft das auf meinem Testubuntu 19.04. Zuvor waren die Tasks im BM nach Entfernung des AMDGPU 18.50 "coproc missing", BOINC Neustart und sie laufen weiter.

Code:
Sun 17 Mar 2019 10:36:29 PM CET |  | CUDA: NVIDIA GPU 0: GeForce GTX 1060 3GB (driver version 410.10, CUDA version 10.0, compute capability 6.1, 3019MB, 2952MB available, 4228 GFLOPS peak)
Sun 17 Mar 2019 10:36:29 PM CET |  | OpenCL: NVIDIA GPU 0: GeForce GTX 1060 3GB (driver version 410.104, device version OpenCL 1.2 CUDA, 3019MB, 2952MB available, 4228 GFLOPS peak)
Sun 17 Mar 2019 10:36:29 PM CET |  | OpenCL: AMD/ATI GPU 0: Radeon RX 580 Series (driver version 2766.4, device version OpenCL 1.2 AMD-APP (2766.4), 7899MB, 7899MB available, 5161 GFLOPS peak)

Sollte also auch auf 18.10, Debian oder Mint laufen.
Sollte Clover noch aktiv sein, taucht die Vega dann ggF. 2 mal im BOINC auf, dann muss das noch wieder deaktiviert werden.
SuSE / Fedoranutzer können sich das .deb nach .rpm umwandeln.

--- Update ---

Code:
Mit AMDGPU OpenCL:
982469529	603930155	17 Mar 2019 | 23:45:36 UTC	17 Mar 2019 | 23:56:14 UTC	Completed, waiting for validation	628.35	165.27	pending	PPS (Sieve) v1.41 (openclatiPPSsieve)
982464933	603927913	17 Mar 2019 | 23:35:00 UTC	17 Mar 2019 | 23:45:35 UTC	Completed, waiting for validation	627.65	164.65	pending	PPS (Sieve) v1.41 (openclatiPPSsieve)
Mit AMDGPU + ROCm:
982323327	603861892	17 Mar 2019 | 10:21:08 UTC	17 Mar 2019 | 10:44:51 UTC	Completed and validated			850.03	166.81	3,371.00	PPS (Sieve) v1.41 (openclatiPPSsieve)
982312822	603856869	17 Mar 2019 | 9:30:45 UTC	17 Mar 2019 | 10:11:19 UTC	Completed, waiting for validation	846.47	165.43	pending	PPS (Sieve) v1.41 (openclatiPPSsieve)

Bei Primegrid PPS ist der Vorsprung des offiziellen OpenCL zu ROCm recht deutlich sichtbar.
Mesa/Clover und ROCm haben noch einiges nachzuholen, kann man aktuell (wenn Performance Trumpf ist) nur bedingt empfehlen.
 
Zuletzt bearbeitet:
Ich möchte diesen Thread hier nicht direkt missbrauchen, aber wäre ein Hackintosh nicht auch eine relativ einfache Möglichkeit Linux und AMD-GPUs zu kombinieren?
 
Hmm, Hackintosh nutzen MacOS auf Standardhardware, nicht Linux.
Die meisten Projekte haben, sofern sie Linux unterstützen auch MacOS Unterstützung. Für einen reinen Cruncher wäre das dann evtl. eine Option. Nutzt man das System aber auch abseits von BOINC, tragen ja auch andere Faktoren zur Wahl des OS bei.

Ich hatte vor ~8 Jahren für meine Frau einen Core 2 mit MacOS bestückt, empfand das damals als ziemliches Gefummel alles in Betrieb zu nehmen, Treiber aus dubiosen Quellen zu sammeln, etc... Das wird sich bis heute sicher gebessert haben, Bedarf da Zeit zu investieren habe ich aber nicht unbedingt ;-)

Vega und Polaris, behaupte ich, sind heutzutage recht problemlos auf zeitgemäßen Linuxdistributionen lauffähig zu machen, sofern man
1. Ubuntu 18.04 akzeptieren kann (noch bis 2023 supported)
2. sich für Mesa&Clover / ROCm entscheidet, damit gewisse Einschränkungen in Kauf nimmt
oder
3. gewillt ist ein paar Libraries aus dem offiziellen Treiber herauszusammeln bzw. mein Paket installiert (mit gratis Backdoor, P0rn und Viren, versprochen)


Für ältere Karten mag das noch wieder anders aussehen, kann ich in Ermangelung einer solchen nicht beurteilen.
 
Thorsam und ich haben heute SabroeSMCs VEGA 64 unter einem nackten Ubuntu 19.04 für den Cluster in Betrieb genommen.
Das sind an sich nur drei Schritte gewesen, wovon sich #2 & #3 zusammenfassen lassen:

# dpkg -i amdgpu-ocl.deb
# apt install clinfo (bringt ocl-icd-libopencl1 als Abhängigkeit mit) #VEGA 64 wird dort schon erkannt
# apt install boinc boinc-client-opencl

Schon ist die VEGA 64 in BOINC verfügbar, Tests mit Einstein waren erfolgreich.


Da ich (womöglich proprietäre) Teile des AMD Treibers ungern langfristig auf meinem Server anbieten möchte, habe ich ein Script geschrieben, mit dem sich jeder selbst die Datei amdgpu-ocl.deb erzeugen kann.

Hierzu create_amdgpu-ocl-pkg.sh herunterladen und zusammen mit dem 18.50er Treiber (unentpackt) in einem Verzeichnis ablegen.
Das Skript als beliebiger User oder root aufrufen, es entpackt das Treiberarchiv, extrahiert dann aus den darin enthaltenen .deb die benötigten Bibliotheken, etc...
Einige Paketverwaltungsinformationen werden erzeugt, sowie die UID/GID der Dateien auf root gesetzt. Hierzu braucht es sudo Rechte. Anschließend wird das Paket erstellt, installieren muss es der User selbst.
Automatischer Download des aktuellsten Treibers funktioniert noch nicht, ich komme mit den Weiterleitungen von amd.com (*1) nicht zurecht. Wer hierfür eine Lösung findet bekommt ein Eis. (Lösung soeben gefunden)
Würde mich freuen wenn das jemand mal testen könnte. Das Script läuft bei mir auf 2 Rechnern, das erzeugte .deb hat bei mir und Thorsam funktioniert. Mehr Tests schaden aber nicht!
 
Zuletzt bearbeitet:
Zurück
Oben Unten