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

also aktuellen Treiber ziehen und nicht Milkyway rechnen können (was ich mit dem Ding auch nicht vorhatte)
 
Die Unterstützung von RDNA über Rocm nimmt ja so langsam Form an. Evtl. kann man sich die Klimmzüge bald sparen.
 
Ich hab' mal wieder ein GPU-/OpenCL-Problem unter Linux:
Nach dem Pentha hab' ich meinen Fuhrpark ja verkleinert und "umgesteckt" - jetzt soll der 4770K mein Linux (aktuelles Mint) - u.v.a. MilkyWay-Cruncher werden - aktuell steckt eine 7950 drin.
Die Karte wird problemlos erkannt - und ich hab' auch eine 20.XX (nicht .45 afair) OpenCL-Version von koschi installiert - aber BOINC will die Karte einfach nicht erkennen!

Wie krieg' ich die denn wieder an den Start?? *noahnung*

F1! *chatt*
(Sonst muss da halt wieder Windows drauf...)
 
Inwiefern wird die Karte erkannt? Desktop usw kann sie sicher über den "radeon" Treiber, aber kein OpenCL, hm?

AMD bietet für die Karte nur Treiber für Ubuntu 12 und Ubuntu 14 an, sie wird vom neueren amdgpu Treiber nicht unterstützt. Damit sieht es ziemlich mau aus.
Du kriegst da maximal OpenCL 1.1 hin über Mesa, aber nicht über das amdgpu Treiber Extrakt von mir.

 
Inwiefern wird die Karte erkannt? Desktop usw kann sie sicher über den "radeon" Treiber, aber kein OpenCL, hm?

AMD bietet für die Karte nur Treiber für Ubuntu 12 und Ubuntu 14 an, sie wird vom neueren amdgpu Treiber nicht unterstützt. Damit sieht es ziemlich mau aus.
Du kriegst da maximal OpenCL 1.1 hin über Mesa, aber nicht über das amdgpu Treiber Extrakt von mir.

Jepp - Desktop (1920x1200), etc. kein Problem - aber im BOINC-Log keine GPU erkannt...

Was heißt das denn nun genau?
Muss ich auf so ein uraltes Ubuntu wechseln?
Ich meine, dass mit der Vorgänger-Mint-Version das noch kein Problem war? *kopfkratz
(Laut Grafik ginge OpenCL 4.6 mit Mesa??)

Kann ich die Mesa-Treiber installieren und dann ginge zumindest BOINC / MilkyWay?
 
Ich hab vor 2 Jahren mal versucht so einen Dino mit Mesa OpenCL beizubringen, war aber nicht erfolgreich. Ich glaube die Karte wurde erkannt, hat aber nur Berechnungsfehler oder Hänger verursacht.

Hast du das Paket ocl-icd-libopencl1 schon drauf? Installier mal zusätzlich mesa-opencl-icd und dann über clinfo gucken ob die Karte angezeigt wird. Für BOINC braucht es natürlich noch das Paket boinc-client-opencl.

Eine alte Ubuntuversion (wenn sie überhaupt läuft) sollte außer Frage stehen, da gibt es selbst für die LTS schon lange keine Updates mehr.
 
Damit hatte ich mich vor Jahren auch mal rumgeärgert als es um die Einrichtung meines kleinen DP Crunchers mit der HD7970 und dem A12-9800 ging und es lief immer darauf hinaus das nie beide GPUs gleichzeitig nutzbar waren weil immer eine GPU nicht erkannt wurde oder nur Mist produzierte. Am Ende hatte ich die Ubuntu Installation mit dem ganzen hin und her sogar geschrottet.

Letztendlich lief es darauf hinaus das ich dem Rechner eine Windows Installation verpasst hatte aber auch da mußte man wegen der GPU Generation und dem Treiber aufpassen denn der A12 rutschte in Microsofts Update Sperre für Windows 7/8, ich nutzte eine freie Windows 8 Version und AMD lieferte ausgerechnet für diese Versionen auch keinen offiziellen Treiber. Inzwischen hat diese Version wegen Treiber Instabilitäten ein Upgrade auf Windows 10 bekommen.

Vor allem bei einem GPU Generationsmix und einer alten Karte auf einer deutlich neueren Linux Installation habe ich mit Linux eher schlechte Erfahrungen gemacht sobald es um den OpenCL Support geht.

Windows war hier zwar deutlich unproblematischer aber ist in der Hinsicht auch nicht problemlos weil AMD hier bei der Treiber Installation nach dem Highlander Prinzip vorgeht, es kann nur einen (AMD Treiber) geben der alle AMD GPUs unterstützen muss. Wegen Generationsgrenzen beim offiziellen Treiber Support kann es in der Hinsicht also auch schwierig werden eine Version zu finden mit der alle GPUs laufen und OpenCL Support bieten.

