Ubuntu 18.04.2 LTS und AMD Open Source Treiber "konfigurieren"?

Soll "#Fan Control Matrix. [<Temp in C>,<Fanspeed in %>]" bleiben oder kann es auch gelöscht werden?

Edit: gespeichert und Dienst gestartet, "sudo amdgpu-fan", aber die Lüfter drehen sich noch immer.
 

Anhänge

  • Bildschirmfoto vom 2019-05-27 13-58-45.png
    Bildschirmfoto vom 2019-05-27 13-58-45.png
    47,3 KB · Aufrufe: 388
  • Bildschirmfoto vom 2019-05-27 14-11-23.png
    Bildschirmfoto vom 2019-05-27 14-11-23.png
    30,2 KB · Aufrufe: 377
Zuletzt bearbeitet:
okay ...
erhöhe mal die Temperatur beim zweiten Wert auf 60 und beim dritten auf 65

alles was eine # oder ein ; davor hat ist auskommentiert.
 
Lüfter dreht sich noch immer. Wenn ich die Grafikkarte anfasse, merke ich einen kleinen Schwung vom Lüfter.

Ich hab mal Sensors installiert und die Temperatur gemessen (Siehe Screenshot). Vllt. bringt dir ja die Angabe etwas - anbei zum Vergleich ein Screenshot der Lüfter unter Windows. Konnte Firefox mit Hardwareunterstützung benutzen, ein kleines Spiel spielen und Spotify nutzen - Keine Bewegung der Lüfter
 

Anhänge

  • Bildschirmfoto von 2019-05-27 18-29-13.png
    Bildschirmfoto von 2019-05-27 18-29-13.png
    41,5 KB · Aufrufe: 362
  • Bildschirmfoto vom 2019-05-27 18-34-20.png
    Bildschirmfoto vom 2019-05-27 18-34-20.png
    104 KB · Aufrufe: 366
  • 01_2019.05.27-12.56_01.png
    01_2019.05.27-12.56_01.png
    504,7 KB · Aufrufe: 371
  • Bildschirmfoto von 2019-05-27 18-51-47.png
    Bildschirmfoto von 2019-05-27 18-51-47.png
    63,2 KB · Aufrufe: 361
Unter Linux hast Du im Firefox keine gardwarebeschleunigten Videos. Das geht im Augenblick nur mit Chromium-vaapi (aus dem rpmfusion repo bei Fedora)
Aber das ist jetzt nicht Dein Problem.
Ich boote nachher mein Fedora und schicke Dir ein paar "Befehle" mit denen Du die GPU-Temperatur zuverlässig auslesen kannst.
Ergänzung ()

watch -n 0.5 cat /sys/kernel/debug/dri/0/amdgpu_pm_info
(ggf. als root)
bitte das Terminal maximieren, sonst siehst Du nchit alles ...
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: Hunky
bitte
 

Anhänge

  • Bildschirmfoto von 2019-05-27 19-34-18.png
    Bildschirmfoto von 2019-05-27 19-34-18.png
    129 KB · Aufrufe: 380
Hab mal das Resident Evil 2 Remake angeschmissen und die Sensoren geprüft:

Lüfter drehen auf - war aber unter Windows genauso.

Edit: Wenn ich Steam/Resi2 beende:

amdgpu-pci-0100
Adapter: PCI adapter
vddgfx: +0.82 V
fan1: 692 RPM (min = 0 RPM, max = 3200 RPM)
temp1: +30.0°C (crit = +94.0°C, hyst = -273.1°C)
power1: 36.08 W (cap = 135.00 W)
 

Anhänge

  • Bildschirmfoto von 2019-05-27 20-12-10.png
    Bildschirmfoto von 2019-05-27 20-12-10.png
    145,7 KB · Aufrufe: 363
  • Bildschirmfoto von 2019-05-27 20-10-36.png
    Bildschirmfoto von 2019-05-27 20-10-36.png
    128,9 KB · Aufrufe: 368
  • Bildschirmfoto von 2019-05-27 20-10-33.png
    Bildschirmfoto von 2019-05-27 20-10-33.png
    1,1 MB · Aufrufe: 373
Zuletzt bearbeitet:
Keine Idee mehr?
 
Kannst du mal folgende Befehle ausführen und schauen, ob sich etwas an der Lüfterdrehzahl ändert?
Der erste schaltet die manuelle Kontrolle der Lüfter-PWM frei, der zweite schreibt den PWM-Wert in den Treiber. Das heißt, du kannst von "echo 5" die 5 auch beliebig ändern und schauen, was passiert. Die "hwmon5" entsprechend dahin verändern, wo deine Karte zugewiesen ist.
Falls es klappt, ist der Wert aber erst einmal fest eingestellt. Du musst neu starten, damit wieder eine Regelung läuft.

