Linux Projektvorstellung: TLP – Linux Stromsparen

Linux Betriebssystem

linrunner

Ubuntuversteher
Themenstarter
Registriert
22 Juni 2007
Beiträge
13.291
Nachdem im Forum öfters nachgefragt wird, wie man Linux die Feinheiten des Stromsparens beibringt, habe ich mich vor einiger Zeit entschlossen, meine Skriptsammlung in eine allgemein benutzbare Form zu bringen. Das Ergebnis möchte ich Euch an dieser Stelle vorstellen.

Dokumentation ist auf der offiziellen Website https://linrunner.de/tlp/ zu finden (die Infos in unserem Wiki werden von mir nicht mehr gepflegt und sind veraltet).

Fragen und Probleme einfach hier im Thread posten.

Für die erste Analyse benötige ich bitte stets den kompletten Output von

Code:
sudo tlp-stat
Anmerkung: ich fordere oft in der weiteren Analyse Teilausgaben an - das sollt ihr jedoch nicht selbstständig tun! Immer zuerst die vollständige Ausgabe.

Bitte auch die FAQ beachten!

Rückmeldungen der Art "alles funktioniert" sind natürlich auch gern gesehen ... :cool:
 
Zuletzt bearbeitet:
Hi Cookie,

die resolv.conf ist leer, daher funktioniert die DNS-Auflösung nicht. Das hatte ich erwartet, denn es ist ein bekannter Bug des NetworkManagers seit 9.10 und hat nichts mit TLP zu tun.

Trage als Workaround die DNS-Server deines Providers in den Eigenschaften der Verbindung im letzten Reiter ("IPv4") ein. Zunächst muß Du dort auf "Automatisch (nur Adressen)" umstellen, dann weiter unten die DNS-Server mit Komma getrennt eintragen:
  • O2 = "193.189.244.225, 193.189.244.206"
  • Vodafone = "139.7.30.125, 139.7.30.126"
  • T-Mobile = "193.254.160.1, 193.254.160.130"
  • E-Plus = "212.023.97.2, 212.23.97.3"
 
Hallo!
Ich habe ein Problem und eine Frage:
Bei mir steht in der tlp-stat, dass die Akku Werte nicht ausgelesen werden können, weil mir tp-smapi fehlt. Klar habe ich auch nicht eingerichtet^^ Da ich bei der ganzen Sache aber ziemlich neu bin (habe mir das Thinkpad extra zum Linux lernen geholt) wollte ich fragen wo ich eine Anleitung oder ein howto finde wo erklä#rt steht was ich machen muss um das einzurichten?

Weiterhin wollte ich fragen ob ich irgendwie feststellen kann, ob sich das ganze positiv auf meine Laufzeit auswirkt. Ich habe ein X61s mit 8 Zellen Akku und unter Ubuntu 9.10 ziemlich exakt 5 Stunden Laufzeit. Bisher konnte ich nicht feststellen, dass das mehr geworden ist. Kann ich das testen?
 
