Die Grafikkarte (GPU) ist das Herzstück vieler moderner Computersysteme, insbesondere wenn es um Gaming, Videobearbeitung, 3D-Rendering oder maschinelles Lernen geht. Sie erzeugt oft beträchtliche Wärme, die effizient abgeführt werden muss, um eine optimale Leistung und eine lange Lebensdauer zu gewährleisten. Eine weit verbreitete Funktion moderner Grafikkarten ist der sogenannte 0RPM-Modus (auch als Zero-Fan-Modus oder Semi-Passiv-Modus bekannt). Dieser Modus, der darauf abzielt, Ihren PC bei geringer Auslastung flüsterleise zu halten, indem die Lüfter der GPU vollständig zum Stillstand kommen, sobald eine bestimmte Temperaturschwelle unterschritten wird, kann unter bestimmten Umständen jedoch unerwünscht sein.
Während der 0RPM-Modus auf den ersten Blick eine geniale Lösung für lärmempfindliche Nutzer darstellt, kann er in spezifischen Anwendungsfällen oder bei bestimmten Hardware-Konfigurationen zu Problemen führen. Dieser Artikel taucht tief in die Welt der GPU-Kühlung unter Linux ein und zeigt Ihnen detailliert, wie Sie den 0RPM-Modus gezielt deaktivieren können, um die Kontrolle über die Lüfter Ihrer Grafikkarte zurückzugewinnen und so für eine konstante Kühlung und potenziell verbesserte Systemstabilität zu sorgen.
Was ist der 0RPM-Modus und warum ist er problematisch?
Der 0RPM-Modus ist eine intelligente Funktion, die von GPU-Herstellern implementiert wurde, um den Geräuschpegel eines Computers zu minimieren. Wenn Ihre Grafikkarte nicht unter Last steht – also beispielsweise beim Surfen im Internet, bei Textverarbeitung oder dem Ansehen von Videos – bleiben die Lüfter vollständig ausgeschaltet. Erst wenn die GPU eine vordefinierte Temperaturschwelle (oft zwischen 50°C und 60°C) überschreitet, beginnen die Lüfter sich zu drehen, um die Temperatur wieder zu senken.
Das Konzept klingt hervorragend: Ein leiserer PC im Leerlauf. Doch dieser Komfort hat auch seine Schattenseiten. Der Hauptnachteil ist, dass die GPU-Temperaturen im Leerlauf ohne rotierende Lüfter deutlich höher sind, als sie sein müssten. Während diese Temperaturen im „grünen Bereich” liegen und innerhalb der Spezifikationen des Herstellers sind, können sie dennoch die Gesamtlebensdauer der Komponenten beeinträchtigen. Dauerhaft höhere Temperaturen können zu einem beschleunigten Verschleiß der Komponenten führen und die langfristige Zuverlässigkeit mindern.
Ein weiteres Problem tritt auf, wenn die GPU plötzlich unter Last gerät. Beispielsweise starten Sie ein ressourcenintensives Spiel, eine KI-Anwendung oder einen Rendering-Job. Die Temperatur der GPU schießt dann schnell in die Höhe, bis die Lüfter endlich anspringen müssen, oft mit einer hohen Drehzahl, um die Hitze schnell abzuführen. Diese abrupten Temperaturschwankungen und das plötzliche Anlaufen der Lüfter können nicht nur irritierend sein, sondern auch zu einer inkonsistenten Leistung oder im schlimmsten Fall zu einem „Thermal Throttling“ (Leistungsdrosselung aufgrund von Überhitzung) führen, bevor die Lüfter ihre volle Wirkung entfalten. Für Anwender, die eine durchweg kühle und stabile GPU-Temperatur bevorzugen, insbesondere für Workloads, die zwischen Leerlauf und Last schnell wechseln, ist eine konstante minimale Lüfterdrehzahl oft die bessere Wahl.
Die Herausforderung unter Linux: Direkte Lüftersteuerung
Unter Windows bieten Grafikkartenhersteller oft eigene Software-Suiten wie AMD Adrenalin oder NVIDIA GeForce Experience an, die eine detaillierte Lüftersteuerung, inklusive der Deaktivierung des 0RPM-Modus, ermöglichen. Unter Linux ist die Situation jedoch etwas komplexer. Diese proprietären Tools existieren in der Regel nicht oder bieten nicht den gleichen Funktionsumfang. Dies zwingt Linux-Nutzer dazu, auf Open-Source-Treiber, Kommandozeilentools oder generische Systemfunktionen zurückzugreifen, um die Kontrolle über ihre GPU-Lüfter zu erlangen. Glücklicherweise gibt es leistungsfähige Methoden, um dieses Ziel zu erreichen, sowohl für NVIDIA– als auch für AMD-Grafikkarten.
NVIDIA GPUs: Kontrolle über „nvidia-settings“ und CoolBits
Für Nutzer von NVIDIA-Grafikkarten ist der proprietäre NVIDIA-Treiber der Schlüssel zur Lüftersteuerung. Das zentrale Tool hierfür ist nvidia-settings
.
Schritt 1: CoolBits aktivieren
Um die manuelle Lüftersteuerung in nvidia-settings
freizuschalten, müssen Sie die CoolBits
-Option in Ihrer Xorg-Konfiguration aktivieren. Dies geschieht durch Hinzufügen einer spezifischen Option zur Gerätesektion Ihrer xorg.conf
.
Öffnen Sie eine Terminal und bearbeiten Sie die Datei /etc/X11/xorg.conf
oder eine entsprechende Konfigurationsdatei im Ordner /etc/X11/xorg.conf.d/
. Wenn Sie keine solche Datei haben, können Sie sie erstellen oder den NVIDIA-Treiber bitten, eine zu generieren (sudo nvidia-xconfig
).
Suchen Sie den Abschnitt, der Ihrer Grafikkarte entspricht (Section "Device"
), und fügen Sie dort die Zeile Option "Coolbits" "4"
oder Option "Coolbits" "12"
hinzu.
CoolBits "4"
ermöglicht die manuelle Lüftersteuerung. CoolBits "8"
ermöglicht Overclocking-Optionen (Vorsicht!). Um beides zu aktivieren, verwenden Sie "12"
(4+8). Für unser Ziel, die Lüftersteuerung, ist "4"
ausreichend.
Ein Beispielausschnitt könnte so aussehen:
„`
Section „Device”
Identifier „Video Card0”
Driver „nvidia”
VendorName „NVIDIA Corporation”
Option „Coolbits” „4”
EndSection
„`
Nachdem Sie diese Änderung vorgenommen haben, müssen Sie Ihr System neu starten (oder mindestens den X-Server neu starten, was oft einfacher mit einem Systemneustart gelöst wird), damit die Änderung wirksam wird.
Schritt 2: Manuelle Lüftersteuerung über nvidia-settings
Nach dem Neustart öffnen Sie nvidia-settings
(entweder über das Anwendungsmenü oder per Terminal mit nvidia-settings
). Navigieren Sie zu dem Bereich, der Ihre GPU anzeigt. Sie sollten nun eine Option namens „Thermal Settings” oder „Fan Control” sehen. Hier finden Sie einen Schieberegler oder Eingabefelder, um die Lüfterdrehzahl in Prozent einzustellen.
* Suchen Sie die Option „Enable GPU Fan Settings”. Aktivieren Sie diese.
* Stellen Sie den Schieberegler „Fan Speed (Percent)” auf einen gewünschten Wert ein, z.B. 30% oder 40%. Experimentieren Sie hier, um ein gutes Gleichgewicht zwischen Kühlung und Geräuschpegel zu finden. Oft sind 20-30% im Leerlauf ein guter Startpunkt.
Schritt 3: Einstellungen dauerhaft speichern
Die in nvidia-settings
vorgenommenen Änderungen sind standardmäßig nicht dauerhaft und werden nach einem Neustart des Systems oder des X-Servers zurückgesetzt. Um sie beizubehalten, können Sie die Einstellung in einer Skriptdatei speichern, die beim Start ausgeführt wird.
Gehen Sie in nvidia-settings
zu „X Server Display Configuration” und klicken Sie auf „Save to X Configuration File” oder verwenden Sie die Option „Save Current Configuration” im Menü „GPU 0” (oder ähnlich). Dies speichert Ihre Einstellungen in einer Konfigurationsdatei. Alternativ können Sie einen Befehl im Terminal ausführen:
„`bash
nvidia-settings -a ‘[gpu:0]/GPUFanControlState=1’ -a ‘[gpu:0]/GPUTargetFanSpeed=30’
„`
Ersetzen Sie `gpu:0` gegebenenfalls durch die korrekte GPU-ID (wenn Sie mehrere haben) und `30` durch die gewünschte Lüftergeschwindigkeit in Prozent.
Um diesen Befehl bei jedem Systemstart auszuführen, können Sie ein Systemd-Service erstellen oder den Befehl in eine Skriptdatei legen, die von Ihrem Desktop-Environment beim Start ausgeführt wird.
**Beispiel für ein Systemd-Service:**
Erstellen Sie eine Datei `nvidia-fans.service` unter `/etc/systemd/system/`:
„`
[Unit]
Description=NVIDIA GPU Fan Control
After=display-manager.service multi-user.target
[Service]
Type=oneshot
ExecStart=/usr/bin/nvidia-settings -a ‘[gpu:0]/GPUFanControlState=1’ -a ‘[gpu:0]/GPUTargetFanSpeed=30’
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target
„`
Speichern Sie die Datei und aktivieren Sie den Service:
„`bash
sudo systemctl enable nvidia-fans.service
sudo systemctl start nvidia-fans.service
„`
AMD GPUs: Der Weg über sysfs und CoreCtrl
Bei AMD-Grafikkarten ist der Prozess etwas anders, da der Open-Source-Treiber amdgpu
auf dem Linux-Kernel aufbaut und die Steuerung über das sysfs-Dateisystem ermöglicht.
Schritt 1: Manuelle Lüftersteuerung über sysfs
Das sysfs-Dateisystem bietet eine Schnittstelle zur Kernel-Hardware-Information. Für die Lüftersteuerung finden Sie relevante Dateien unter `/sys/class/drm/card*/device/hwmon/hwmon*/`.
1. **Finden Sie Ihre GPU und den korrekten hwmon-Pfad:**
Öffnen Sie ein Terminal und suchen Sie nach dem hwmon-Pfad Ihrer GPU. Dies ist oft der komplexeste Teil.
„`bash
ls -l /sys/class/drm/card*
„`
Suchen Sie nach einem Symlink, der auf `device/hwmon/hwmonX` zeigt, wobei X eine Zahl ist. Alternativ können Sie es so versuchen:
„`bash
find /sys/class/drm -name „hwmon*”
„`
Um sicherzustellen, dass Sie die richtige GPU haben, können Sie den Namen auslesen:
„`bash
cat /sys/class/drm/card0/device/hwmon/hwmon0/name
# Ersetzen Sie card0/device/hwmon/hwmon0 mit Ihrem gefundenen Pfad.
# Dies sollte etwas wie „amdgpu” oder den Namen Ihrer Karte ausgeben.
„`
Nehmen wir an, Ihr Pfad ist `/sys/class/drm/card0/device/hwmon/hwmon0`.
2. **Lüftersteuerung aktivieren und einstellen:**
Im gefundenen Pfad gibt es normalerweise Dateien wie `pwm1_enable`, `pwm1` und `pwm1_max`.
* `pwm1_enable`: Steuert den Modus des Lüfters.
* `0`: Lüftersteuerung deaktiviert (oft 0RPM)
* `1`: Manuelle Steuerung
* `2`: Automatische Steuerung (Standard)
* `pwm1`: Der aktuelle PWM-Wert (Pulsweitenmodulation), der die Drehzahl steuert.
* `pwm1_max`: Der maximale PWM-Wert, normalerweise 255.
Um den 0RPM-Modus zu deaktivieren, müssen Sie die manuelle Steuerung aktivieren und einen PWM-Wert setzen:
„`bash
sudo -s
# Wechseln Sie zum Pfad Ihrer GPU
cd /sys/class/drm/card0/device/hwmon/hwmon0
# Manuelle Steuerung aktivieren
echo 1 > pwm1_enable
# Lüfter auf eine feste Drehzahl einstellen (z.B. 25% von 255, also 64)
# Rechnen Sie: (gewünschte Prozent / 100) * pwm1_max. Z.B. (25/100) * 255 = 63.75 ~ 64
echo 64 > pwm1
exit
„`
Experimentieren Sie mit dem Wert für `pwm1`. Ein Wert von 64 (entspricht ca. 25% der max. Drehzahl) ist ein guter Startpunkt für einen leisen, aber effektiven Leerlauf.
Schritt 2: CoreCtrl für eine GUI-Lösung
Für AMD-Nutzer, die eine grafische Oberfläche bevorzugen, ist CoreCtrl eine ausgezeichnete Wahl. CoreCtrl ist eine kostenlose und quelloffene Software, die eine detaillierte Überwachung und Steuerung Ihrer AMD-Grafikkarte ermöglicht, einschließlich Leistungsprofilen und Lüfterkurven.
1. **CoreCtrl installieren:**
Die Installation variiert je nach Linux-Distribution. Auf Ubuntu-basierten Systemen können Sie PPA (Personal Package Archive) verwenden:
„`bash
sudo add-apt-repository ppa:ernstp/mesarc
sudo apt update
sudo apt install corectrl
„`
Für andere Distributionen suchen Sie nach CoreCtrl in Ihren Paket-Managern oder folgen Sie den Anweisungen auf der GitHub-Seite von CoreCtrl.
2. **Berechtigungen einrichten (udev-Regeln):**
Damit CoreCtrl oder manuelle sysfs-Befehle ohne `sudo` funktionieren und dauerhaft sind, müssen Sie eine udev-Regel erstellen. udev ist das Gerätemanagement-System von Linux, das bei Erkennung neuer Hardware oder Systemstart bestimmte Aktionen ausführt.
Erstellen Sie eine neue udev-Regel-Datei, z.B. `/etc/udev/rules.d/90-amdgpu-fan.rules`:
„`
SUBSYSTEM==”drm”, DRIVERS==”amdgpu”, ATTR{device/hwmon/hwmon*/pwm1_enable}==”2″, ATTR{device/hwmon/hwmon*/power1_cap_max}!=””, RUN+=”/bin/sh -c ‘echo 1 > /sys/class/drm/card$$(cat /sys/class/drm/card*/device/hwmon/hwmon*/device/uevent | grep -oP „DRM_CARD_INDEX=\K\d+”)/device/hwmon/hwmon$$(cat /sys/class/drm/card*/device/hwmon/hwmon*/device/uevent | grep -oP „HWMON_INDEX=\K\d+”)/pwm1_enable'”
SUBSYSTEM==”drm”, DRIVERS==”amdgpu”, ATTR{device/hwmon/hwmon*/pwm1_enable}==”1″, ATTR{device/hwmon/hwmon*/power1_cap_max}!=””, RUN+=”/bin/sh -c ‘echo 64 > /sys/class/drm/card$$(cat /sys/class/drm/card*/device/hwmon/hwmon*/device/uevent | grep -oP „DRM_CARD_INDEX=\K\d+”)/device/hwmon/hwmon$$(cat /sys/class/drm/card*/device/hwmon/hwmon*/device/uevent | grep -oP „HWMON_INDEX=\K\d+”)/pwm1′”
„`
Diese udev-Regel ist etwas komplexer, da sie versucht, den Pfad zur GPU dynamisch zu finden. Eine einfachere, aber weniger robuste Methode wäre, den Pfad fest zu codieren, was jedoch bei Hardware-Änderungen Probleme verursachen kann. Eine bessere und von CoreCtrl empfohlene Regel ist die folgende (stellen Sie sicher, dass Ihre Benutzergruppe `video` ist oder passen Sie sie an):
„`
ACTION==”add”, KERNEL==”card*”, SUBSYSTEM==”drm”, DRIVERS==”amdgpu”, TAG+=”power-profile”, ENV{REMOVE_CMD}=”/usr/bin/rm -f /var/lib/corectrl/gpu-config-$env{DRM_CARD_ID}.json”
ACTION==”add”, KERNEL==”amdgpu”, SUBSYSTEM==”pci”, ATTR{driver}==”amdgpu”, ATTR{vendor}==”0x1002″, ATTR{device}==”*”, MODE=”0660″, GROUP=”video”
„`
Diese Regeln sollen sicherstellen, dass CoreCtrl die benötigten Berechtigungen hat. Nach dem Erstellen der udev-Regel müssen Sie die Regeln neu laden und das System neu starten:
„`bash
sudo udevadm control –reload-rules
sudo udevadm trigger
sudo reboot
„`
3. **CoreCtrl verwenden:**
Nach dem Neustart starten Sie CoreCtrl. Sie sollten nun Ihre AMD-GPU sehen. Wählen Sie Ihre Grafikkarte aus und navigieren Sie zu den Lüftereinstellungen. Hier können Sie den Lüftermodus von „Automatisch” auf „Manuell” oder „Benutzerdefiniert” umstellen und eine eigene Lüfterkurve erstellen, die sicherstellt, dass die Lüfter niemals vollständig stillstehen. Stellen Sie eine Mindestdrehzahl ein, um den 0RPM-Modus zu deaktivieren. CoreCtrl kann diese Einstellungen beim Systemstart anwenden, wenn es entsprechend konfiguriert ist.
Wichtige Überlegungen und Monitoring
Egal, ob Sie NVIDIA oder AMD verwenden, es gibt einige allgemeine Punkte, die Sie beachten sollten:
* **Temperaturen überwachen:** Nachdem Sie Änderungen an der Lüftersteuerung vorgenommen haben, ist es unerlässlich, die GPU-Temperaturen sorgfältig zu überwachen. Tools wie `watch -n 1 nvidia-smi` (für NVIDIA), `radeontop` (für AMD), `lm_sensors` oder spezielle GUI-Tools wie `psensor` oder die integrierte Überwachung in CoreCtrl und `nvidia-settings` sind hierbei unerlässlich. Achten Sie auf normale Leerlauftemperaturen (typischerweise unter 40-45°C) und auf Belastungstemperaturen (idealerweise unter 75-80°C, je nach Modell).
* **Geräuschpegel:** Ein ständiges Drehen der Lüfter bedeutet auch einen konstanten Geräuschpegel. Finden Sie einen Kompromiss, der für Sie akzeptabel ist. Ein Lüfter, der mit 20-30% läuft, ist oft kaum hörbar, sorgt aber für eine deutliche Senkung der Idle-Temperaturen.
* **Lebensdauer der Lüfter:** Dauerhaft hohe Drehzahlen (z.B. 100% immer) können die Lebensdauer der Lüfter verkürzen. Eine konstante, niedrige Drehzahl ist in der Regel unbedenklich und verlängert die Lebensdauer Ihrer GPU.
* **Energieverbrauch:** Eine dauerhaft höhere Lüfterdrehzahl führt zu einem minimal erhöhten Energieverbrauch. Für die meisten Anwender ist dies jedoch vernachlässigbar.
* **Systemweite Kühlung:** Denken Sie auch an die allgemeine Belüftung Ihres Gehäuses. Eine gute Gehäuselüftung unterstützt die GPU-Kühlung erheblich.
Fazit: Volle Kontrolle für eine kühle und stabile GPU
Der 0RPM-Modus ist eine tolle Funktion für Benutzer, die absolute Stille im Leerlauf wünschen. Für Performance-Enthusiasten, professionelle Anwender oder jeden, der einfach nur sicherstellen möchte, dass seine Grafikkarte stets unter optimalen Temperaturen läuft und eine längere Lebensdauer genießt, kann das Deaktivieren dieser Funktion jedoch von großem Vorteil sein.
Ob Sie nun eine NVIDIA- oder AMD-GPU unter Linux betreiben, die Werkzeuge und Methoden zur gezielten Deaktivierung des 0RPM-Modus stehen Ihnen zur Verfügung. Es erfordert zwar ein wenig Einarbeitung in die Kommandozeile und Konfigurationsdateien, aber die Belohnung ist eine kühlere, stabilere und potenziell langlebigere GPU. Nehmen Sie die Kontrolle über Ihre Lüftersteuerung in die Hand, finden Sie Ihren persönlichen Sweet Spot zwischen Geräusch und Kühlung und genießen Sie die kühle Brise, die Ihre Grafikkarte verdient. Ihr System wird es Ihnen danken!