Zum Abschluss noch ein kleiner Tip für jene die es mal mit einer alten VLIW 4/5 Karte mal versuchen wollen, wenn ich mich richtig erinnere hatte der Treiber den Windows 10 bei meiner alten HD2600XT selbst installierte genau das was AMD schon vor zig Jahren gestrichen hatte, OpenCL Support.
 
Ich hab's inzwischen doch mit einer 2. SSD und Win10 gelöst: Installiert, Updates (inkl. Treibern) gezogen, BOINC drauf, MW angeworfen - läuft....
 
Xubuntu 22.04.1 ausprobiert und bekomme den amdgpu für die RX560 nicht ohne Fehler installiert.
Werde wohl doch wieder für dieses System 20.04 verwenden...

Für meine alten VLIW 4/5 GPUs schwanke ich zwischen Win7 und 14.04, das ist wie zwischen Skylla und Charybdis zu wählen.
 
Ein Rembrandt-Thinkpad mit 6850U hat die RDNA2-Grafik 680M. Linux Mint 21 hat einen amdgpu-Treiber installiert. Leider wurde kein opencl aktiviert.
Die Ausgabe von clinfo sieht so aus:
~$ clinfo
Number of platforms 0
Boinc sagt das:
So 30 Okt 2022 21:31:38 CET | | Starting BOINC client version 7.18.1 for x86_64-pc-linux-gnu
So 30 Okt 2022 21:31:38 CET | | This a development version of BOINC and may not function properly
So 30 Okt 2022 21:31:38 CET | | log flags: file_xfer, sched_ops, task
So 30 Okt 2022 21:31:38 CET | | Libraries: libcurl/7.81.0 OpenSSL/3.0.2 zlib/1.2.11 brotli/1.0.9 zstd/1.4.8 libidn2/2.3.2 libpsl/0.21.0 (+libidn2/2.3.2) libssh/0.9.6/openssl/zlib nghttp2/1.43.0 librtmp/2.3 OpenLDAP/2.5.13
So 30 Okt 2022 21:31:38 CET | | Data directory: /var/lib/boinc-client
So 30 Okt 2022 21:31:44 CET | | No usable GPUs found
So 30 Okt 2022 21:31:44 CET | | libc: version 2.35
So 30 Okt 2022 21:31:44 CET | | Host name: leer
So 30 Okt 2022 21:31:44 CET | | Processor: 16 AuthenticAMD AMD Ryzen 7 PRO 6850U with Radeon Graphics [Family 25 Model 68 Stepping 1]
So 30 Okt 2022 21:31:44 CET | | 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 rapl pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 x2apic movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_llc mwaitx cpb cat_l3 cdp_l3 hw_pstate ssbd mba ibrs ibpb stibp vmmcall fsgsbase bmi1 avx2 smep bmi2 erms invpcid cqm rdt_a rdseed adx smap clflushopt clwb sha_ni xsaveopt xsavec xgetbv1 xsaves cqm_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local clzero irperf xsaveerptr rdpru wbnoinvd cppc arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic v_vmsave_vmload vgif v_spec_ctrl umip pku ospke vaes vpclmulqdq rdpid overflow_recov succor smca fsrm
So 30 Okt 2022 21:31:44 CET | | OS: Linux Linuxmint: Linux Mint 21 [5.15.0-52-generic|libc 2.35]
So 30 Okt 2022 21:31:44 CET | | Memory: 30.13 GB physical, 976.00 MB virtual
So sieht es in CPU-X aus:
1667165082218.png
amdgpu-install mit rocm scheint ja eher für die richtigen Grafikkarten zu sein.
Wie habt ihr opencl bei den APUs aktiviert?
 
Das liegt nicht an der APU, das ist ein generelles AMD Problem in Linux.
Meine 6600XT wird sogar von Boinc erkannt produziert aber nur Fehler.
Das liegt an RocM, einmal gehts beim nächsten nicht mehr.
Mit meiner alten R9 380 ist es mal für ein halbes Jahr gelaufen.
 
