Sonntag, 19. Mai 2024

Archiv

Green IT
Software soll zum Energiesparen beitragen

Einige Apps beanspruchen viel Rechenleistung. Und Rechenleistung braucht nun einmal Energie. Wenn der Smartphone-Akku nicht schon nach ein paar Minuten leer sein soll, müssen sich Entwickler etwas einfallen lassen. Ein erster Schritt in diese Richtung wurde bereits gegangen.

Von Jan Rähm | 14.12.2013
    Dank des Moore‘schen Gesetzes werden unsere Computer Jahr für Jahr leistungsfähiger. Doch - ganz erfreulich - bleibt die Leistungsaufnahme dabei zumindest seit ein paar Jahren halbwegs auf gleichem Level. Ganz anders dagegen Software und Daten. Deren, im übertragenen Sinne, Leistungsaufnahme steigt seit Jahren kontinuierlich, erklärt Ralph Hintemann, Wissenschaftler am Borderstep-Institute in Berlin.
    "Also die Übertragung von Multimedia-Daten übers Internet ist der Treiber des Internetverkehrs aktuell. Wir haben immer mehr Video-Dateien, Audio-Dateien, die über das Internet übertragen werden. Und gerade bei Video-Dateien übertragen wir auch immer mit einer höheren Auflösung. Während in der Anfangstagen von YouTube zum Beispiel eine Standard-Auflösung von 320 mal 240 Pixel realisiert wurde, kann ich heute mit einer HD-Auflösung mit 4K Pixel übertragen und das ist ein Faktor von über 160 in der Datenübertragungsrate allein durch dieses hochauflösende Video."
    Jetzt wollen Wissenschaftler und Entwickler den Energiehunger von Software und Daten eindämmen. Ein erster Schritt in diese Richtung wurde bereits gegangen. Ziel war es, die Software besser auf die Hardware abzustimmen, erklärt Wolfgang Lohmann von der Empa, der Eidgenössische Materialprüfungs- und Forschungsanstalt, St. Gallen.
    "In der Programmierung selber werden Techniken eingesetzt, die die neuen Hardware-Architekturen verwenden können. Beispielsweise eben Multicore-Architekturen, die sind mit herkömmlichen Arten von Programmierung einfach nicht besonders effizient auslastbar. Wir brauchen praktisch Programmiersprachen, die das Arbeiten mit parallelen Prozessoren unterstützen."
    Wird Software effizienter geplant und zielgenauer eingesetzt, sinkt gleichzeitig auch die Leistungsaufnahme. So soll Software dazu beitragen. die Hardware möglichst effizient zu nutzen.
    "Es ist einfach so, dass der eigentliche Energieverbrauch natürlich in der Hardware stattfindet, oder die Energieumwandlung um korrekt zu sein, aber die beste Hardware nützt natürlich nichts, wenn die Software diese Hardware uneffizient steuert. Beim Auto wäre der Vergleich eben ein hocheffizientes Ein-Liter-Auto meinetwegen, das aber den hundertfachen Umweg fährt und demzufolge wesentlich mehr an Ressourcen, also in diesem Fall Treibstoff verbraucht, als ein uneffizientes Auto, das die Strecke gradlinig zurücklegt."
    Wolfgang Lohmann spricht sich dafür aus, dass nicht die Programmierer von Software selbst effizienteren Code schreiben sollen. Vielmehr sollen die Werkzeuge wie Compiler und Interpreter besser werden. Sie sollen die Optimierungsarbeit machen und so den Menschen entlasten.
    "Unter Umständen könnte man darüber nachdenken, wie Programmiersprachen einfach zu benutzende Hilfsmittel bereitstellen, die es dem Programmierer erlauben, Annotationen oder Kommentare zu geben, welche Bereiche im Code besonders effizient aus laufzeittechnischen Gründen sein müssen, sodass der Compiler in der Lage ist, besser zu kontrollieren, welche Bereiche er optimieren kann in Hinsicht auf Energieeffizienz."
    Auch wenn erste Ansätze bereits zu sehen sind: Für Anwender von Desktop-Computern kommt der Strom aus der Dose und genau in dieser Denkweise werden Systeme und Anwendungen geschrieben, bemängelt Stefan Naumann. Der Professor am Institut für Softwaresysteme in Wirtschaft, Umwelt und Verwaltung an der Hochschule Trier erklärt, dass vor allem Entwickler für mobile und eingebettete Systeme schon längst gezwungen seien, auf den Energieverbrauch zu achten. Nun sollen auch alle anderen Programmierer mit am Ziel Grüne Software arbeiten.
    "Mein Gefühl ist, dass wir mit dieser Grünen Software eigentlich die Programmierer nochmal bei ihrer Urehre packen, nämlich ressourceneffizient zu programmieren. Wer früher noch den Brotkasten, den C64, programmiert hat, der hat um jedes Byte gekämpft, und dieser Gedanke ist so ein bisschen verlorengegangen, ist so mein Eindruck. Und wenn wir das über die grüne Software schaffen, dann haben wir auch Potenzial, nicht nur energieeffizienter zu produzieren, sondern auch gleichzeitig einen Fortschritt in der Software-Entwicklung zu erzielen."
    Das Label "Grüne Software" soll nicht nur ein Aushängeschild sein. Vielmehr stehen die praktischen Vorzüge bei der Diskussion im Vordergrund. Denn weniger Leistungsaufnahme heißt immer auch mehr Laufzeit für Notebooks, Handys, Tablets und eingebettete Systeme, weniger Kühlaufwand und einfachere Energieversorgung für Rechenzentren.