Code:
echo 1 > /sys/class/drm/card0/device/hwmon/hwmon5/pwm1_enable

echo 5 > /sys/class/drm/card0/device/hwmon/hwmon5/pwm1
 
  • Gefällt mir
Reaktionen: Hunky
Werde ich mal später probieren.
 
BillTür schrieb:
Kannst du mal folgende Befehle ausführen und schauen, ob sich etwas an der Lüfterdrehzahl ändert?
Der erste schaltet die manuelle Kontrolle der Lüfter-PWM frei, der zweite schreibt den PWM-Wert in den Treiber. Das heißt, du kannst von "echo 5" die 5 auch beliebig ändern und schauen, was passiert. Die "hwmon5" entsprechend dahin verändern, wo deine Karte zugewiesen ist.
Falls es klappt, ist der Wert aber erst einmal fest eingestellt. Du musst neu starten, damit wieder eine Regelung läuft.

Code:
echo 1 > /sys/class/drm/card0/device/hwmon/hwmon5/pwm1_enable

echo 5 > /sys/class/drm/card0/device/hwmon/hwmon5/pwm1

Hwmon5 war nicht vorhanden, aber Hwmon0. Habe den Pfad per Terminal angepasst und der Lüfter steht.
 

Anhänge

  • Bildschirmfoto vom 2019-06-05 08-24-14.png
    Bildschirmfoto vom 2019-06-05 08-24-14.png
    13,2 KB · Aufrufe: 367
  • Bildschirmfoto von 2019-06-05 08-27-14.png
    Bildschirmfoto von 2019-06-05 08-27-14.png
    65,6 KB · Aufrufe: 370
Gut, das heißt, dass die manuelle Lüftersteuerung prinzipiell funktioniert.
Wenn du statt "echo 5" "echo 90" schreibst, dreht der Lüfter dann hörbar auf?

Falls das auch funktioniert:
Auf der Hwmon-Basis hatte ich mal ein Skript zur Lüftersteuerung erstellt. Falls du Interesse hast, poste ich das heute Abend. Dann kannst du die Lüfter automatisch steuern lassen. Dein Linux benutzt systemd, oder?
 
Bilder sagen mehr als 1000 Worte:

Linux Fan-Auslastung: Normal, 100% und 0%:

Zum Vergleich unter Windows 7:

Ja, Fedora, neuste Version.
 
Okay, super, dann dürfte mein Skript auch bei dir funktionieren. Ich versuche, es so genau wie möglich zu beschreiben:

Als erstes einen Ordner und darin das Skript anlegen:
Code:
sudo mkdir /opt/radeon_fanctl
sudo nano /opt/radeon_fanctl/radeon_fanctl.sh
Dann folgenden Code reinkopieren:
Code:
#!/bin/bash

#Enable manual PWM control
echo 1 > /sys/class/drm/card0/device/hwmon/hwmon0/pwm1_enable

TEMP_IDLE=52
TEMP_LOW=56
TEMP_MID=66
TEMP_HIGH=72
TEMP_DELTA=5
FACTOR=1000
FACTOR2=10000
FACTOR_PWM1=16
FACTOR_PWM2=13
FACTOR_PWM3=14
PWM_IDLE=1

while true
do
   TEMP=$(/usr/bin/cat /sys/class/drm/card0/device/hwmon/hwmon0/temp1_input)
   PWM_FACT1=$(($TEMP*$FACTOR_PWM1))
   PWM_FACT1=$(($PWM_FACT1/$FACTOR2))
   PWM_FACT2=$(($TEMP*$FACTOR_PWM2))
   PWM_FACT2=$(($PWM_FACT2/$FACTOR2))
   PWM_FACT3=$(($TEMP*$FACTOR_PWM3))
   PWM_FACT3=$(($PWM_FACT3/$FACTOR2))
   TEMP=$(($TEMP/$FACTOR))

   if [ $TEMP -gt $TEMP_HIGH ]
   then
      echo $PWM_FACT1 > /sys/class/drm/card0/device/hwmon/hwmon0/pwm1
   else
      if [ $TEMP -gt $TEMP_MID ] && [ $TEMP -lt $(($TEMP_HIGH-$TEMP_DELTA)) ]
      then
         echo $PWM_FACT3 > /sys/class/drm/card0/device/hwmon/hwmon0/pwm1
      else
         if [ $TEMP -gt $TEMP_LOW ] && [ $TEMP -lt $(($TEMP_MID-$TEMP_DELTA)) ]
         then
            echo $PWM_FACT2 > /sys/class/drm/card0/device/hwmon/hwmon0/pwm1
         else
            if [ $TEMP -lt $TEMP_IDLE ]
            then
               echo $PWM_IDLE > /sys/class/drm/card0/device/hwmon/hwmon0/pwm1
            fi
         fi
      fi
    fi
   sleep 3