[quote='xchrissix95',index.php?page=Thread&postID=769558#post769558]@Starko
http://wiki.ubuntuusers.de/Festplattenschutz[/quote]
mh, das wundert mich jetzt aber. Genau die Anleitung läuft bei mir schon längst. Sogar mit dem Gnome Applet. Und der Festplattenschutz läuft tadellos (Hört man ja sogar).
Trotzdem sagt das tlp-stat, dass das nicht geht weil tp-smapi fehlt.
Ich sende euch gleich mal logs.

Edit: Hier einmal tlp-stat
Code:
--- tlp 0.2.1 --------------------------------------------
System = LENOVO ThinkPad X61s 7666BR7
Release = Ubuntu 9.10
Kernel = 2.6.31-17-generic x86_64

tlp power save = enabled
power source = battery

/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor = ondemand
/sys/devices/system/cpu/cpu0/cpufreq/phc_controls = (phc kernel not available)

/proc/acpi/ibm/thermal = temperatures:	39 29 29 34 23 -128 22 -128 30 32 -128 -128 -128 -128 -128 -128

/proc/sys/vm/laptop_mode = 2
/proc/sys/vm/dirty_writeback_centisecs = 1500
/proc/sys/vm/dirty_expire_centisecs = 1500
/proc/sys/vm/dirty_ratio = 60
/proc/sys/vm/dirty_background_ratio = 1
/proc/sys/fs/xfs/age_buffer_centisecs = (not available)
/proc/sys/fs/xfs/xfssyncd_centisecs = (not available)
/proc/sys/fs/xfs/xfsbufd_centisecs = (not available)

/dev/sda: Advanced power management level = 128

/sys/class/scsi_host/host0/link_power_management_policy = min_power
/sys/class/scsi_host/host1/link_power_management_policy = min_power
/sys/class/scsi_host/host2/link_power_management_policy = max_performance

bluetooth = off (software)
wifi      = on
wwan      = none (no device)
/sys/bus/pci/drivers/iwlagn/0000:03:00.0/power_level = 0

/sys/module/snd_hda_intel/parameters/power_save = 1
/sys/module/snd_hda_intel/parameters/power_save_controller = Y

ThinkPad extended battery info not available (missing tp_smapi kernel module)
/sys/class/power_supply/BAT0/manufacturer = SONY
/sys/class/power_supply/BAT0/energy_full_design = 74880000
/sys/class/power_supply/BAT0/energy_full = 74880000
/sys/class/power_supply/BAT0/energy_now = 73280000

tlp usb autosuspend = not enabled
tlp usb blacklist = (not available)

/sys/bus/usb/devices/3-2/power/autosuspend = 2, level = on -- 0483:2016 Biometric Coprocessor
/sys/bus/usb/devices/usb1/power/autosuspend = 2, level = auto -- 1d6b:0002 EHCI Host Controller
/sys/bus/usb/devices/usb2/power/autosuspend = 2, level = auto -- 1d6b:0002 EHCI Host Controller
/sys/bus/usb/devices/usb3/power/autosuspend = 2, level = auto -- 1d6b:0001 UHCI Host Controller
/sys/bus/usb/devices/usb4/power/autosuspend = 2, level = auto -- 1d6b:0001 UHCI Host Controller
/sys/bus/usb/devices/usb5/power/autosuspend = 2, level = auto -- 1d6b:0001 UHCI Host Controller
/sys/bus/usb/devices/usb6/power/autosuspend = 2, level = auto -- 1d6b:0001 UHCI Host Controller

Und hier einmal der "Beweis" dass ich die hdaps Anleitung schon eingebaut habe:
Code:
@ThinkPad-X61s:~$ sudo hdapsd 
Thu Feb  4 19:25:02 2010: Starting hdapsd
Thu Feb  4 19:25:02 2010: WARNING: You did not supply any devices to protect, trying autodetection.
Thu Feb  4 19:25:02 2010: Adding autodetected device: sda
Thu Feb  4 19:25:02 2010: Selected interface: HDAPS
Thu Feb  4 19:25:03 2010: Selected HDAPS input device: /dev/input/event10
Thu Feb  4 19:25:05 2010: parking
Thu Feb  4 19:25:14 2010: un-parking
 
Hi Starko,

ganz ruhig, Du hast nichts falsch gemacht. :)

Lade das Modul mal manuell mit
Code:
sudo modprobe -v tp_smapi
und ergänze außerdem deine /etc/modules um die Zeile
Code:
tp_smapi
dann wird es beim Systemstart automatisch geladen.

Erklärung: das Paket tp-smapi enthält zwar die drei Kernelmodule tp_smapi, hdaps und thinkpad_ec. Der hdapsd zieht aber nur die beiden Letzteren an.

Danke übrigens für deine Frage, ich werde das autom. Laden in der nächsten Version von TLP einbauen. :thumbup:
 
