Vor einigen Tagen ging die PDC (Professional Developer Conference) zu Ende. Auf der Konferenz gab es viele interessante Vorträge. Auf dem Windows 7 Entwicklerblog wurden die Links zu den Vorträgen zu Windows 7 gepostet. So ist es jedem möglich, sich die Vorträge in aller Ruhe anzuschauen, obwohl man nicht dabei war. Einige Themen sind dabei wirklich interessant und sicher werde ich mir mit der Zeit noch den einen oder anderen Vortrag ansehen.
Der erste Vortrag, der es geschafft hat, mein Interesse zu wecken war “Extending Battery Life with Energy Efficient Applications”. In dem Vortrag ging es darum, wie man mit eigenen Anwendungen die Energieaufnahme des Rechners beeinflusst. Der Redner hat über einige Details darauf hingeführt, dass die Akkulaufzeit nur zu kleinen Teilen vom verwendeten Betriebssystem abhängt. Das betrifft auch die aufgenommene Leistung im Standby (unter Vista “Energie sparen”). Mir war das überhaupt nicht klar und daher fand ich das super interessant. Ich versuche zusammenzufassen. So wie ich das verstanden habe, gibt es zwei große Einflussmöglichkeiten auf den Energieverbrauch:
- Ein Prozessor hat zwei Energiezustände: Zum einen bis ca. 35% Last einen Sparmodus, in dem er wahnsinnig wenig Energie verbraucht und zum anderen darüber einen Modus, in dem sehr viel mehr Energie verbraucht wird. Ziel sollte es sein, den Prozessor dabei so gut wie immer in dem Bereich zu halten, in dem er wenig Energie verbraucht. Steht zum Beispiel eine Aufgabe an, die im Normalfall bei 60% Last ausgeführt wird, so sollte versucht werden, die Last lieber auf 100% zu erhöhen und die Aufgabe damit schneller abzuarbeiten, damit der Prozessor möglichst bald wieder unter die 35% Lastgrenze zurück geht.
- Für bestimmte Programme oder Funktionen ist es wichtig, Systemzustände abzufragen. Windows macht das per Default alle 15,6ms. Nun gibt es Entwickler, die meinen, dass diese Zeit zu lang eingestellt ist, und diese daher in ihrem Programm auf bis zu 1ms runter stellen. Das kann für bestimmte Anwendungen sinnvoll sein, sollte dann aber nur für einen kurzen benötigten Zeitraum geschehen. Jeder kann sich auch ohne weitere technische Ausführungen sicherlich gut vorstellen, dass dieses Vorgehen nicht positiv für die Energieaufnahme sein kann.
Praktisches Beispiel: Auf meinem Handy läuft Windows Mobile. Damit habe ich gute Erfahrungen gemacht, bis auf die Akkulaufzeit. Ich musste das Handy zum Schluss jeden Tag aufladen. Das führte ich auf meine Nutzung von UMTS zurück. Nach diesem Vortrag habe ich das Gerät zurückgesetzt. Gerade als ich das Gerät neu hatte habe ich viele Anwendungen ausprobiert. Nach dem Rücksetzen ist die Akkulaufzeit nun auf drei Tage gestiegen. Ich gehe stark davon aus, dass die Architektur bei Windows Mobile sehr ähnlich aufgebaut ist und da ebenfalls ein Programm war, das den Prozessor (auch im Standby) durch Runtersetzen der Abfragezyklen stärker belastet hat.
Bei Windows 7 werden hier viele Vorkehrungen getroffen, damit man die Akkulaufzeit weiter verlängert, indem man z.B. Aufgaben sammelt und sie dann gesammelt abarbeitet. Damit bleibt der Prozessor insgesamt länger im Energiesparmodus. Viele Dinge also, die lediglich unter der Haube geändert werden und von denen der Anwender wenig mitbekommt.
Tags: Akkulaufzeit, CPU, Energie, Keynote, Last, PDC, Vortrag, Windows 7, Windows Mobile