Daten|teiler
Kopieren als Kulturtechnik

Stromsparen mit Ubuntu auf dem Aspire 2920

25. Oktober 2009 von Christian Imhorst

Um mich vom Qt-Lernen abzulenken, schraube ich lieber an Ubuntus Karmic Koala auf meinem Acer Aspire 2920 herum. Der Lüfter läuft nämlich auch unter 9.10 recht häufig, das Notebook verbraucht insgesamt zu viel Energie und wird auch ziemlich warm:

$ sudo hddtemp /dev/sda
/dev/sda: WDC WD3200BEVT-22ZCT0: 58°C
$ sudo acpi -t
Thermal 0: ok, 46.0 degrees C
Thermal 1: ok, 47.0 degrees C

Deshalb habe ich die Prozessortaktung über den Governor beim Start standardmäßig auf Ondemand eingestellt. Nachdem man das Paket sysfsutils installiert hat, kann man die Datei /etc/sysfs.conf in einem Editor bearbeiten und folgende beide Zeilen eingefügen:

devices/system/cpu/cpu0/cpufreq/scaling_governor = ondemand
devices/system/cpu/cpu0/cpufreq/scaling_min_freq=1000000
devices/system/cpu/cpu1/cpufreq/scaling_governor = ondemand
devices/system/cpu/cpu1/cpufreq/scaling_min_freq=1000000

Nach dem Neustart laufen beide Prozessoren mit minimalem CPU-Takt auf 1,0 Ghz. Der Governor steht auf Ondemand und nicht, wie man meinen könnte, auf Powersave. Powersave heißt nämlich nicht, Energie zu sparen. Außerdem habe ich noch das Paket powernowd installiert und die Desktop-Effekte deaktiviert. Aber das reicht mir noch nicht.

Ich habe noch die laptop-mode-tools installiert und in der Datei /etc/default/acpi-support die Zeile ENABLE_LAPTOP_MODE von false auf true geändert, um den Laptop Modus zu aktivieren. Außerdem habe ich noch in der Datei /etc/laptop-mode/conf.d/cpufreq.conf folgende Parameter auf 1 gesetzt:

CONTROL_CPU_FREQUENCY=1 
CONTROL_CPU_THROTTLING=1

Diese Einstellungen versetzen aber die Festplatte recht häufig in den Ruhezustand, indem ständig ihr Kopf geparkt wird. Jeder Parkvorgang wird von der Festplatte als „Load_Cycle“ gezählt. Die meisten Hersteller geben für ihre Festplatten Werte zwischen 300.000 und 600.000 Load_Cycles an. Um zu prüfen, wie viele Parkvorgänge der Kopf meiner Festplatte im Akku-Betrieb durchführt, habe ich ein kleines Skript geschrieben, das die Anzahl der Parkpositionen innerhalb von 10 Minuten ermittelt. Für die Überprüfung muss das Paket smartmontools installiert sein. Die Idee für dieses Skript habe ich übrigens von cloudkicker.net:

#!/bin/sh
# LCC: Load Cycle Count
 
while :
# das '-n standby' weckt die Platte nicht
do smartctl -n standby -A /dev/sda | grep -E "(Load_Cycle_Count|ID)"
# 600 Sekunden = 10 Minuten
sleep 600
done

Die gesamte Anzahl der Parkpositionen der Festplatte ist unter RAW_VALUE aufgelistet. Das Ergebnis ist ein wenig erschreckend:

ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED RAW_VALUE
193 Load_Cycle_Count 0x0032 172 172 000 Old_age Always 85726
193 Load_Cycle_Count 0x0032 172 172 000 Old_age Always 85737
193 Load_Cycle_Count 0x0032 172 172 000 Old_age Always 85752

Das sind 26 Parkvorgänge in nur 20 Minuten im Batteriebetrieb, ganz schön viel, wenn man bedenkt, dass das ca. 80 Parkvorgänge in der Stunde sind. Dann würde die Festplatte bei einem täglichen Akku-Betrieb von 10 Stunden, wenn sie neu wäre, nur 750 Tage halten und würde somit nach etwa 3 Jahren das Zeitliche segnen. (Vgl. auch celedyr.net) Oder sehe ich das falsch?

Um die Lebenszeit der Platte zu erhöhen, habe ich den Wert in der Datei /etc/laptop-mode/laptop-mode.conf angepasst. Dort findet man folgende Zeilen:

BATT_HD_POWERMGMT=1
LM_AC_HD_POWERMGMT=254
NOLM_AC_HD_POWERMGMT=254

Von denen muss nur BATT_HD_POWERMGMT=1 auf BATT_HD_POWERMGMT=128 geändert werden. Der Parameter 128 ist ein Kompromiss aus zu niedrigem Stromverbrauch und hohem Verschleiß durch das Parken des Festplattenkopfes, während Parameter 254 keine Stromsparfunktionen bedeutet. Aber auch mit Parameter 128 komme ich auf etwa 80 Parkvorgänge in der Stunde. Zurzeit habe ich deshalb den Parameter 254 eingetragen, also keine Stromsparfunktionen.

HDD-Festplatten sind meiner Erfahrung nach einfach nicht zum Stromsparen gedacht. Vielleicht sollte ich sie gegen eine SSD-Platte wie die von Kingston austauschen. Trotz der bei SSDs vergleichsweise niedrigen Übertragungsraten liegt die Leistungsaufnahme zwischen 2 und 2,5 Watt unter Last. Im Ruhezustand liegt sie sogar bei nur sparsamen 0,45 Watt. Außerdem ist sie geräuschlos und bleibt relativ kühl.

Geschrieben in Gnu/Linux