TLP Einstellungen
Einleitung
Alle Einstellungen von TLP sind zentral in der Konfigurationsdatei /etc/default/tlp zusammengefaßt.
Die mitgelieferte Datei enthält bereits für nahezu alle Benutzer sinnvolle, stromsparende Voreinstellungen. Eine Anpassung der Konfiguration ist nur erforderlich, wenn zusätzliche Funktionen wie z.B. Deaktivieren von Funkgeräten beim Systemstart, Ausschalten des Ultrabay-Laufwerks oder Akkuladeschwellen aktiviert werden sollen.
Die Konfigurationsdatei muß mit einem Editor mit Root-Rechten bearbeitet werden. Also z.B. per
gksudo gedit /etc/default/tlp
Nach dem Ändern von Einstellungen werden diese nach einem Neustart, einem Wechsel der Stromquelle oder unmittelbar durch
sudo tlp start
aktiv.
Hinweis zu Versionsupdates: beim Update des Pakets wird die vom Benutzer angepaßte Datei von der Paketverwaltung nur nach Rückfrage überschrieben bzw. die neue Datei als /etc/default/tlp.dpkg-dist abgelegt.
Parameter
Allgemeine Hinweise:
- Parameter mit der Endung _AC wirken auf den Netzteilbetrieb
- Parameter mit der Endung _BAT wirken auf den Akkubetrieb
- Parameter die Leerzeichen enthalten sind in Anführungszeichen ("") anzugeben
- bei einigen Parametern ist zum Aktivieren das führende Kommentarzeichen (#) zu entfernen
Stromsparfunktionen
Dieses Kapitel beschreibt die Einstellungen die durch das Installationspaket tlp implementiert werden.
Allgemeines
TLP_ENABLE=1
Der Hauptschalter von TLP. Zum Deaktivieren von TLP setzt man ihn auf 0 und macht einen Neustart.
Dateisystem
DISK_IDLE_SECS_ON_AC=0 DISK_IDLE_SECS_ON_BAT=2
Steuert ob der Laptop-Mode des Linux-Kernels verwendet werden soll (Wert ungleich 0). Diese Einstellung sollte man nicht ändern.
MAX_LOST_WORK_SECS_ON_AC=15 MAX_LOST_WORK_SECS_ON_BAT=60
Timeouts (in Sekunden) für das Zurückschreiben der Dateisystempuffer auf die Festplatte.
Prozessor und Taktsteuerung
CPU_SCALING_GOVERNOR_ON_AC=ondemand CPU_SCALING_GOVERNOR_ON_BAT=ondemand
Wählt den sogenannten "Governor" für die Prozessortaktsteuerung aus. Gültige Werte sind ondemand (Standard), powersave, performance sowie conservative.
intel_pstate: seit Kernel 3.9 wird auf Intel Sandy Bridge (oder neuerer) Hardware automatisch der neue Treiber intel_pstate verwendet.. intel_pstate unterstützt als Governor nur noch powersave (empfohlener Standard) und performance. Der gerade aktive Treiber kann der Ausgabe von tlp-stat, Abschnitt "+++ Processor", entnommen werden.
Wichtig: die in jeder Distribution vorhandene Standardeinstellung für den Governor muss deaktiviert werden, ansonsten sind nicht vorhersagbare Resultate zu erwarten. Siehe FAQ.
CPU_SCALING_MIN_FREQ_ON_AC=0 CPU_SCALING_MAX_FREQ_ON_AC=0 CPU_SCALING_MIN_FREQ_ON_BAT=0 CPU_SCALING_MAX_FREQ_ON_BAT=0
Gibt die minimale/maximale Taktfrequenz für den Governor vor. Die gültigen Werte hängen vom verbauten Prozessormodell ab und sind der Ausgabe von tlp-stat, Abschnitt "+++ Processor", zu entnehmen. Der Wert 0 aktiviert die Standardfrequenzen des Prozessors.
Hinweis: zum Aktivieren der Standardfrequenzen ist ein Neustart erforderlich, damit die geänderte Einstellung greift.
CPU_BOOST_ON_AC=1 CPU_BOOST_ON_BAT=0
Abschalten des "Turbo Boost" (Intel) bzw. "Turbo Core" (AMD) des Prozessors (0 = abgeschaltet / 1 = erlaubt).
Hinweise:
- Benötigt Linux 3.7 oder höher
- Der Wert 1 aktiviert den "Turbo Boost" nicht, sondern erlaubt ihn lediglich
- Eine Taktbegrenzung (s.o.) kann diese Einstellung unwirksam machen
SCHED_POWERSAVE_ON_AC=0 SCHED_POWERSAVE_ON_BAT=1
Bei geringer Last wird die Anzahl der verwendeten CPU-Kerne reduziert (1 = aktiv, 0 = inaktiv). Wirkt nicht bei allen Kernelversionen bzw. CPUs. Hier ist normalerweise keine Änderung erforderlich.
Kernel
NMI_WATCHDOG=0
Schaltet den Kernel-NMI-Watchdog-Timer (0 = inaktiv/Strom sparen, 1=aktiv). Der Wert 1 ist nur relevant für Benutzer die Kernel Debugging betreiben möchten.
Undervolting
PHC_CONTROLS="F:V F:V F:V F:V"
Hinweis: erfordert fortgeschrittene Linux-Kenntnisse.
Ist ein Kernel mit PHC-Patch installiert, so können hier zum Undervolting die gewünschten Wertepaare (Frequenz:Spannung) eingetragen werden.
Festplatten und Controller
Hinweis: TLPs Standardeinstellungen arbeiten problemlos mit SSDs zusammen, es besteht kein Anlass zu diesbezüglichen Optimierungen.
Angabe der Geräte
DISK_DEVICES="sda sdb"
Hier wird angegeben auf welche Festplatte(n) die nachfolgenden Parameter für das Power Management wirken sollen. Mehrere Festplatten sind mit Leerzeichen getrennt aufzuführen ("sda sdb").
Da beim Einsatz einer 2. Festplatte im Wechselschacht (bzw. in der Ultrabay) unter Umständen die Zuordnung zu den Devicenamen sda/sdb nicht immer dieselbe ist, können die Festplatten alternativ über eine ID angegeben werden:
DISK_DEVICES="ata-INTEL_SSDSA2M160G2GC_XZY123456890 ata-HITACHI_HTS541612J9SA00_XZY123456890"
Die IDs der eingebauten Platten ermittelt man im Terminal mit dem Kommando
tlp diskid
Advanced Power Management
DISK_APM_LEVEL_ON_AC="254 254" DISK_APM_LEVEL_ON_BAT="128 128"
Steuert den "Advanced Power Management Level" der Festplatte(n). Gültige Werte liegen im Bereich von 1 bis 255.
Einige ausgewählte Werte sind:
- 1 - maximale Energieeinsparung
Vorsicht: kann zu erhöhtem Verschleiß durch häufiges Parken der Schreib-/Leseköpfe führen (meist erkennbar am Klickgeräusch) . - 128 - Kompromiss aus Energieeinsparung und Verschleiß (TLP-Standard im Akkubetrieb)
- 192 - verhindert bei einigen Festplattenmodellen aggressives Parken der Köpfe
- 254 - minimale Energieeinsparung (TLP-Standard für Betrieb am Netzteil)
- 255 - aus (wird von manchen Festplatten nicht unterstützt)
Sollen im Fall mehrerer Festplatten unterschiedliche Werte eingestellt werden, sind sie mit Leerzeichen getrennt anzugeben.
Spindelmotor abschalten
DISK_SPINDOWN_TIMEOUT_ON_AC="0 0" DISK_SPINDOWN_TIMEOUT_ON_BAT="0 0"
Steuert die Zeitspanne (Timeout) für das automatische Stoppen des Spindelmotors der Festplatte bei Inaktivität. Gültige Werte sind:
- 0 - Abschalten deaktiviert
- 1..240 - Timeout von 5 Sekunden bis 20 Minuten (in Schritten von 5 Sekunden)
- 241..251 - Timeout von 30 Minuten bis 5,5 Stunden (in Schritten von 30 Minuten)
SSDs haben keine bewegten Teile, daher hat für sie diese Einstellung keine Bedeutung und kann deaktiviert bleiben.
Hinweis: das automatische Stoppen der Systemplatte für einen längeren Zeitraum gelingt in der Regel nicht, da viele Anwendungen und Hintergrunddienste die Festplatte nach kurzer Zeit durch Schreibvorgänge wieder aufwecken. Für eine Festplatte im Wechselschacht bzw. der Ultrabay, auf die nicht ständig zugegriffen wird, eignet sich diese Einstellung hingegen sehr gut.
I/O-Scheduler
DISK_IOSCHED="deadline cfq"
Hier kann je Festplatte der I/O-Scheduler festgelegt werden. Mögliche Werte sind:
- cfq - Linux Default, geeignet sowohl für konventionelle Festplatten als auch SSDs
- deadline - Linux Default (neuere Kernel), geeignet sowohl für konventionelle Festplatten als auch SSDs
- noop
Sollen im Fall mehrerer Festplatten unterschiedliche Werte eingestellt werden, sind sie mit Leerzeichen getrennt anzugeben.
SATA Aggressive Link Power Management
SATA_LINKPWR_ON_AC=max_performance SATA_LINKPWR_ON_BAT=min_power
Steuert den Energiesparmodus (ALPM) der SATA-Anschlüsse für Festplatte bzw. opt. Laufwerk:
- min_power - maximale Energieeinsparung und geringste Performance
- medium_power - Kompromiss aus Stromverbrauch und Performance
- max_performance - maximale Performance und Stromverbrauch
Hinweis: um diese Einstellung komplett zu deaktivieren, fügt man ein '#' in der ersten Spalte ein.
PCI-Express-Bus
Active State Power Management
PCIE_ASPM_ON_AC=performance PCIE_ASPM_ON_BAT=powersave
Steuert den Energiesparmodus des PCI-Express-Bus (PCIe ASPM). Verfügbar ab Linux 2.6.35.
Mögliche Werte:
- default
- performance
- powersave
Grafikkarten
Radeon (alt)
RADEON_POWER_PROFILE_ON_AC=high RADEON_POWER_PROFILE_ON_BAT=low
Steuert die Taktfrequenz der Grafikkarte. Verfügbar ab Linux 2.6.35 - nur mit dem freien Treiber radeon, nicht mit fglrx.
Mögliche Werte:
- low
- mid
- high
- auto - Akkubetrieb: mid, Netzteilbetrieb: high
- default - Hardware-Defaults verwenden, keine Taktbeeinflussung
Hinweis: durch Verwendung dieser Einstellung flackert beim Wechsel der Stromquelle das Display ganz kurz.
Radeon DPM (neu)
Seit Kernel 3.11 ist das neue Radeon Dynamic Power Management (DPM) verfügbar - nur mit dem freien Treiber radeon, nicht mit fglrx.
Hinweis: es wird die Bootoption radeon.dpm=1 benötigt.
RADEON_DPM_STATE_ON_AC=performance RADEON_DPM_STATE_ON_BAT=battery
Steuert die Power Management Methode, mögliche Werte:
- battery – Default im Akkubetrieb
- performance – Default am Netzteil
RADEON_DPM_PERF_LEVEL_ON_AC=auto RADEON_DPM_PERF_LEVEL_ON_BAT=auto
Steuert den Performance Level, mögliche Werte:
- auto – Empfohlen!
- low
- high
Netzwerk
WLAN Power Management
WIFI_PWR_ON_AC=1 WIFI_PWR_ON_BAT=5
Steuert den Energiesparmodus des WLAN-Adapters. Abhängig von Kernelversion und Karte.
- 1 - deaktiviert
- 5 - aktiviert
Hinweis: der Energiesparmodus kann zu einer instabilen WLAN-Verbindung führen.
Wake On LAN
WOL_DISABLE=Y
- Y - Wake On LAN deaktiviert
- N - Wake On LAN aktiviert
Hinweis: nach dem Aktivieren ist ein Neustart erforderlich, damit die geänderte Einstellung greift.
Sound
SOUND_POWER_SAVE_ON_AC=0 SOUND_POWER_SAVE_ON_BAT=1
Timeout (in Sekunden) für den Stromsparmodus des Soundchips (unterstützt: Intel HDA, AC97). Der Wert 0 deaktiviert die Funktion.
Hinweis: kann zu Klickgeräuschen in der Soundausgabe führen.
SOUND_POWER_SAVE_CONTROLLER=Y
- Y - schaltet den Controller ebenfalls aus wenn der Soundchip in den Stromsparmodus geht
- N - Controller bleibt immer aktiv
Wechselschacht / Ultrabay
BAY_POWEROFF_ON_BAT=0
- 1 - schaltet die Stromversorgung des optischen Laufwerks in Wechselschacht/Ultrabay im Akkubetrieb aus
- 0 - kein Abschalten
BAY_DEVICE=sr0
Gibt die Gerätedatei für das opt. Laufwerk an (Default ist /dev/sr0).
Hinweise:
- Das Laufwerk kann über den Wechselschacht-/Ultrabay-Entriegelungsschieber bzw. bei neueren Modellen über den Auswurfknopf am Laufwerk wieder eingeschaltet werden.
- Alle anderen Geräte im Wechselschacht bzw. der UltraBay, insbesondere Festplatten, werden durch dieses Kommando nicht ausgeschaltet.
Runtime Power Management
RUNTIME_PM_ON_AC=on RUNTIME_PM_ON_BAT=auto
Steuert das Runtime Power Management für PCI(e)-Geräte. Verfügbar ab Linux 2.6.35.
- auto - aktiviert (Geräte nach Möglichkeit ausschalten)
- on - deaktiviert (Geräte ständig aktiv)
Hinweis: um diese Einstellung komplett zu deaktivieren, fügt man ein '#' in der ersten Spalte ein.
RUNTIME_PM_ALL=1
Steuert welche PCI(e)-Geräte vom Runtime Power Management erfasst werden:
- 0 - nur ausgewählte Geräte
- 1 - alle Geräte (Default)
RUNTIME_PM_BLACKLIST="00:12.3 00:45.6"
Die aufgeführten PCI(e) Geräte Adressen werden vom Runtime Power Management ausgeschlossen. Die Adressen kann man mit dem Kommando lspci ermitteln (erste Spalte).
USB
USB_AUTOSUSPEND=1
- 1 - aktiviert beim Systemstart und beim Wechsel der Stromquelle für die USB-Geräte den Auto-Suspend-Modus. Automatisch davon ausgenommen sind Eingabegeräte wie Mäuse und Tastaturen.
- 0 - Funktion deaktiviert
Hinweis: der USB Auto-Suspend-Modus wird von TLP unabhängig von der Stromquelle – d.h. sowohl am Netzteil als auch im Akkubetrieb – aktiviert.
USB_BLACKLIST="1111:2222 3333:4444"
Die eingetragenen USB-Geräte-IDs sind vom Auto-Suspend-Modus ausgenommen. Hier können problematische Geräte aufgenommen werden, die Schwierigkeiten mit dem Aufwachen haben. Die IDs ermittelt man am einfachsten mit dem Kommando lsusb
. Mehrere IDs sind mit Leerzeichen zu separieren.
USB_BLACKLIST_WWAN=1
Schließt eingebautes WWAN/UMTS vom Auto-Suspend aus:
- 0 - nicht ausschließen
- 1 - ausschließen
Hinweis: unterstützt derzeit nur USB IDs 05c6:* (Qualcomm), 0bdb:* (Ericsson) und 1199:* (Sierra).
USB_AUTOSUSPEND_DISABLE_ON_SHUTDOWN=1
Deaktiviert den Auto-Suspend-Modus beim Herunterfahren des Systems. Dies ist als Umgehungslösung gedacht für USB-Geräte die im Suspend-Zustand das Herunterfahren stören.
Systemstart und Herunterfahren
RESTORE_DEVICE_STATE_ON_STARTUP=1
Mit dieser Einstellung (1=aktiviert, 0=deaktiviert) wird beim Systemstart der Schaltzustand aller Funkgeräte (Bluetooth, WLAN, WWAN) zum Zeitpunkt des letzten Herunterfahrens bzw. Neustarts wiederhergestellt.
Hinweis: bei Aktivierung ignoriert TLP die beiden nachfolgenden Einstellungen.
DEVICES_TO_DISABLE_ON_STARTUP="bluetooth wifi wwan"
Die hier eingetragenen Geräte werden beim Systemstart automatisch ausgeschaltet:
- bluetooth - eingebautes Bluetooth (wird bei der Benutzeranmeldung deaktiviert)
- wifi - WLAN
- wwan - eingebautes WWAN/UMTS
Mehrere Geräte sind mit Leerzeichen zu trennen.
Hinweis: diese Funktion ist, speziell für Bluetooth und WWAN, nicht für alle Notebook-Modelle verfügbar. Grund dafür sind Kerneltreiber die nicht das notwendige rfkill-Framework unterstützen.
DEVICES_TO_ENABLE_ON_STARTUP="bluetooth wifi wwan"
Normalerweise werden unter Linux alle Funkgeräte beim Systemstart automatisch eingeschaltet. Sollte das ausnahmsweise nicht der Fall sein, so können die betreffenden Geräte hierüber eingeschaltet werden.
DEVICES_TO_DISABLE_ON_SHUTDOWN="bluetooth wifi wwan"
Sollten Geräte das Herunterfahren des Systems blockieren, können sie über einen Eintrag in diesem Parameter während des Herunterfahrens ausgeschaltet werden.
DEVICES_TO_ENABLE_ON_SHUTDOWN="bluetooth wifi wwan"
Die hier eingetragenen Geräte werden beim Herunterfahren automatisch eingeschaltet. Dies ist als Umgehungslösung gedacht, falls parallel installierte andere Betriebssysteme die unter Linux ausgeschalteten Geräte nicht finden können.
Akku
Nur für ThinkPads
START_CHARGE_THRESH_BAT0=75 STOP_CHARGE_THRESH_BAT0=80
START_CHARGE_THRESH_BAT1=75 STOP_CHARGE_THRESH_BAT1=80
Einstellen der Akkuladeschwellen von ThinkPads für Hauptakku (BAT0) und Ultrabay-Akku (BAT1). Die Werte sind in % der Akkukapazität anzugeben. Ein Wert von 0 wird in die Hardware-Defaults 96%/100% übersetzt.
Das Aufladen startet beim Anschließen des Netzteils nur dann, wenn die Ladung unterhalb des START_CHARGE_TRESH-Werts (untere Ladeschwelle) liegt und endet bei Erreichen des STOP_CHARGE_TRESH-Werts (obere Ladeschwelle). Liegt hingegen beim Anstecken des Netzteils die Ladung über der unteren Ladeschwelle, dann wird nicht geladen.
Die mitgelieferte Konfigurationsdatei enthält Einstellungen (im Beispiel gezeigt) die auf größtmögliche Lebensdauer des Akkus ausgelegt sind; er wird dabei nur bis max. 80% geladen. Die Einstellungen sind jedoch in der Konfigurationsdatei auskommentiert und müssen vom Benutzer explizit aktiviert bzw. auf Wunsch angepaßt werden. Bereits die Hardware-Defaults 96%/100% – die auch ohne TLP wirksam wären – verhindern schädliche Miniladezyklen.
Zur Auswahl individueller Einstellungen empfiehlt sich die Lektüre von Akku.
Hinweis: der eigentliche Ladevorgang wird nicht per Software, sondern durch die Hardware gesteuert. TLP schreibt lediglich die Schwellen in die Hardwareregister der Ladeelektronik (per tp-smapi oder tpacpi-bat)
Für weitere Fragen zu den Ladenschwellen sei auf die TLP FAQ verwiesen.
Funkgerätesteuerung – Radio Device Wizard
Der Radio Device Wizard bietet die Möglichkeit ereignisgesteuert Funkgeräte ein- bzw. auszuschalten. Er wird in Ubuntu und Debian durch das (optionale) Installationspaket tlp-rdw implementiert.
Hinweis: Voraussetzung für den Radio Device Wizard ist die Verwendung des Network Managers.
Abschalten bei Verbindungsaufbau
DEVICES_TO_DISABLE_ON_LAN_CONNECT="wifi wwan" DEVICES_TO_DISABLE_ON_WIFI_CONNECT="wwan" DEVICES_TO_DISABLE_ON_WWAN_CONNECT="wifi"
Nach dem Verbindungsaufbau von LAN, WLAN oder WWAN werden die angebenen Geräte ausgeschaltet:
- bluetooth - eingebautes Bluetooth
- wifi - WLAN
- wwan - eingebautes WWAN/UMTS
Mehrere Geräte sind mit Leerzeichen zu trennen.
Einschalten bei Verbindungsabbau
DEVICES_TO_ENABLE_ON_LAN_DISCONNECT="wifi wwan" DEVICES_TO_ENABLE_ON_WIFI_DISCONNECT="" DEVICES_TO_ENABLE_ON_WWAN_DISCONNECT=""
Nach dem Verbindungsabbau von LAN, WLAN oder WWAN werden die angebenen Geräte eingeschaltet.
Ein- bzw. Ausschalten beim Andocken
DEVICES_TO_ENABLE_ON_DOCK="" DEVICES_TO_DISABLE_ON_DOCK=""
Nach dem Andocken werden die angegebenen Geräte ein- bzw. ausgeschaltet.
Ein- bzw. Ausschalten beim Abdocken
DEVICES_TO_ENABLE_ON_UNDOCK="wifi" DEVICES_TO_DISABLE_ON_UNDOCK=""
Nach dem Abdocken werden die angegebenen Geräte ein- bzw. ausgeschaltet.
Trace-Modus
Zu Supportzwecken kann der Trace-Modus durch Einfügen folgender Zeile aktiviert werden
TLP_DEBUG="bat disk lock nm path pm rf run sysfs udev usb"
Originaldatei
Die Datei /etc/default/tlp aus dem Installationspaket findet sich hier.
Links
TLP
- TLP - Linux Stromsparen – Installation, Benutzerdokumentation
- TLP FAQ – Antworten zu häufig gestellten Fragen
- TLP Developer Documentation – Hinweise zur Paketierung (englisch)
- TLP – Projekt-Homepage
- TLP – English Documentation
Hintergrund
- I/O Scheduling – Wikipedia Artikel zum I/O-Scheduler (englisch)
- Making sense of PCIe ASPM – Hinweise zum PCI Express Active State Power Management (englisch)
- Radeon driver – Treiberdokumentation, s. Abschnitt "KMS Power Management Options" (englisch)
- rfkill – Wikiartikel zum Schalten der Funkgeräte
- Run-time power management – Kerneldokumentation (englisch)
- tp-smapi – Wikiartikel zur Schnittstelle für die Akkufunktionen
- tpacpi-bat – Schnittstelle für die Akkufunktionen ab den Sandy-Bridge-Modellen (X220 / T420 etc.)
- USB Auto Suspend – Kernel Dokumentation zum USB Auto Suspend (englisch)