Meine R9 380X läuft auch unter Linux Mint 20.3 seit Anfang an un weiterhin auch in Boinc.
Hier die Ausgabe von clinfo:
Number of platforms 1
Platform Name AMD Accelerated Parallel Processing
Platform Vendor Advanced Micro Devices, Inc.
Platform Version OpenCL 2.1 AMD-APP (3180.7)
Platform Profile FULL_PROFILE
Platform Extensions cl_khr_icd cl_amd_event_callback cl_amd_offline_devices
Platform Host timer resolution 1ns
Platform Extensions function suffix AMD
und inxi -Fz Ausschnitt zu Graphics:
Graphics: Device-1: Advanced Micro Devices [AMD/ATI] Tonga XT / Amethyst XT [Radeon R9 380X / R9 M295X]
driver: amdgpu v: kernel
Display: server: X.org 1.20.13 driver: amdgpu,ati unloaded: fbdev,modesetting,vesa tty: 120x30
Message: Advanced graphics data unavailable in console. Try -G --display
Aber dass ich nun die 680M erst einmal gar nicht für Boinc nutzen können soll, ist ja schade. Warten wirs ab, was da noch kommt.
 
einmal gehts beim nächsten nicht mehr.
Sowas ist mir viel zu pauschal, um es ernst zu nehmen.

Was geht nicht mehr?
Mit welcher Distro? Wird die offiziell unterstützt?
Seit wann geht es nicht mehr, und warum (anders gesagt: Was wurde zuletzt geändert?)
Wenn du z. B. mit einer offiziell nicht unterstützten Distro unterwegs bist, ist das halt eigenes Risiko.
 
Seit dem die AMD GPUpro Treiber nicht mehr gehen, also alles nach der RX 5xx Reihe.
Distro ist egal, habe ich mit Ubuntu, Mint 20.3 und jetzt Solus getestet.
Das liegt an den ROCm Treiben.
Rocm 4.3 hat funktioniert und ab 5.0 nicht mehr.
 
Zuletzt bearbeitet:
Guck doch mal, ob koschis Beitrag #320 dir weiter hilft.
Ansonsten wird koschi wohl nach 21 Uhr hier auftauchen, wenn er die lieben Kinderlein ins Bett gebracht hat.
Es sei denn, er schläft mit den Kleinen gleich mit ein, dann ist er so um Mitternacht hier. :-)
 
Nee, der Treiber in Beitrag 320 laeuft leider nur bis GCN, Radeon VII und aelter

siehe Beitrag 399 und 400
 
Ahh Beiträge entdeckt, genau mein Problem mit der neuen AMD 7900 und Linux, funktioniert nicht.
 
@Rekrut Bin ir nicht sicher, was du konkret für ein Problem hast. Wenn es um AMD-RDNA unter neuerem Linux geht, hilft dir vielleicht mein Beitrag in einem anderen Thread:
 
Hallo,
wenn es nur um OpenCL mit ROCm geht sollte folgender Weg unter Linux Mint / Ubuntu funktionieren - jedenfalls geht es so auf meinem LM 21.1 System für Darktable:

Zunächst muss folgende zusätzliche Paketquelle eingebunden werden:
Code:
deb https://repo.radeon.com/rocm/apt/latest/ [Distributionsname; z.B. jammy] main

Anschließend werden über die Paketverwaltung die folgenden Pakete inkl. Abhängigkeiten installiert:
Code:
rocm-opencl
rocminfo

Nun muss man sich selbst noch zu zwei Gruppen hinzufügen
Code:
sudo usermod -a -G render $LOGNAME
sudo usermod -a -G video $LOGNAME

Nur für Pre-Vega Karten muss in /etc/environment die Option ROC_ENABLE_PRE_VEGA=1 gesetzt werden.

Gruß,
vnt
 
Vielen Dank an euch beide für die Rückmeldung dazu, ja es ist genauso wie vnt geschrieben hat.
Ich hatte lediglich den AMD Treiber Installiert, einmal beide OpenCL Versionen genommen, sprich rocm-opencl und einmal den offiziellen vom Treiber aus. Danach Boinc und FAH laufen lassen, die beide sofort Berechnungsfehler verursacht haben.
Ich hatte BOINC und FAH mit sudo laufen lassen, einfach um zu schauen ob das an den Rechten liegt, ich habe zwar schon ein paar über die Rechte und Gruppenverwaltung über Linux gelesen, wusste aber trotzdem noch nicht genau ab wann ich chmod, chown oder die anderen Dinge benutzen muss, oder wie ich die User oder Gruppen Anlege, oder verwalten kann, für die Programme.
Zurzeit habe ich Windows laufen, sobald ich wieder mit Linux experimentiere, probiere ich das auf jeden Fall aus.
 
Zunächst muss folgende zusätzliche Paketquelle eingebunden werden:
Code:
deb https://repo.radeon.com/rocm/apt/latest/ [Distributionsname; z.B. jammy] main
Wie würde der Befehl für Ubuntu lauten?
deb https://repo.radeon.com/rocm/apt/latest/ jammy main
ergibt bei mir nur die Fehlermeldung, dass der Befehl deb nicht gefunden wurde.
Liegt es vielleicht daran, dass Ubuntu mit PPAs arbeitet?

