Linux Stromsparen
Stromverbrauch Windows versus Linux
Linux lag bezüglich des Stromverbrauchs lange abgeschlagen hinter Windows. Daher war Linux auf Notebooks nicht besonders verbreitet. Diese Situation hat sich seit stromsparenden Änderungen am Linux-Kernel umgekehrt (insbesondere durch "dynticks" seit Kernel 2.6.21 vom April 2007). Linux ist inzwischen nah am Optimum was Kernel-Interrupts und CPU-States angeht. Im Office-Betrieb hat man >95% C3/C4-Sleep-States. Mehr holt da auch kein Windows raus (leider gibt es kein Tool, um das auf Windows genauer festzustellen).
Aber die CPU macht nur einen kleineren Anteil des Gesamtstromverbrauchs aus. Er hängt auch sehr stark von der spezifischen Hardware und an deren Treibern ab. Für älteren Hardware sind stromsparende Treiber oft nur für Windows vorhanden. Auf einem T40 hat man also schlechte Karten, den Stromverbrauch unter Linux auf die Verbrauchswerte von Windows zu drücken. Für die neueren Modelle sind die Linux-Treiber aber recht weit. Hier hat Linux in den letzten Monaten enorm aufgeholt. Insbesondere die NVIDIA-Grafikkarten werden gutunterstützt. Auf T60 und T61 bzw. den entsprechenden Modellen der R-Serie mit NVIDIA Karten verbraucht Linux daher etwas weniger als Windows. Auch auf den ThinkPads mit Intel-Grafik, beispielsweise der x-Serie, liegt der Stromverbreich leicht unterhalb von Windows. Allerdings sind dazu nachfolgende Tipps zu berücksichtigen.
Linux Stromspar-Tipps
- Kernel >=2.6.24 (Standard in Ubuntu Hardy)
- Festplatte mit Laptop Mode kontrollieren und zum Stromsparen abschalten (wird bei Office Arbeiten oder surfen nicht benötigt)
- mit PowerTOP die laufenden Tasks auf Wakeup-Übeltäter durchforsten und ggf. beenden
- Optional: Undervolting
Stromspar-Änderungen persistent machen
- im Startupscript etc/rc.local kann man die Einstellungen persistent machen:
# By default this script does nothing. # Trackpoint sensibler echo -n 250 > /sys/devices/platform/i8042/serio1/sensitivity # und schneller echo -n 200 > /sys/devices/platform/i8042/serio1/speed # Wake on Lan aus ethtool -s eth0 wol d # PCI Geräte stromsparen for i in /sys/bus/pci/devices/*/power_level ; do echo 5 > $i ; done # sound stromsparen nach 10 sec echo 10 > /sys/module/snd_hda_intel/parameters/power_save # xbacklight aktivieren (Workaround für einen Bug in Hardy-Alpha-6) xrandr --output LVDS --set BACKLIGHT_CONTROL native # USB Autosuspenden for i in `find /sys -name autosuspend -exec echo {} \;` ; do echo "1" > $i ; done # Laptop Mode aktivieren laptop_mode start # governor auf ondemand echo ondemand > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor # Stromsparenden Scheduler aktivieren echo 1 > /sys/devices/system/cpu/sched_mc_power_savings # AHCI Link Power Management. Auskommentiert wenn statt AHCI # "Compatibility Mode" im Bios aktiviert ist echo min_power > /sys/class/scsi_host/host0/link_power_management_policy exit 0
- Und unnötige Kernel-Module in die Blacklist /etc/modprobe.d/blacklist (Späteres manuelles Nachtladen der Module ist kein Problem):
# module nicht laden wegen Wakeups blacklist pcmcia blacklist yenta_socket blacklist ehci_hcd blacklist uhci_hcd blacklist usbcore blacklist ohci1394 blacklist sbp2 blacklist ieee1394
Einige Module werden aber schon während der initramfs-Phase geladen. Die blacklist auch dort durchsetzen durch:
update-initramfs