done
Danach nano mit STRG+X schließen und mit Y bestätigen und Enter drücken damit es gespeichert wird.

Anschließend die Datei ausführbar machen:
Code:
sudo chmod +x /opt/radeon_fanctl/radeon_fanctl.sh

Da das Skript von alleine im Hintergrund laufen und automatisch gestartet werden soll, müssen wir noch einen Systemd-Service anlegen. Dazu folgendes ausführen:
Code:
sudo nano /etc/systemd/system/radeon_fanctl.service
Anschließend folgenden Code einfügen:
Code:
[Unit]
Description=Run fan control for Radeon card

[Service]
Type=simple
ExecStartPre=/bin/sleep 8
ExecStart=/opt/radeon_fanctl/radeon_fanctl.sh
[Install]
WantedBy=multi-user.target
Wie gehabt, mit STRG+X beenden, mit Y und anschließend Enter das Speichern bestätigen.

Als letztes noch Systemd sagen, dass der Service bei jedem Start geladen werden soll:
Code:
sudo systemctl enable radeon_fanctl.service


Noch ein paar Hinweise zum Skript:
Das Skript hat mehrere Variablen, die du nach deinem Belieben einstellen kannst:
TEMP_IDLE: Unterhalb der Temperatur wird PWM_IDLE angewandt, das ist die niedrigste Lüfterdrehzahl. Für dich habe ich "1" für zero fan eingestellt.
TEMP_LOW, TEMP_MID und TEMP_HIGH: Das sind die Schwellen, oberhalb denen die Steilheit der Lüfterkurve geändert wird.
Die Steilheit steckt in den Variablen FACTOR_PWM1 bis FACTOR_PWM3. Die Temperatur wird mit dem Faktor multipliziert, was den PWM-Wert, der angelegt wird, ergibt.
TEMP_DELTA: Das ist die Hysterese, damit die Lüfterdrehzahl nicht springt, wenn die Temperatur zwischen zwei Schwellen toggelt.
Beachte, dass TEMP_LOW, TEMP_MID und TEMP_HIGH sich mindestens um TEMP_DELTA +1 untescheiden müssen.
FACTOR und FACTOR2 sind nur da, um die Temperatur und das Produkt aus Temperatur und PWM-Faktor zu normieren, da der gelesene Temperaturwert um Faktor 1000 zu groß ist.

Falls noch etwas unklar ist, einfach fragen.
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: Y-Chromosome und Hunky
Wahnsinn, danke! Ich werde es mal morgen ausprobieren.
 
Habe mir einmal erlaubt Dein script zu testen.
Bei meiner Karte funktioniert es einwandfrei.
Das einzige, was Du noch hinzufügen musst ist, dass der Ordner /opt/radeon_fanctl noch angelegt werden muss.
mkdir /opt/radeon_fanctl
 
  • Gefällt mir
Reaktionen: Hunky
Super Arbeit! Funktioniert alles.

Fedora Start:


Im Spiel mit und ohne Belastung:


Das Script sollte man im Vesa Treiber einpflegen (bei AMD-Karten mit Silent Mode).

Edit:
Unter Windows springen die Lüfter bei 53c an. Also gut kalkuliert :)
 
Hunky schrieb:

Y-Chromosome schrieb:
probier doch mal das hier aus:
https://github.com/Vagr9K/amdgpu-zerodb

Das ist wohl für Archlinux, aber in der pkgbuild Datei steht drin, wohin die Dateien müssen ...

cp amdgpu-zerodb.py /usr/bin/amdgpu-zerodb
danach
chmod +x /usr/bin/amdgpu-zerodb
(nur zur Sicherheit)

cp amdgpu-zerodb.conf /etc/

cp amdgpu-zerodb.service /usr/lib/systemd/system/

nun um den Dienst zu starten:
systemctl start amdgpu-zerodb.service
wenn die Karte nun leise ist, und der Lüfter unter Last anspringt, dann kannst Du den Dienst beim Hochfahren anschalten:
systemctl enable amdgpu-zerodb.service

Es kann sein, dass sich selinux unter Fedora meldet. wenn es das tut, erlaube der Anwendung bitte den Zugriff. (es sollte unter Gnome ein Programm aufploppen)
Ich ziehe den Thread aus der Versenkung: Habe jetzt Linux Mint installiert, und würde gerne den Zero Fan Modus nutzen, wie damals bei Fedora. Sind die Befehle gleich, oder muss ich was ändern?
 

Anhänge

  • Bildschirmfoto vom 2021-02-21 09-39-39.png
    Bildschirmfoto vom 2021-02-21 09-39-39.png
    47 KB · Aufrufe: 251
  • Bildschirmfoto vom 2021-02-21 09-44-48.png
    Bildschirmfoto vom 2021-02-21 09-44-48.png
    48,1 KB · Aufrufe: 252

Ähnliche Themen

Zurück
Oben