Beim letzten Versuch, den AMD Treiber direkt von der AMD-Seite zu installieren, wurde ein 2GB Monster heruntergeladen und installiert. Das möchte ich vermeiden, mir reicht ja OpenCL.
 
Wie würde der Befehl für Ubuntu lauten?

... für Ubuntu 22.04 sollten folgende Befehle funktionieren:
Code:
wget -O- https://repo.radeon.com/rocm/rocm.gpg.key | gpg --dearmour | sudo tee /usr/share/keyrings/radeon.gpg
echo "deb [signed-by=/usr/share/keyrings/radeon.gpg] https://repo.radeon.com/rocm/apt/latest/ jammy main" | sudo tee -a /etc/apt/sources.list.d/radeon.list

Gruß,
vnt
 
Hm, der erste Befehl ging schnell, aber der hier:
gpg --dearmour | sudo tee /usr/share/keyrings/radeon.gpg
läuft nun schon seit einigen Minuten, ohne dass ich irgendeinen Fortschritt sehe.
Edit: Ich erkenne irgendwie nicht, wo ein Befehl aufhört und der nächste anfängt. ???

inxi:
Code:
System:
  Kernel: 5.19.0-38-generic x86_64 bits: 64 Desktop: GNOME 42.5
    Distro: Ubuntu 22.04.2 LTS (Jammy Jellyfish)
Machine:
  Type: Desktop Mobo: BIOSTAR model: A320MH serial: <superuser required>
    UEFI: American Megatrends LLC. v: 5.17 date: 05/05/2022
CPU:
  Info: quad core model: AMD Ryzen 3 3200G with Radeon Vega Graphics bits: 64
    type: MCP cache: L2: 2 MiB
  Speed (MHz): avg: 2864 min/max: 1400/3600 cores: 1: 2995 2: 2424 3: 3029
    4: 3011
Graphics:
  Device-1: AMD Picasso/Raven 2 [Radeon Vega Series / Radeon Mobile Series]
    driver: amdgpu v: kernel
  Display: wayland server: X.Org v: 1.22.1.1 with: Xwayland v: 22.1.1
    compositor: gnome-shell driver: gpu: amdgpu resolution: 2560x1440~60Hz
  OpenGL: renderer: AMD Radeon Vega 8 Graphics (raven LLVM 15.0.6 DRM 3.47
  5.19.0-38-generic)
    v: 4.6 Mesa 22.2.5
Audio:
  Device-1: AMD Raven/Raven2/Fenghuang HDMI/DP Audio driver: snd_hda_intel
  Device-2: AMD Family 17h HD Audio driver: snd_hda_intel
  Sound Server-1: ALSA v: k5.19.0-38-generic running: yes
  Sound Server-2: PulseAudio v: 15.99.1 running: yes
  Sound Server-3: PipeWire v: 0.3.48 running: yes
Network:
  Device-1: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet
    driver: r8169
  IF: enp3s0 state: up speed: 1000 Mbps duplex: full mac: <filter>
Drives:
  Local Storage: total: 74.53 GiB used: 11.09 GiB (14.9%)
  ID-1: /dev/sda vendor: Intel model: SSDSA2M080G2GC size: 74.53 GiB
Partition:
  ID-1: / size: 13.92 GiB used: 11.08 GiB (79.6%) fs: ext4 dev: /dev/sda5
  ID-2: /boot/efi size: 512 MiB used: 6.1 MiB (1.2%) fs: vfat
    dev: /dev/sda3
Swap:
  ID-1: swap-1 type: file size: 675.4 MiB used: 0 KiB (0.0%) file: /swapfile
Sensors:
  System Temperatures: cpu: 45.0 C mobo: N/A gpu: amdgpu temp: 45.0 C
  Fan Speeds (RPM): N/A
Info:
  Processes: 276 Uptime: 17m Memory: 7.21 GiB used: 5.51 GiB (76.4%)
  Shell: Bash inxi: 3.3.13
 
Zuletzt bearbeitet:
Edit: Ich erkenne irgendwie nicht, wo ein Befehl aufhört und der nächste anfängt.
Du musst jeweils die komplette Zeile im Terminal einfügen:
Code:
wget -O- https://repo.radeon.com/rocm/rocm.gpg.key | gpg --dearmour | sudo tee /usr/share/keyrings/radeon.gpg
Code:
echo "deb [signed-by=/usr/share/keyrings/radeon.gpg] https://repo.radeon.com/rocm/apt/latest/ jammy main" | sudo tee -a /etc/apt/sources.list.d/radeon.list
... der | trennt jeweils die einzelnen Befehle ,,,
 
Zurück
Oben Unten