Akkulaufzeit: die Anzeige des Panelapplets ist zunächst nur eine Schätzung. Gewißheit hast Du nur, wenn Du denn Akku im Betrieb leer machst. Wenn Du mit und ohne TLP vergleichen möchtest, kannst Du TLP auf in /etc/default/tlp noch mal deaktivieren und ein zweites Mal messen. Du kannst auch den momentanen Stromverbrauch direkt mit Powertop vergleichen, dabei aber das Thinkpad vor der Ablesung stets ein paar Minuten in Ruhe lassen.
 
Dazu habe ich dann nochmal eine Verständnisfrage.
PowerTOP zeigt ja diese tollen Tipps an, die man in die /etc/rc.local eintragen soll. (Was ich seit genau 5 Minuten weiß^^)
Müssten die Tipps nicht verschwinden wenn tlp aktiv ist, da du gesagt hast tlp übernimmt alle diese Tipps die in PowerTOP angezeigt werden? Oder sind die zwar aktiv, aber PowerTOP merkt das nicht?

Wegen dem Stromverbraucht, ich werde die Tage mal den idle Wert mit und tlp nach ca 15 Minuten Ruhe vergleichen. Dazu muss ich TLP_ENABLE=0 stellen und einmal sudo tlp start ausführen?
 
Nach [font='Courier New, Courier, mono']TLP_ENABLE="0"[/font] ist ein Reboot nötig.

Powertop: nicht alles was powertop vorschlägt ist sinnvoll bzw. spart auch wirklich Strom. Ich hab nur die relevanten Sachen implementiert. Z.B wird powertop stets dies hier anmeckern:
Code:
/sys/class/scsi_host/host2/link_power_management_policy = max_performance
Das ist ein SATA-Link der sich nicht auf [font='Courier New, Courier, mono']min_power[/font] einstellen läßt, hat mein X200 auch.

Du solltest in /etc/default/tlp noch [font='Courier New, Courier, mono']USB_AUTOSUSPEND="1[/font]" setzen, danach [font='Courier New, Courier, mono']sudo tlp usb[/font].
 
Das USB_AUTOSUSPEND="1" habe ich gesetzt. Danke!
Was für Geräte sollte ich in die Blacklist setzen? Muss da z.B. meine USB Maus rein oder sollte die grade nicht rein? Wie muss die Formatierung aussehen, wenn mehr als ein Gerät in die Blacklist soll? Leerzeichen zwischen? Semikolon? Komma?
 
Welche USB-Geräte Autosuspend nicht vertragen, muß man durch Probieren ermitteln. Mäuse brauchen z.B. gerne etwas länger zum Aufwachen wenn man sie nach einer Pause wieder bewegt. Die USB-IDs trennst Du mit Leerzeichen.

