Entwickeln eines energieeffizienten und universell einsatzfähigen Windows-Systems

Die Entwicklung von Windows 8

Einblicke in die Arbeit des Windows-Entwicklerteams

Entwickeln eines energieeffizienten und universell einsatzfähigen Windows-Systems

  • Comments 4

In diesem Beitrag stellen wir das Thema der Entwicklung von Betriebssystemen im Hinblick auf Stromeinsparung vor. Die Energieverwaltung von Betriebssystemen ist in zweierlei Hinsicht immer wichtiger geworden. Zunächst müssen wir zur Kenntnis nehmen, dass bei der Markteinführung von Windows 8 zwei Drittel aller Computer als tragbare Geräte ausgeliefert werden, die zum Teil oder die meiste Zeit mit Akku betrieben werden. Außerdem besteht eine erhöhte Nachfrage nach Desktopcomputern mit geringerer CO2-Bilanz, um so viel Energie wie möglich zu sparen. In allen Fällen geht dies über den bloßen Standby-, Schlaf- und Startmodus hinaus, denn es geht darum, den gesamten Energieverbrauch des Betriebssystems zu senken und den Support des Betriebssystems moderner Hardware mit energiesparenden Funktionen auszustatten. Dieser Beitrag wurde von Pat Stemen, dem Programmmanager unseres Kernelteams, verfasst.
– Steven

Akkulebensdauer und Energieverbrauch bleiben auch in Zukunft die wichtigsten Themen in der Computerindustrie. Wir möchten Ihnen unsere Überlegungen in Bezug auf die Energieverwaltung für Windows 8 mitteilen und darstellen, wie wir den täglichen Energieverbrauch messen. Energieverwaltung ist eine wichtige Funktion des Betriebssystems, die für alle Chips und alle Computertypen von großer Bedeutung ist.

Unsere Ziele

Bei der Entwicklung der Energieverwaltung von Windows 8 haben wir drei Ziele:

  • Energieersparnis mit der Hardware. Wir haben Windows 8 so entwickelt, dass die Energieeffizienz der Hardwareplattform unterstützt wird, unabhängig davon, ob es sich beim System um ein SoC-basiertes Windows-Tablet oder einen SLI-Gaming-PC handelt. Die Schnittstellen zur Energieverwaltung wurden für alle Plattformen einheitlich entwickelt. Dadurch können sich unsere Hardwarepartner und Anwendungsentwickler mehr auf ihre Innovationen und Erfahrungen konzentrieren und müssen sich nicht mit den Unterschieden in der Plattformhardware und bei der Energieverwaltung beschäftigen.
  • Lange Akkulaufzeiten. Mit Windows 7 wurde ein deutlich niedrigerer Energieverbrauch und eine höhere Energieeffizienz erreicht, besonders bei der Akkulaufzeit mobiler PCs. (Nähere Informationen zum Thema finden Sie im e7 Blog-Beitrag.) In Windows 8 möchten wir dieselbe Effizienz erhalten, die auf bisherigen Computern erzielt wurde, und Windows gleichzeitig verbessern.
  • Unterstützung für die Energieverwaltung von Smartphones. Einer der größten Vorteile der System-on-Chip (SoC) Plattformen, die wir auf der CES und //BUILD/ vorgestellt haben, ist ihre Eigenschaft, schnell einen sehr energiesparenden Leerlaufmodus erreichen zu können. Wir möchten diesen extrem niedrigen Energiebedarf des Smartphone-Energiesparmodells mit permanenter Verbindung und sofort verfügbaren Funktionen für Windows 8-fähige Computer nutzen.

Die Gründe

Die meisten von uns dürften bereits einen Vorteil effizienter Energieverwaltung kennen – Mobilgeräte mit langer Akkulebensdauer. Aus gutem Grund steht die Akkulaufzeit von Mobilgeräten im Vordergrund – schließlich nutzen wir letztere immer häufiger im Akkubetrieb. Für lange Akkulaufzeiten ist eine gute Abstimmung zwischen der zugrunde liegenden Hardware, dem Betriebssystem und der Anwendungssoftware besonders wichtig. (Auch die Kapazität der Akkus und ihre Leistung im Lebenszyklus haben einen großen Einfluss auf die Laufzeit.)

