closeDieser Beitrag wurde vor mehr als sechs Monaten veröffentlicht. Bedenke bitte, dass die hier angebotene Information nicht mehr aktuell und gültig sein könnte. Informiere dich daher bitte auch an anderer Stelle über dieses Thema. Sollten sich neue Informationen ergeben haben, so kannst du mich auch gerne auf diese über einen Kommentar hinweisen. Vielen Dank!

Arbeitet man mit einem Notebook unterwegs, so will man die maximale Akkulaufzeit aus dem Gerät herauspressen. Ein beliebter “Trick” ist die Taktrate der CPU auf ein Minimum herabzusetzen. Bei niedrigeren Taktraten wird die CPU mit weniger Spannung versorgt und nimmt so weniger Leistung auf, so der Glaube. Das ist zwar korrekt, doch leider ist es nur die halbe Wahrheit…

Dazu gibt es in GNOME das CPU Frequency Applet, das den Benutzer durch die Option “Powersave” schnell dazu verleitet diese Einstellung im mobilen Betrieb zu verwenden. Öfters liest man Support-Anfragen in dieser Art…

Ich würde gerne mein Ubuntu 9.04, das auf einem Notebook läuft, so konfigurieren, dass es die CPU-Policy auf “Powersave” stellt, wenn es per Akku betrieben wird und auf “OnDemand” schaltet, wenn es an der Steckdose hängt.

Wie Eingangs angesprochen ist die Taktrate der CPU nur ein kleines Zahnrad im Räderwerk des Energiemanagements einer CPU. Viel wichtiger sind die Schlafmodi der CPU, in die ein Prozessor jedoch nur fallen kann, wenn es nichts mehr zu tun gibt. Im Normalfall (d.h. “normaler” Betrieb: Keine Spiele, keine andauernden Berechnungen) spart man mit “Powersave” KEINE Energie. Auch wenn diese Option fälschlicherweise “Powersave” heißt, der Akku geht damit eher schneller zur neige.

Das GNOME Frequency Applet zur Steuerung der Taktraten

Das GNOME Frequency Applet zur Steuerung der Taktraten

Ich zitiere mal Making sure we do power management the right way von Matthew Garrett. Matthew ist ein Angestellter von Canonical und dort unter Anderem für den Kernel zuständig.

OriginalÜbersetzung
To a first approximation, the Powersave governor will only save you power if you’re playing 3D games. The performance governor will basically never give you extra performance. Don’t use them. Use ondemand instead. Do not make it easy for your users to choose them. They will get it wrong, because it is difficult to explain why this result is true.Der Powersave-Regler wird nur Energie sparen, wenn du 3D Spiele spielst. Der Performance-Regler wird dir praktisch nie extra Leistung liefern. Verwende diese Einstellungen nicht. Du solltest “ondemand” verwenden. [...] Entwickler sollten es vermeiden diese Optionen zur Auswahl anzubiten, da Enduser diese Begriffe falsch interpretieren werden.

Weitere Informationen und ein anschauliches Beispiel gibt Arjan van de Ven, der Kopf eines Teams bei Intel, das sich um Power Management und die Performance von Linux auf Intel Hardware kümmert.

OriginalÜbersetzung

it’s a bit complex to explain, but it’s better to execute the code you need to execute at full speed, and then really quickly go idle, than it is to execute at a much lower speed.

Maybe a simple example (I plucked these numbers out of the air, they don’t represent any real cpu that exists) will help: Say you have a cpu that consumes 40 Watts at full speed, and 30 Watts at half speed, and 4 Watts when idle. You have something to do, lets say mp3 decoding of 1 second of audio, and that takes a full second at half speed, and one second at full speed.

At full speed decode + idle, that is half a second at 40 watts (20 Joules) and half a second at 4 Watts (2 Joules); total is 22 Joules. At half speed decode, that is a full second at 30 Watts, so 30 Joules.

So, what ondemand does would cost 22 Joules, while a “hit the exact frequency” governer would cost you 30 Joules…..

Es ist schwierig zu erklären, aber es ist besser ein Code bei voller Taktrate auszuführen und dann schnell in den Leerlauf zu fallen, als den selben Code bei einer viel niedrigen Taktrate auszuführen.

Vielleicht verdeutlicht ein einfaches Beispiel den Zusammenhang (Die Zahlen repräsentieren keine reale CPU, sie sind aus der Luft gegriffen): Angenommen man hat eine CPU, die 40 Watt bei voller Taktrate, 30 Watt bei halber und 4 Watt im Leerlauf benötigt. Nun lässt man den Rechner arbeiten, beispielsweise decodiert man eine MP3-Datei mit einer Länge von einer Sekunde. Dies dauert bei halber Taktrate eine ganze Sekunde und eine halbe Sekunde bei voller Taktrate [Anmerkung: Hier hat sich der Autor wohl vertippt].

Bei voller Geschwindigkeit benötigt dieser Vorgang 22 Joules (0,5 Sekunden bei 40 Watt und 0,5 Sekunden bei 4 Watt), drosselt man nun die CPU und decodiert bei halber Taktrate dauert der Vorgang eine ganze Sekunde bei 30 Watt, so dass 30 Joules Energie benötigt werden. Ondemand benötigt also 22 Joules, während der “Benutze nur diese eine Taktrate”-Regler dich 30 Jules kosten würde.

Will heißen, je schneller die CPU wieder in Tiefschlaf fallen kann, desto mehr Energie wird sie sparen. Indem man sie nun zwingt immer mit niedrigster CPU-Rate zu laufen, verhindert man dass sie möglichst schnell wieder Einschlafen kann. Mit Powersave spart man nur dann Energie, wenn die CPU sowieso bei jeder Taktrate voll ausgelastet wäre (also bspw. bei 3D-Spielen oder Berechnungen). Im normalen Betrieb, egal ob Akku oder Netz, sollte man OnDemand benutzen um Energie zu sparen.

Ich persönlich benutze Powersave um den Lärm, den der Lüfter meines Laptops macht, zu kontrollieren. Arbeitet man mit Anderen in einer leisen Umgebung, so ist ein permanent hochdrehender Lüfter doch arg nervig…

Weitere interessante Ideen bzgl. Energiesparen bei Computern im Allgemeinen und Laptops im Speziellen findet man auf thinkpad-wiki.org unter Linux Stromsparen und Vista Stromverbrauch senken.

Das könnte Euch auch gefallen...

Anzeige...