Der Energiebedarf des IT-Sektors steigt markant. Der Treiber heißt Digitalisierung und unser gesamtes (Wirtschafts-)Leben hängt davon ab, aufgrund der Klimakrise sollte das Bewusstsein für Green IT ebenso steigen. Dazu schreibt die Harvard Business Review über einen bis jetzt wenig beachteten Faktor unter dem Titel How green is your Software: „Unternehmen können Software zu einem integralen Bestandteil ihrer Nachhaltigkeitsbemühungen machen, indem sie ihren CO2-Fußabdruck bei der Gestaltung, Entwicklung und Bereitstellung berücksichtigen“. Bis jetzt legte man bei Green IT die Aufmerksamkeit auf die Hardware: weniger Stromverbrauch von Servern, mehr Energieeffizienz bei Kühlsystemen und nachhaltige Energieversorgung von Rechenzentren. Doch auch bei Software kann und muss Energie gespart werden.
Was Software mit Ressourcensparen zu tun hat
Software besteht nicht aus Rohstoffen, sondern ist ein immaterielles Gut, daher ist der Zusammenhang zwischen Software und Ressourcensparen auf den ersten Blick nicht sichtbar; dennoch brauchen Programme Energie, indem sie Hardware nutzen und Strom verbrauchen, beschreibt Mittelstand 4.0, das Kompetenzzentrum IT-Wirtschaft, warum viele Unternehmen bei Green IT nicht gleich an Software denken.
In einem internationalen Forschungsprojekt mit Prof. Naumann von der Hochschule Trier wurden Anforderungen für eine grüne und nachhaltige Software definiert, das sind unter anderem:
- Kernfunktionen bleiben dauerhaft auf älterer Hardware ausführbar
- Benutzergerechte Konfigurationsmöglichkeit für energiesparende Modi
- Unterstützung sparsamer Datenformate im Hinblick auf Bandbreite und Speicherplatz
Was das konkret für die Software-Entwicklung bedeutet, zeigen wir mit folgenden Beispielen.
Schlanke Struktur
Gleich vorab: Die Wahl der Programmiersprache ist kein Kriterium für Effizienz, jedenfalls gibt es noch keine Studien dazu. Entscheidend sind dafür Programmierung und Design und das ist im Grunde leicht nachvollziehbar: Wenn Funktionen chaotisch codiert und schlecht strukturiert sind, verbrauchen sie bei jedem Aufruf mehr Energie. Umgekehrt sind schlanke und wartungsfreundlich strukturierte Codes ein Beitrag zu Green Software.
Intelligentes Zusammenspiel von Software und Hardware
Software muss auf Hardware-Ressourcen zurückgreifen, um eine Funktion ausführen zu können. Wenn zum Beispiel die Adresse eines Mitarbeiters in der Personalakte geändert werden soll, so müssen die Adressdaten von der Datenbank auf dem Speichermedium herausgelesen, in den Arbeitsspeicher kopiert, bearbeitet und dann zurückgespeichert werden.
Wie sind bei solchen Funktionen die Wechselwirkungen zwischen Hardware und Software zu bewerten? Diese sehr komplexe Frage hat erstmals das Deutsche Umweltbundesamt in einer Studie mit Fallbeispielen ermittelt und verglichen. Ein Katalog mit insgesamt 25 Kriterien und 76 Indikatoren zur Überprüfung der Umweltauswirkung von Softwareprodukten wurde entwickelt; so können bei der Beschaffung Unterschiede von Softwarelösungen bei gleicher Funktionalität gemessen bzw. verglichen werden.
So hilft Software Energie zu sparen
- Datenzugriff: Bei der oben beschriebenen Funktion für die Adressänderung optimieren intelligente Programme den Zugriff auf die Daten: Dabei werden beim Kundenstamm nur die für die Adressänderung relevanten fünf bis zehn Felder von der Adressänderungsabfrage herausgelesen, übertragen und zurückgeschrieben, nicht aber der gesamte Kundenstammsatz mit bis zu 100 Feldern.
- Energiesparmodus: Ein anschauliches Beispiel für die Wechselwirkung zwischen Software und Hardware bietet der automatische Energiesparmodus: Es kommt vor, dass Software unbeabsichtigt verhindert, dass Notebook oder PC in den Energiesparmodus wechseln können. Intelligente Software-Architektur stellt sicher, dass das möglich ist.
- Vorabeinstellungen bringen Einsparungspotenzial: Wenn eine Drucker-Software als Werkseinstellung standardmäßig monochrom (statt Farbe) und doppelseitig druckt, werden automatisch Ressourcen und damit Energie gespart.
- Container-Technologie ist ein großer Trend in der IT und diese Architektur bringt mehr Effizienz. Container kennen wir von der Logistik: Waren aller Art können in einer Standard-Verpackung (dem Container) mit vielen Verkehrsmitteln wie Schiff, Bahn, Flugzeug oder LKW flexibel und einfach transportiert werden. Umgelegt auf die IT werden ein Programm und alle zu seiner Ausführung erforderlichen Dateien sozusagen in ein handliches Paket verpackt. Mehrere Container teilen sich ein Betriebssystem, sie verbrauchen weniger Ressourcen wie Rechenleistung, Hauptspeicher und Speicherplatz.
- Obsoleszenz: Nachhaltige SW-Architektur sollte eine lange Nutzungsdauer von Hardware ermöglichen. Wir alle haben schon erlebt, dass Smartphones, Tablets oder Notebooks mit neuen Updates des Betriebssystems langsamer werden. Irgendwann muss dann ein neues Gerät her. Wenn die Obsoleszenz (also die Haltbarkeit technischer Geräte) bei der Entwicklung von Updates, sowie auch von neuen Apps, berücksichtig wird, verlängert sich die Nutzungsdauer und das verbessert den ökologischen Fußabdruck des Geräts. Als zweiter erfreulicher Effekt senkt das auch die IT-Kosten.
Energiebedarf von Software steigt
Software, obwohl ein immaterielles Gut, spielt eine wesentliche Rolle, wenn es um Energieverbrauch in der IT geht. Künftig ist noch mehr auf Effizienz zu achten, denn rechenintensive Anwendungen nehmen stark zu; denken Sie etwa an Modell- und Simulationsrechnungen, den Einsatz von Künstlicher Intelligenz und an Machine Learning, um Systeme zu trainieren. Die meiste Energie verbraucht die Blockchain-Technologie, auf der u.a. Kryptowährungen wie Bitcoin aufbauen, denn jede einzelne Transaktion braucht in dieser Architektur enorm viel Rechenleistung. Bei der Einführung neuer digitaler Geschäftsmodelle sollte daher der ressourcenschonende Einsatz von Software mitbedacht werden, als wichtiger Beitrag im Angesicht der Klimakrise.