Weitere klare Vorteile guter Energieverwaltung bei PCs sind neben der Akkulaufzeit verminderte Energiekosten und die Schonung der Umwelt. Die Vorzüge von Desktop-PCs und Datencenter-Servern mit Energieverwaltung bestehen darin, dass weniger Ausgaben für den Betrieb und die Kühlung solcher Systeme anfallen. Infolgedessen werden auch weniger Treibhausgase produziert. Die Tragweite kann gar nicht hoch genug eingeschätzt werden: schon sehr kleine, gut umgesetzte Änderungen an Windows können aufgrund des Verbreitungsgrads des Betriebssystems gewaltige positive Auswirkungen auf die Umwelt haben. Auf vielen Märkten weltweit rücken durch den steigenden Stromverbrauch alle Aspekte energieeffizienter Arbeitsplätze in den Vordergrund. Bei Computern besteht ein hohes Einsparpotenzial an Energie.

Energieverwaltung erfordert eine feine Abstimmung zwischen der Systemleistung und der Reaktionszeit. Die Prozessorleistung kann vergleichsweise leicht gesenkt werden, um Energie zu sparen, dadurch erhöht sich jedoch der Zeitaufwand zur Verarbeitung bestimmter Aufgaben. Die feine Ausbalancierung von Energie und Leistung ist eine der wichtigsten Anforderungen für die meisten Windows-Benutzer.

Wir beobachten auch zahlreiche technische Blogs über die neuesten Prozessor- und Hardwareplattformen, die nicht nur über die Leistung in GHz und Benchmarks berichten, sondern auch über den Energieverbrauch bei bestimmter Arbeitsauslastung. Bei diesen Berechnungen werden Energie und Leistung als Energieeffizienz zusammengefasst – d. h., wie viel Energie wird aufgewendet, um eine bestimmte Arbeitsauslastung zu verarbeiten. "Leistung pro Watt" bezeichnet denselben Sachverhalt.

Am interessantesten ist für uns, welchen Einfluss die Energieverwaltung auf alle Aspekte der Entwicklung von Computerplattformen ist. Energieverwaltung hat direkte Auswirkung auf die Größe, das Gewicht, den Geräuschpegel (Lüfter und deren Geschwindigkeit), die Gehäusetemperatur, Kosten, Bildschirmgröße, Auflösung, RAM usw. Angestrebt wird Hardware, die flach, leicht und immer online ist und den ganzen Tag im Akkubetrieb läuft. Wir sind stolz darauf, an der Energieeffizienz von Windows mitwirken zu können.

Energie als Ressource

Wir betrachten den Stromverbrauch als entscheidenden Faktor des Betriebssystems, genauso wie die CPU-Auslastung, den Speicherbedarf und die Festplattenaktivität. Da Energie eine wichtige Größe darstellt, überwachen wir ständig, wie viel Windows davon in den täglichen Builds von Windows 8 verbraucht. Dadurch können wir Schwankungen im Energieverbrauch sofort erkennen und eng mit dem Entwicklungsteam zusammenarbeiten, um die Ursache des Problems zu finden und die erforderlichen Änderungen zu testen. Wenn der Energieverbrauch gesenkt wurde, haben wir ein neues Niveau erreicht, an dem sich zukünftige Builds messen lassen müssen.

Der reine Energieverbrauch (z. B. Milliwatt) eines jeden Windows-PCs ist das Ergebnis mehrerer Plattformfaktoren, darunter CPU und Chipsatz, die Art und Größe des Arbeitsspeichers, Geschwindigkeit, Art und Kapazität des Speicherlaufwerks, Bildschirmgröße usw.

Um eine einheitliche Basis zu haben, legen wir mehrere Referenzplattformen fest und messen deren Energieverbrauch bei der Entwicklung von Windows 8. Für unsere Referenzplattformen wählen wir Geräte aus, die unsere Kunden am häufigsten verwenden. Darunter sind Plattformen von allen wichtigen Chipherstellern. Als Grundlage dient uns der Energieverbrauch von Windows 7 und Windows 7 SP1, den wir während des Entwicklungsprozesses mit den Daten der Windows 8-Builds vergleichen.

