Messung der Leistungsaufnahme unter Linux: Unterschied zwischen den Versionen
Zeile 22: | Zeile 22: | ||
Für eine kontinuierliche Anzeige im Sekundentakt kann man folgendes Shell-Kommando verwenden (Abbruch mit Str+C): | Für eine kontinuierliche Anzeige im Sekundentakt kann man folgendes Shell-Kommando verwenden (Abbruch mit Str+C): | ||
while true; do | while true; do cat /sys/devices/platform/smapi/BAT0/power_now; sleep 1; done | ||
== Randbedingungen == | == Randbedingungen == |
Version vom 15. Mai 2011, 11:42 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, sind folgende Randbedingungen 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.