Messung der Leistungsaufnahme unter Linux: Unterschied zwischen den Versionen

Aus ThinkPad-Wiki
Zeile 6: Zeile 6:
Bei ThinkPads besteht darüber hinaus die Möglichkeit, über das Kernelmodul '''tp_smapi''' direkt auf die Rohdaten des "Embedded Controller" zuzugreifen.
Bei ThinkPads besteht darüber hinaus die Möglichkeit, über das Kernelmodul '''tp_smapi''' direkt auf die Rohdaten des "Embedded Controller" zuzugreifen.


== Meßinstrumente ==
== "Meßinstrumente" ==
=== Powertop ===
=== Powertop ===
Das beim Chiphersteller Intel entwickelte Programm [http://www.linuxpowertop.org/ Powertop] steht in allen Distributionen über die Paketquellen zur Verfügung (Paketname '''powertop''').  
Das beim Chiphersteller Intel entwickelte Programm [http://www.linuxpowertop.org/ Powertop] steht in allen Distributionen über die Paketquellen zur Verfügung (Paketname '''powertop''').  

Version vom 15. Mai 2011, 11:44 Uhr

Einleitung

Zur Messung der Leistungsaufnahme bei Laptops werden die Informationen der Elektronik im Akkupack ausgewertet. Zur Bestimmung des aktuellen Ladezustands führt die Akkuelektronik über jeden Lade- und Entladevorgang Buch und mißt zu diesem Zweck laufend Akkustrom und -spannung.

Die ermittelten Daten werden regelmäßig an den Laptop übermittelt und lassen sich über das ACPI-BIOS abfragen. Das ACPI-BIOS führt allerdings bei der Ausgabe eine gleitende Mittelwertbildung durch, sodaß der echte Momentanwert nicht zugänglich ist. Nahezu alle für Linux und die verschiedenen Desktopumgebungen verfügbaren Programme zeigen diese ACPI-Werte an.

Bei ThinkPads besteht darüber hinaus die Möglichkeit, über das Kernelmodul tp_smapi direkt auf die Rohdaten des "Embedded Controller" zuzugreifen.

"Meßinstrumente"

Powertop

Das beim Chiphersteller Intel entwickelte Programm Powertop steht in allen Distributionen über die Paketquellen zur Verfügung (Paketname powertop).

Hinweis: powertop ist mit Root-Rechten aufzurufen.

Neben dem aktuellem Verbrauch [W] und der Restlaufzeit [h] (Werte auf Basis des ACPI-BIOS) werden weitere prozessorbezogene Kenndaten angezeigt:

  • Verweildauer in den Schlafzuständen (C-States) [%]
  • Verweildauer in den Taktstufen (P-States) [%]
  • Wakeups [1/s]
  • Verursacher von Wakeups, d.h. Programme die den Prozessor aufwecken

tp_smapi

Der Weg über das Kernelmodul tp_smapi eignet sich besonders zur exakten Ermittlung des momentanen Verbrauchs (s.o.). Für den Hauptakku kann man der Wert über die Datei /sys/devices/platform/smapi/BAT0/power_now abfragen (für den Ultrabayakku ist BAT0 durch BAT1 zu ersetzen). Der Wert aus power_now ist in mW angegeben und hat ein negatives Vorzeichen, da Strom entnommen wird.

Für eine kontinuierliche Anzeige im Sekundentakt kann man folgendes Shell-Kommando verwenden (Abbruch mit Str+C):

while true; do cat /sys/devices/platform/smapi/BAT0/power_now; sleep 1; done

Randbedingungen

Um eine Vergleichbarkeit der Messwerte zu erreichen, ist es wichtig reproduzierbare Randbedingungen einzuhalten. Folgendes Vorgehen ist dabei hilfreich:

  • Akkubetrieb
  • Leerer Desktop, d.h. keine Anwendungen gestartet
  • WLAN an und verbunden
  • Bluetooth und WWAN(UMTS) aus
  • Keine USB Geräte angeschlossen
  • Keine Plattenaktivität im Hintergrund
  • Minimale LCD-Helligkeit
  • Notebook > 5 min nicht anfassen

Hinweis: die so gewonnenen Meßwerte stellen nicht den typischen Verbrauch des Notebooks im Betrieb dar!

Links

  • Powertop - Anleitung bei ubuntuusers.de
  • Powertop - Projektseite (englisch) - Vorsicht: die Hinweise auf der Seite "Tips & Tricks" sind hoffnungslos veraltet.
  • LessWatts.org - Webseite von Intel zum Thema "Stromsparen mit Linux" (englisch) - auch hier teilweise veraltete Hinweise.