Auf dem Diagramm wird die Leerlaufleistung verschiedener Windows 8-Builds (von 8047 bis 8144) zwischen 9.000 und 10.000 mW dargestellt, bei Build 8114 betrug sie jedoch mehr als 10.500 mW.
Gesamte System-Leerlaufleistung, gemessen in unserem Labor für eine Referenzplattform.
Sie können eine Änderung feststellen, die zu einer Erhöhung um etwa 1,25 W führte. Dies wurde im folgenden Build behoben.
Beachten Sie, dass Abweichungen zwischen den Testläufen und den Builds normal sind.

Bei jedem unserer Referenzsysteme messen wir den Energieverbrauch für viele Software-Arbeitsauslastungen. Die von uns gemessenen Arbeitsauslastungen entsprechen den Akku-Benchmarks von Drittanbietern insofern, dass sie für die häufigsten Computernutzungsszenarien repräsentativ sind. Zu den wichtigsten Arbeitsauslastungen gehören Leerlauf, Surfen im Internet, Video- und Audiowiedergabe und Standby.

Vielleicht denken Sie, dass die Messung für den Leerlauf keinen Sinn macht, schließlich starten Benutzer ihre Computer nicht, um nur untätig auf die Startseite zu starren. Trotzdem betrachten wir den Leerlauf als Grundlage des Energieverbrauchs des Systems. Der Leerlauf stellt die geringste Aktivität dar, die das System bei Betrieb aufweist. Wenn der Energieverbrauch im Leerlauf gesenkt wird, reduziert sich auch der Grundverbrauch der meisten anderen Arbeitsauslastungen, wie Video- und Audiowiedergabe. Außerdem beinhalten viele Arbeitsvorgänge einen nicht zu unterschätzenden Leerlauf - von kurzen Zeitspannen zwischen Tastaturanschlägen bis hin zu Minuten bei Übergängen von Präsentationsfolien.

Üblicherweise wird der Energieverbrauch eines mobilen Windows-PC mit einem Akkulaufzeit-Test gemessen, bei dem der Akku zunächst vollständig aufgeladen wird und dann bei wiederholter Arbeitsbelastung wieder ganz entleert wird. Diese Methode funktioniert, ist allerdings fehleranfällig, da die Akkukapazität normalerweise über mehrere Ladungen und Entladungen hinweg sinkt. Jeder Akkulaufzeit-Test stellt einen weiteren Lade-/Entladezyklus dar, und wir testen jeden Tag. Daher könnten aufgrund der nachlassenden Akkuleistung die Messergebnisse abweichen.

In unserem Forschungslabor haben wir ein Energiemessgerät, mit dessen Hilfe wir Referenzplattformen mit Gleichstrom versorgen und den Verbrauch messen können. Wir haben das Labor in unserem IE Blog-Beitrag über den Energiebedarf des Browsers erwähnt, jedoch nicht, dass wir auch über eine Anzahl von Referenzlaptops verfügen, bei denen wir den täglichen Energieverbrauch messen. Die Stromversorgung und ihre Messfunktion werden über Testsoftware gesteuert, sodass wir ständig Windows installieren, den Stromverbrauch messen und die Ergebnisse dann für jeden neuen Windows 8-Build auswerten können.

Ein Regal mit Geräten zum Messen des Gleichstromverbrauchs
Gleichstromversorgung mit integrierter Messfunktion

Ein Windows 8-Laptop, angeschlossen an ein Gerät, das den Energieverbrauch misst
Referenzplattform zum Messen von und zur Versorgung mit Gleichstrom

Auswirkungen der Software auf den Energieverbrauch

Software kann den Energieverbrauch beeinflussen, indem bestimmte Ressourcen wie CPU, Datenträger, Arbeitsspeicher usw. genutzt werden, und jede dieser Ressourcen verbraucht Strom. Zudem beeinflusst Software den Energieverbrauch über das Betriebssystem und die Treibersoftware, die den Stromsparmodus der Hardware regeln.

In Windows 8 gibt es drei wichtige Neuerungen, die sich positiv auf den Energieverbrauch durch Software auswirken – das Metro-Stil-Anwendungsmodell, Energieoptimierung im Leerlauf und eine neue Gerätelaufzeit-Energieverwaltung. In diesem Blog-Beitrag geben wir eine kurze Übersicht darüber, wie der Energieverbrauch durch diese Innovationen gesenkt wird.

