AMDGPU: Unterschied zwischen den Versionen

Aus wiki.archlinux.de
Truemmerer (Diskussion | Beiträge)
LADEN hinzugefügt
Vfio experte (Diskussion | Beiträge)
K Copy right gefix 1
 
(45 dazwischenliegende Versionen von 4 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
{{inuse|Truemmerer}}
{{Unvollständig}}
{{Unvollständig}}
{{righttoc}}


amdgpu ist der neueste Open Source Grafik Treiber für die neuesten AMD Radeon Grafik Karten.
''A**GPU'' ist der neueste Open Source Grafik Treiber für die neuesten A** R*d*on Grafik Karten ab [https://www.x.org/wiki/RadeonFeature/ Volcanic Islands (VI) und neuer] ''(G** 1)''.


Auf dem [https://wiki.archlinux.de/title/ATI ATI Artikel] wird die Unterstützung älterer Grafikkarten beschrieben.
In dem [https://wiki.archlinux.de/title/ATI A** Artikel] wird die Unterstützung älterer Grafikkarten beschrieben.


{{installation
{{installation
Zeile 14: Zeile 14:
{{achtung|Falls vorhanden sollte der Catalyst Treiber zuerst deinstalliert werden}}
{{achtung|Falls vorhanden sollte der Catalyst Treiber zuerst deinstalliert werden}}


* Installiere das {{Paket|mesa}} Paket, welches den DRI Treiber für 3D Beschleunigung.
* Installiere das {{Paket|mesa}} Paket, welches den DRI Treiber für 3D Beschleunigung enthält.


* Für 32-bit Unterstützung, installiere auch das Paket {{Paket|lib32-mesa}} vom multilib Repository.
* Für 32-bit Unterstützung, installiere auch das Paket {{Paket|lib32-mesa}} vom multilib Repository.
Zeile 20: Zeile 20:
* Für Vulkan Unterstützung installiere {{Paket|vulkan-radeon}}. Optional installiere noch {{Paket|lib32-vulkan-radeon}} für 32-bit Support.
* Für Vulkan Unterstützung installiere {{Paket|vulkan-radeon}}. Optional installiere noch {{Paket|lib32-vulkan-radeon}} für 32-bit Support.


* Für die Unterstützung für Videobeschleunigung benötigt man {{Paket|libva-mesa-driver}} und {{Paket|lib32-libva-mesa-driver}} oder {{Paket|libva-vdpau-driver}} für VA-API sowie {{Paket|mesa-vdpau}} und {{Paket|lib32-mesa-vdpau}} Pakete für VDPAU.
* Für die Unterstützung von Videobeschleunigung benötigt man {{Paket|libva-mesa-driver}} und {{Paket|lib32-libva-mesa-driver}} oder {{Paket|libva-vdpau-driver}} für VA-API sowie {{Paket|mesa-vdpau}} und {{Paket|lib32-mesa-vdpau}} Pakete für VDPAU.


=== A**GPU-Pro :stand 8.Feb.2019 ===
{{achtung|Arch Linux wird offiziell nicht unterstützt.}}
'''Hinweis:'''
* '''Um die proprietären OpenCL Komponente von A**GPU PRO zu nutzen installiere {{AUR|opencl-amd}} stattdessen.'''
* '''Ein Downgrade auf {{Paket|linux}} 4.9 sowie Xorg 1.1 wird für A**GPU PRO 17.10 gebraucht.'''
Der A**GPU Pro Treiber ist der proprietäre Treiber von A** der auf den Open Source Treiber auf baut.
Manchmal kann er zu einer besseren Performance führen.


=== Laden ===
Im AUR gibt es eine gepatchte Version: {{AUR|amdgpu-pro}}.
 
=== Aktiviere den Support für Southern Islands (SI) und Sea Islands (CIK)  :stand 8.Feb.2019 ===
 
Das {{Paket|linux}} Paket kann die Unterstützung von A**GPU für Southern Islands (SI) und Sea Islands (CIK) Karten wenn beim bauen des Kernels {{ic|CONFIG_DRM_AMDGPU_SI{{=}}Y}} und/oder {{ic|CONFIG_DRM_AMDGPU_CIK{{=}}Y}} in der Konfiguration gesetzt wird.
 
Dazu muss damit nicht automatisch der {{ic|radeon}} Treiber geladen wird {{ic|amdgpu}} in [https://wiki.archlinux.de/title/Mkinitcpio Mkinitcpio] an erster Stelle eingetragen werden: {{ic|MODULES{{=}}(amdgpu radeon)}}
 
==== Setze benötigte Modul Parameter  :stand 8.Feb.2019 ====
 
Für die volle Unterstützung von SI/CK Karten mit {{ic|amdgpu}}, müssen die folgenden Kernel Parameter gesetzt werden:
*  Southern Islands (SI): {{ic|radeon.si_support{{=}}0 amdgpu.si_support{{=}}1}}
*  Sea Islands (CIK): {{ic|radeon.cik_support{{=}}0 amdgpu.cik_support{{=}}1}}
 
=== A** DC  :stand 8.Feb.2019 ===
Der A** '''D'''isplay '''C'''ode ist ein neuer Display Stack welcher Unterstützung für {{ic|atomic mode-settig}} sowie {{ic|HDMI/DP}} Ton mit bringt.
 
Wenn man eine Karte mit ''G** 1.1'' oder neuer hat kann man den Display Code mit folgenden Kernel Parameter setzen: {{ic|amdgpu.dc{{=}}1}}
 
=== Laden :stand 8.Feb.2019 ===


Das {{ic|amdgpu}} Kernel Modul sollte automatisch beim Systemstart starten.
Das {{ic|amdgpu}} Kernel Modul sollte automatisch beim Systemstart starten.
Zeile 32: Zeile 58:
* Stelle sicher das das neueste {{Paket|linux-firmware}} Paket installiert ist.  
* Stelle sicher das das neueste {{Paket|linux-firmware}} Paket installiert ist.  


* Vergewissere dich das du nicht {{ic|nomodeset}} oder {{ic|vga{{=}}}} als Kernel Parameter festgelegt hast, den amdgpu benötigt KMS.
* Vergewissere dich das du '''nicht''' {{ic|nomodeset}} oder {{ic|vga{{=}}}} als Kernel Parameter festgelegt hast, denn amdgpu benötigt KMS.


* Überprüfe ob du amdgpu nicht auf der Blacklist der Kernel Module gesetzt hast.
* Überprüfe ob du amdgpu nicht auf der Blacklist der Kernel Module gesetzt hast.


====Frühes Aktivieren von KMS  :stand 8.Feb.2019 ====
Damit die Bildschirmauflösung möglichst früh gesetzt werden kann, müssen die dazu nötigen Module und Dateien dem initramfs-Image hinzugefügt werden. Dazu muss in der Datei ''/etc/mkinitcpio.conf'' die Zeile ''MODULES'' geändert werden:
MODULES=(amdgpu)
Anschliessend muss noch das Image neu erstellt werden.
mkinitcpio -p linux
=== Xorg Konfiguration  :stand 8.Feb.2019 ===
Xorg sollte automatisch den Treiber laden und die richtige Auflösung aus der Monitor EDID setzen. Eine Konfiguration ist nur von Nöten wenn man den Treiber tunen möchte.
Wenn man manuell konfigurieren möchte erstelle {{ic|/etc/X11/xorg.conf.d/20-amdgpu.conf}}, und füge folgendes ein:
{{hc|/etc/X11/xorg.conf.d/20-amdgpu.conf|2=
Section "Device"
    Identifier "AMD"
    Driver "amdgpu"
EndSection
}}
Hier kann man weitere Funktionen und Einstellungen für den Treiber hinzufügen.
== Performance Tuning ==
=== Aktiviere Video Beschleunigung  :stand 8.Feb.2019 ===
Siehe [https://wiki.archlinux.org/index.php/Hardware_video_acceleration Hardware video acceleration] {{Sprache|en}}
=== Treiber Optionen  :stand 8.Feb.2019 ===
{{hinweis| Bitte Lese zuerst [https://jlk.fjfi.cvut.cz/arch/manpages/man/amdgpu.4 amdgpu.4] bevor du Änderungen durchführst.}}
Die folgenden Optionen können in {{ic|/etc/X11/xorg.conf.d/20-amdgpu.conf}} hinzugefügt werden.
* '''DRI''' setzt die maximale DRI Stufe fest die aktiviert werden soll. Es steht ''2'' für ''DRI2'' oder ''3'' für ''DRI3'' zur Verfügung.
Standartmäßig ist seit der ''Xorg Version 1.18.3'' ''DRI3'' aktiviert, will man dies ändern geht das mit:
Option "DRI" "2"
* '''TearFree'''
=== R*d*on Profile  :stand 8.Feb.2019 ===
Die Grafische Anwendung sowie der Dämon [https://github.com/marazmista/radeon-profile radeon-profile] {{sprache|en}} helfen bei der Energie- und Performance Verwaltung.
Dies kann mit {{AUR|radeon-profile-git}} sowie {{AUR|radeon-profile-daemon-git}} installiert werden.
Der Dämon kann mit {{ic|systemctl enable radeon-profile-daemon.service}} sowie {{ic|systemctl start radeon-profile-daemon.service}} aktiviert werden.
===Strallung Verfolgung Brechnung :stand 19.Dec.2022===
Alte Gpu ohne R*-Rechen Einheiten von ** 5** bis G**10 (Experimentell):
{{achtung|Die Feature ist Experimentell und kann zu Instabilität führen. Benutzung auf eigne Gefahr.}}
RADV_PERFTEST=emulate_rt,rt
gpu G**11 oder höher mit R*-Rechen Einheiten:
RADV_PERFTEST=rtwave64
===Intelligenter GPU Speicher zugriff :stand 19.Dec.2022===
Intelligenter GPU Speicher zugriff wo den gesamten ram der gpu für die cpu direkt zur Verfügung stellt.
RADV_PERFTEST=sam
===Quellen===
{{Paket|mesa}} 22.3.1 src code file /src/amd/vulkan/radv_device.c Stand 19.12.2022


[[Kategorie:Hardware]]
[[Kategorie:Hardware]]

Aktuelle Version vom 23. Dezember 2022, 01:14 Uhr

Dieser Artikel oder Artikelabschnitt ist noch nicht vollständig!


A**GPU ist der neueste Open Source Grafik Treiber für die neuesten A** R*d*on Grafik Karten ab Volcanic Islands (VI) und neuer (G** 1).

In dem A** Artikel wird die Unterstützung älterer Grafikkarten beschrieben.

Installation

AMDGPU ist als xf86-video-amdgpu in extra verfügbar, und kann von dort mittels Pacman installiert werden.

pacman -S xf86-video-amdgpu

Achtung: Falls vorhanden sollte der Catalyst Treiber zuerst deinstalliert werden


  • Installiere das mesa Paket, welches den DRI Treiber für 3D Beschleunigung enthält.
  • Für 32-bit Unterstützung, installiere auch das Paket lib32-mesa vom multilib Repository.

A**GPU-Pro :stand 8.Feb.2019

Achtung: Arch Linux wird offiziell nicht unterstützt.

Hinweis:
* Um die proprietären OpenCL Komponente von A**GPU PRO zu nutzen installiere opencl-amdAUR stattdessen.
* Ein Downgrade auf linux 4.9 sowie Xorg 1.1 wird für A**GPU PRO 17.10 gebraucht.

Der A**GPU Pro Treiber ist der proprietäre Treiber von A** der auf den Open Source Treiber auf baut. Manchmal kann er zu einer besseren Performance führen.

Im AUR gibt es eine gepatchte Version: amdgpu-proAUR.

Aktiviere den Support für Southern Islands (SI) und Sea Islands (CIK) :stand 8.Feb.2019

Das linux Paket kann die Unterstützung von A**GPU für Southern Islands (SI) und Sea Islands (CIK) Karten wenn beim bauen des Kernels CONFIG_DRM_AMDGPU_SI=Y und/oder CONFIG_DRM_AMDGPU_CIK=Y in der Konfiguration gesetzt wird.

Dazu muss damit nicht automatisch der radeon Treiber geladen wird amdgpu in Mkinitcpio an erster Stelle eingetragen werden: MODULES=(amdgpu radeon)

Setze benötigte Modul Parameter :stand 8.Feb.2019

Für die volle Unterstützung von SI/CK Karten mit amdgpu, müssen die folgenden Kernel Parameter gesetzt werden:

  • Southern Islands (SI): radeon.si_support=0 amdgpu.si_support=1
  • Sea Islands (CIK): radeon.cik_support=0 amdgpu.cik_support=1

A** DC :stand 8.Feb.2019

Der A** Display Code ist ein neuer Display Stack welcher Unterstützung für atomic mode-settig sowie HDMI/DP Ton mit bringt.

Wenn man eine Karte mit G** 1.1 oder neuer hat kann man den Display Code mit folgenden Kernel Parameter setzen: amdgpu.dc=1

Laden :stand 8.Feb.2019

Das amdgpu Kernel Modul sollte automatisch beim Systemstart starten. Sollte dies nicht geschehen:

  • Stelle sicher das Enable Southern Islands (SI) und Sea Islands (CIK) Unterstützung aktiv ist falls gebraucht.
  • Vergewissere dich das du nicht nomodeset oder vga= als Kernel Parameter festgelegt hast, denn amdgpu benötigt KMS.
  • Überprüfe ob du amdgpu nicht auf der Blacklist der Kernel Module gesetzt hast.

Frühes Aktivieren von KMS :stand 8.Feb.2019

Damit die Bildschirmauflösung möglichst früh gesetzt werden kann, müssen die dazu nötigen Module und Dateien dem initramfs-Image hinzugefügt werden. Dazu muss in der Datei /etc/mkinitcpio.conf die Zeile MODULES geändert werden:

MODULES=(amdgpu)

Anschliessend muss noch das Image neu erstellt werden.

mkinitcpio -p linux

Xorg Konfiguration :stand 8.Feb.2019

Xorg sollte automatisch den Treiber laden und die richtige Auflösung aus der Monitor EDID setzen. Eine Konfiguration ist nur von Nöten wenn man den Treiber tunen möchte. Wenn man manuell konfigurieren möchte erstelle /etc/X11/xorg.conf.d/20-amdgpu.conf, und füge folgendes ein:

/etc/X11/xorg.conf.d/20-amdgpu.conf
Section "Device"
     Identifier "AMD"
     Driver "amdgpu"
 EndSection

Hier kann man weitere Funktionen und Einstellungen für den Treiber hinzufügen.

Performance Tuning

Aktiviere Video Beschleunigung :stand 8.Feb.2019

Siehe Hardware video acceleration

Treiber Optionen :stand 8.Feb.2019

Hinweis: Bitte Lese zuerst amdgpu.4 bevor du Änderungen durchführst.

Die folgenden Optionen können in /etc/X11/xorg.conf.d/20-amdgpu.conf hinzugefügt werden.

  • DRI setzt die maximale DRI Stufe fest die aktiviert werden soll. Es steht 2 für DRI2 oder 3 für DRI3 zur Verfügung.

Standartmäßig ist seit der Xorg Version 1.18.3 DRI3 aktiviert, will man dies ändern geht das mit:

Option "DRI" "2"
  • TearFree

R*d*on Profile :stand 8.Feb.2019

Die Grafische Anwendung sowie der Dämon radeon-profile helfen bei der Energie- und Performance Verwaltung.

Dies kann mit radeon-profile-gitAUR sowie radeon-profile-daemon-gitAUR installiert werden. Der Dämon kann mit systemctl enable radeon-profile-daemon.service sowie systemctl start radeon-profile-daemon.service aktiviert werden.


Strallung Verfolgung Brechnung :stand 19.Dec.2022

Alte Gpu ohne R*-Rechen Einheiten von ** 5** bis G**10 (Experimentell):

Achtung: Die Feature ist Experimentell und kann zu Instabilität führen. Benutzung auf eigne Gefahr.


RADV_PERFTEST=emulate_rt,rt

gpu G**11 oder höher mit R*-Rechen Einheiten:

RADV_PERFTEST=rtwave64

Intelligenter GPU Speicher zugriff :stand 19.Dec.2022

Intelligenter GPU Speicher zugriff wo den gesamten ram der gpu für die cpu direkt zur Verfügung stellt.

RADV_PERFTEST=sam

Quellen

mesa 22.3.1 src code file /src/amd/vulkan/radv_device.c Stand 19.12.2022