EDITH: nach dem Systemstart angesteckte Geräte werden übrigens - außer beim Wechsel der Stromquelle - nicht autom. auf Autosuspend gesetzt. Ich hatte da ein sehr schönes udev-Skript, das aber leider die Bootzeit nachhaltig verlängert hat und deswegen wieder rausfliegen mußte :( . Ansonsten hilft [font='Courier New, Courier, mono']sudo tlp usb[/font].
 
So, hier mal ein PowerTOP nach 5 Minuten Idle ohne tlp:
Code:
     PowerTOP version 1.11      (C) 2007 Intel Corporation

Cn                 Verweildauer       P-States (Frequenzen)
C0 (Prozessor läuft)    ( 8,4%)         1,61 GHz     1,8%
C0                0,0ms ( 0,0%)         1,60 GHz     0,0%
C1 mwait          0,0ms ( 0,0%)         1200 MHz     0,0%
C2 mwait          4,9ms (91,6%)          800 MHz    98,2%


Aufwachen pro Sekunde : 186,2   Intervall: 10,0s
Stromverbrauch (ACPI-Schätzung): 14,0W (4,1 Std.) (Langzeit: 14,5W, 4,0 Std.)Beitragsinformationen
Und hier nach 5 Minuten Idle mit tlp:
Code:
     PowerTOP version 1.11      (C) 2007 Intel Corporation

Cn                 Verweildauer       P-States (Frequenzen)
C0 (Prozessor läuft)    (11,4%)         1,61 GHz     1,0%
C0                0,0ms ( 0,0%)         1,60 GHz     0,0%
C1 mwait          0,0ms ( 0,0%)         1200 MHz     0,0%
C2 mwait          3,7ms (88,6%)          800 MHz    99,0%


Aufwachen pro Sekunde : 237,3   Intervall: 10,0s
Stromverbrauch (ACPI-Schätzung): 13,2W (4,0 Std.) (Langzeit: 12,8W, 4,1 Std.)
     PowerTOP version 1.11      (C) 2007 Intel Corporation

Cn                 Verweildauer       P-States (Frequenzen)
C0 (Prozessor läuft)    (11,4%)         1,61 GHz     1,0%
C0                0,0ms ( 0,0%)         1,60 GHz     0,0%
C1 mwait          0,0ms ( 0,0%)         1200 MHz     0,0%
C2 mwait          3,7ms (88,6%)          800 MHz    99,0%


Aufwachen pro Sekunde : 237,3   Intervall: 10,0s
Stromverbrauch (ACPI-Schätzung): 13,2W (4,0 Std.) (Langzeit: 12,8W, 4,1 Std.)
Beides mit BT off, Bildschirm dunkel und W-Lan on.
Deswegen vorhin die Frage woran ich merke, das tlp was bringt. Es scheint nicht so zu sein, was mich irgendwie wundert.
 
Ich sehe da CPU > 10% im C0-State, im Idle normal wären 1-2%. Da laufen noch Sachen im Hintergrund -> mit [font='Courier New, Courier, mono']top[/font] überprüfen.

Außerdem ist kein C4 (oder niedriger) zu sehen, das geht gewaltig auf den Verbrauch! C4 kann man u.U. im BIOS aktivieren/deaktivieren. Vielleicht hat das jemand deaktiviert weil ihn das Fiepen störte. Ich kenne das X61 und seine BIOS Settings leider nicht, mach am Besten einen separaten Thread "kein C4" im Unterforum X-Serie auf.
 
[quote='linrunner',index.php?page=Thread&postID=768548#post768548]Diese Sachen können die laptop-mode-tools nicht:
  • SATA Link Power (nur min_power, nicht abhängig von der Stromquelle)
  • USB Autosuspend (keine Geräte-Blacklist)
  • PHC-Einstellungen
  • Akku-Ladeschwellen
  • Integriertes WLAN, Bluetooth und WWAN lassen sich selektiv beim Systemstart und vor dem Herunterfahren deaktivieren (Letzteres als Umgehungslösung für Hänger beim Herunterfahren)
  • Der Schaltzustand ein/aus des integrierten WWAN wird nach Suspend und Hibernation automatisch wiederhergestellt
  • tlp-stat: Statusbericht aller aktiven Einstellungen
  • die Funktion zum Ausschalten von Bluetooth ist den Stromverbrauch betreffend wirkungslos (netter Versuch ...)
Ich finde auch die Konfiguration der laptop-mode-tools unübersichtlich (besonders für Einsteiger) und dachte ich baue mal eine Alternative. :D[/quote]
hm. Hört sich interessant an. Hier würde mich mal genauer interessieren, was Du da genau machst. Irgendwelche Abweichungen zu meiner Beschreibung hier: http://thinkpad-wiki.org/Linux_Stromsparen?
Ansonsten muss man schon klar begründen, warum man gegenüber einem etablierten Tools eine neue Lösung positioniert. Für mehr "Noop Convenience" könnte man z.B. auch einfach ein GUI machen, dass die Config bearbeitet (wer sowas braucht).
Und mit spezieller Thinkpad HW hat es ja wohl nichts zu tun.
 
linrunner' schrieb:
top[/font] überprüfen.

Außerdem ist kein C4 (oder niedriger) zu sehen, das geht gewaltig auf den Verbrauch! C4 kann man u.U. im BIOS aktivieren/deaktivieren. Vielleicht hat das jemand deaktiviert weil ihn das Fiepen störte. Ich kenne das X61 und seine BIOS Settings leider nicht, mach am Besten einen separaten Thread "kein C4" im Unterforum X-Serie auf.

Ok, den Test mit dem Idle werde ich nochmal vornehmen. My fault..

Das mit dem c4 nun ja.. Das war ich. Das X61s piept für meine Ohren so unerträglich laut (hätts fast zurückgeschickt).. so dass ich es mit dem Trick aus diesem Artikel http://wiki.ubuntuusers.de/Booten und der Option "processor.max_cstate=3 - behebt das Problem des "C4-Fiepen"" zum schweigen gebracht habe..
Ok das könnte der Grund sein warum Windows mir 1 - 1 1/2 Std. mehr Akkulaufzeit anzeigt..
Hast du ne Idee wie ich das Problem sonst noch in den Griff bekommen könnte? Ich bin mit der Option eigentlich ganz glücklich, aber sobald ich das abschalte werde ich wahnsinnig..
 
Hi pibach![quote='pibach',index.php?page=Thread&postID=769902#post769902]hm. Hört sich interessant an. Hier würde mich mal genauer interessieren, was Du da genau machst. Irgendwelche Abweichungen zu meiner Beschreibung hier: http://thinkpad-wiki.org/Linux_Stromsparen?
Ansonsten muss man schon klar begründen, warum man gegenüber einem etablierten Tools eine neue Lösung positioniert. Für mehr "Noop Convenience" könnte man z.B. auch einfach ein GUI machen, dass die Config bearbeitet (wer sowas braucht).
Und mit spezieller Thinkpad HW hat es ja wohl nichts zu tun.[/quote]- Wenn Du es genau wissen willst, die Quellen stehen zur Verfügung. Sind alles ziemlich simple Shellskripte.
- Begründen tu ich nix. Ist einfach "Just for fun". :D
- Zu GUI-Programmierung fehlt mir (noch) der Skill
- tp_smapi ist ThinkPad-spezifisch (das Argument kam übrigens nicht von mir)
- Ich habe versucht, weitgehend ohne ThinkPad-spezifisches auszukommen. Im Umfeld bluetooth/wifi/wwan ist das aber noch nicht ganz sauber und ich teste (natürlich) nur auf ThinkPads

@Starko: zum C4-Fiepen hab ich (glücklicherweise) keine Erfahrung, schau dich mal mit der SuFu im Forum um (falls nicht schon getan ...).
 
[quote='linrunner',index.php?page=Thread&postID=770106#post770106]
- Begründen tu ich nix. Ist einfach "Just for fun". :D
[/quote]
Na, es ist doch ein tolles Projekt und hat Potenzial. Wär jetzt die Frage was man davon aufgreift. Dazu muss man aber etwas beschreiben und ggf. diskutieren. In die Quellen schaun? Jaja, coole Antwort ;)
 
Ich glaub ich versteh noch nicht worauf Du hinaus willst.

Thema Funktionsweise: schau einfach mal in /usr/lib/tlp/tlp-functions bzw. tlp-rf-func und /usr/sbin/tlp, da findest Du alles. Der Rest sind nur Aufrufer: für den Systemstart in /etc/init.d/tlp bzw. für den Wechsel der Stromquelle in /usr/lib/pm-utils/power.d/99tlp. Den Rest verrät Dir ein [font='Courier New, Courier, mono']dpkg -L tlp[/font]... :)
 
Ich hab ein Problem mit dem C4 State und ubuntu 9.10. Und zwar wird dieser C4 einfach nicht aktiv. Powertop meint, dass vom BIOS nur C0 bis C3 übermittelt werden. Dabei hab ich C4 nicht deaktiviert. Unter Windows funktionert dieser ja auch. Muss ich den irgendwo explizit aktivieren?
 
  • ok1.de
  • ok2.de
  • thinkstore24.de
  • Preiswerte-IT - Gebrauchte Lenovo Notebooks kaufen

Werbung

Zurück
Oben