Das Metro-Stil-Anwendungsmodell

Viele Benutzer kennen den Einfluss von Software auf den Energieverbrauch bereits. Vielleicht haben Sie auf Ihrem Handy eine App, bei der der Akku schneller leer wird, oder Sie haben gehört, wie der Laptoplüfter bei einem Spiel oder einer Arbeitsblattberechnung anspringt. All dies sind Beispiele für Anwendungen, die die CPU, GPU, Netzwerkzeit, den Datenträger und/oder Arbeitsspeicher direkt in Anspruch nehmen.

Eine der Innovationen zur Energieverwaltung von Windows 8 ist kein Feature zur Energieverwaltung, es ist das Metro-Stil-Anwendungsmodell. Das Metro-Stil-Anwendungsmodell wurde von Anfang an im Hinblick auf Energieeinsparungen entwickelt. Der Vorteil der Energieverwaltung besteht darin, dass das Modell Entwicklern dabei hilft, sicherzustellen, dass ihre Anwendung nur zur richtigen Zeit läuft – Anwendungen im Hintergrund werden bei Inaktivität angehalten, sodass sie weder Ressourcen noch Energie verbrauchen.

Natürlich wissen wir, dass Hintergrundaktivität ein wichtiger Bestandteil von Anwendungen ist, die immer verbunden sind und jederzeit reagieren können. Das Metro-Stil-Anwendungsmodell und der zugrunde liegende WinRT unterstützen die Hintergrundaktivität durch neue Funktionen, genannt Hintergrundaufgaben. (Weitere Informationen finden Sie unter Einführung in Hintergrundaufgaben.) Durch Hintergrundaufgaben können Hintergrundaktivitäten leicht auf energiesparende Weise ausgeführt werden. Außerdem können Entwickler damit weiterhin reaktionsschnelle Anwendungen erstellen. Die Mechanismen unterscheiden sich jedoch vom Win32-Modell aufgrund des Bedarfs an schnellen und flüssigen Benutzeroberflächen und anderen wichtigen Eigenschaften von Metro-Stil-Apps (siehe Acht Vorteile von Metro-Stil-Apps).

Wir haben Hintergrundaufgaben und das gesamte Metro-Stil-Anwendungsmodell entwickelt, um Anwendungen noch reaktionsschneller zu gestalten und gleichzeitig Systemeigenschaften wie Energieverbrauch und Speicherbedarf zu verbessern.

 Die Registerkarte "Prozesse" (Detailansicht) mit mehreren Metro-Stil-Anwendungen im Modus "Angehalten", alle bei 0 % CPU und zwischen 17 und 85,1 MB Arbeitsspeicher
Task-Manager mit Metro-Stil-Anwendungen im Modus "Angehalten"

Energieoptimierung im Leerlauf

Die Software kann entscheidenden Einfluss auf den Stromverbrauch haben, selbst wenn durch zeitweiligen Leerlauf nur wenige Ressourcen genutzt werden. Verbesserungen hinsichtlich des Leerlaufprozesses bezeichnen wir als Energieoptimierung im Leerlauf.

Die Prozessoren und Chipsätze der meisten Computerplattformen ermöglichen Leerlaufmodi, sodass die Hardwareplattform den Takt anhalten oder den Strom für bestimmte Chips vollständig abschalten kann, wenn diese nicht in Betrieb sind. Diese Leerlaufmodi sind für eine lange Akkulaufzeit entscheidend, jedoch ist für sie eine Mindestdauer erforderlich, d. h., der Leerlauf muss lange genug anhalten, damit sich der Wechsel zwischen Leerlauf- und Arbeitsmodus hinsichtlich des verbrauchten Stroms lohnt. Dies liegt daran, dass beim Aktivieren und Verlassen des Leerlaufs eine gewisse Menge Strom verbraucht wird. Die Software nutzt den Leerlaufmodus dann am effizientesten, wenn der Leerlauf so selten wie möglich verlassen wird und so lange wie möglich andauert.

Wir verfolgen die Effizienz des Leerlaufs von Windows 8 mit der integrierten ETW-Ablaufverfolgung, einigen Erweiterungen der Windows-Leistungsanalyse und einem einfachen Histogramm. Im Folgenden sehen Sie die Unterschiede der Leerlaufdauer zwischen Windows 7 und Windows 8. Bei aktiviertem Bildschirm haben wir in 35 % der Fälle die maximale Leerlaufdauer von 15,6 ms in Windows 7 auf mehr als 100 ms in Windows 8 deutlich verlängert. Bei ausgeschaltetem Bildschirm und während dem Connected Standby-Modus dauern die Leerläufe sogar noch länger, derzeit um Zehntelsekunden.

Diagramm mit dem Vergleich der Leerlaufdauer unter Win7 und Win8 bei aktiviertem Bildschirm. Unter Win7 sind 95 % der Leerläufe 10-16 ms lang. Unter Windows 8 ist dies nur bei 35 % der Fall.

Gerätelaufzeit-Energieverwaltung

PC-Akkus haben dann eine lange Laufzeit, wenn alle Geräte, einschließlich Prozessor, Speicher und Peripheriegeräte in Strom sparende Modi wechseln. In modernen Computern verfügt fast jedes Gerät über eine Energieverwaltungstechnologie, und die Gerätelaufzeit-Energieverwaltung legt fest, wie diese Technologien nahtlos und ohne Beeinträchtigung für den Benutzer genutzt werden kann. Ein gutes Beispiel für die Gerätelaufzeit-Energieverwaltung ist das automatische Abblenden des Bildschirms nach einem Zeitlimit in Windows 7.

Die Bedeutung der Energieverwaltung wird auch klar, wenn bei vielen Systemen, bei denen die Stromverwaltungsfeatures für einzelne Komponenten nicht aktiviert werden, die Akkulaufzeit ganz schnell um bis zu 25 % sinkt. (Bemerkenswert ist auch, dass es fast ebenso nachteilig ist, ein Gerät im Geräte-Manager zu deaktivieren – die meisten Geräte werden von der Firmware im höchsten Energiemodus gestartet und benötigen einen Gerätetreiber, um auf einen nominalen Stromverbrauch kommen.) Einige Energieverwaltungsprobleme bei Geräten können mit dem integrierten Hilfsprogramm powercfg.exe und dem Parameter /ENERGY unter Windows 7 diagnostiziert werden. Die Ausgabe des /ENERGY-Parameters ist eine HTML-Datei, in der Sie darüber informiert werden, welche Geräte und Software besonders viel Strom verbrauchen. Fast immer ist es der beste Weg, das Originalabbild und die Treiber des OEM-Händlers für den PC zu verwenden, damit die Geräte Ihres PCs am besten mit der Energieverwaltung zusammenarbeiten.

Eine effiziente Energieverwaltung von Geräten wird durch die jeweiligen Gerätetreiber geleistet, und zwar in Verbindung mit der Energieverwaltung des Kernels und der Plattformfirmware. Durch die Energieverwaltung können diese Gerätetreiber die erforderlichen Energieverwaltungsroutinen umsetzen und alle Betriebsmoduswechsel mit anderen Geräten auf dieser Plattform koordinieren.

Für Windows 8 haben wir ein neues Geräte-Energie-Framework erstellt, mit dem alle Geräte ihre Stromverwaltungsfunktionen kommunizieren und mit einem speziellen Treiber namens Power Engine Plug-in oder PEP (für SoC-Systeme entwickelt) integrieren können. Das PEP wird vom Chiphersteller bereitgestellt und kennt alle SoC-spezifischen Anforderungen zur Energieverwaltung. Dadurch müssen Gerätetreiber wie unserer USB-Hostcontroller oder ein Tastaturtreiber nur einmal entwickelt werden, wobei sie auf allen Plattformen – von SoC-basierten Computern bis hin zu Servern in Datencentern – eine optimale Energieverwaltung gewährleisten.

Wir arbeiten intensiv mit allen unseren Partnern zusammen, um die Technologien für lange Akkulaufzeiten und niedrigen Stromverbrauch anbieten zu können, die wir in unseren Windows 8-PCs haben wollen.

--Pat Stemen

  • Loading...
Leave a Comment
  • Please add 5 and 7 and type the answer here:
  • Post