25.07.2022 – Kategorie: Hardware & IT

Grüne IT: Nachhaltigkeit in der Softwareentwicklung

Grüne ITQuelle: Monsitj/Adobestock

Digitalisierung hilft, CO2 einzusparen – so die allgemeine Meinung vieler Experten. Doch ganz so einfach ist es nicht, denn die Entwicklung und Nutzung von Software selbst tragen erheblich zu den weltweiten Treibhausgas-Emissionen bei. Ein Nachhaltigkeits-Konzept für Entwickler und Betreiber muss her.

Nicht zuletzt der Bundestagswahlkampf hat gezeigt: Der Klimawandel ist eine der zentralen Herausforderungen des 21. Jahrhunderts. Umstritten sind jedoch die Maßnahmen wie grüne IT, mit denen CO2 eingespart werden soll. In vielen Überlegungen nimmt die Digitalisierung eine Schlüsselrolle ein. Sie soll Reisen überflüssig, Produktionsprozesse effizienter und Entscheidungen intelligenter machen.

Grüne IT: Mehr als nur Digitalisierung

Der Fallstrick: IT ist selbst für immense Emissionen verantwortlich. Aktuell gehen bereits 5 bis 9 Prozent des weltweiten Stromverbrauchs auf das Konto von Informations- und Kommunikationstechnologie. Und wir haben noch lange nicht zu Ende digitalisiert: Für 2030 erwartet das Beratungsunternehmen Enerdata, dass dieser Anteil auf bis zu 21 Prozent steigt. Dabei stammen (Stand 2019) nur 11 Prozent der globalen Energieproduktion aus erneuerbaren Quellen. Ergo: IK-Technologie trägt bereits heute erheblich zu den CO2-Emissionen bei – mit steigender Tendenz.

Von grüner Hardware zum Green Coding

Als Software-Entwickler und -Nutzer zu hoffen, dass 100 Prozent des weltweit erzeugten Stroms demnächst rein klimaneutral fließt, ist keine Option. Deshalb müssen auch IT und Software effizienter werden. Dabei gibt es bereits den Ansatz „Green IT“, der sich jedoch vorwiegend der Energieeinsparung durch effizientere Hardware widmet. Für die Software selbst gibt es bis dato keinen systematischen Ansatz.

Diese Lücke will GFT mit dem Konzept „Green Coding“ schließen. Der Begriff fasst eine Vielzahl von Maßnahmen zusammen, die helfen können, Software emissionsärmer und nachhaltiger zu entwickeln und zu betreiben. Paradoxerweise erinnert der Ansatz ein bisschen an die Anfangstage der Computer-Demokratisierung: In den 1980ern kämpften Programmierer mit den Restriktionen der nach heutigen Maßstäben winzigen RAM-Speicher, gemächlichen Prozessoren und lächerlichen Übertragungsbandbreiten. Die Fachleute kämpften um jedes Bit.

Durch die technische Weiterentwicklung sind diese Einschränkungen durch einen Überfluss an Speicher und Rechenleistung in den letzten Jahren weggefallen und die Prioritäten haben sich verschoben.

75 Prozent Emissionen in Lieferkette und Betrieb

Obwohl einzelne Konzepte grundsätzlich bekannt sind, steckt die globale Optimierung von Software auf Energieeffizienz in den Kinderschuhen: Das liegt auch daran, dass es ziemlich kompliziert ist, die von Software verursachten Emissionen richtig zu beziffern. Software-Anbieter kalkulieren üblicherweise nur die Emissionen aus der direkten Verbrennung von fossilen Stoffen bei der Produktion einer Ware (Scope 1) und indirekte Emissionen, die bei der Fertigung entstehen, etwa durch den Einkauf von Strom oder Hardware (Scope 2).

Erst mit Scope 3 betrachtet das Unternehmen alle Emissionen, die in der Lieferkette entstehen, etwa beim Schürfen von Rohstoffen, sowie später im Betrieb beim Kunden oder bei der Entsorgung eines Produktes. Das Beispiel Microsoft zeigt, dass wenn Softwareunternehmen Scope 3-Emissionen angeben, diese immens sind: 75 Prozent aller Emissionen des Unternehmens entfallen auf Scope 3, also auf die Herstellung und den Vertrieb sowie die Benutzung von Windows-, Office- oder Cloud-Produkten.

Künftig müssen sich Unternehmen um diese Emissionen kümmern. Zum einen, weil die gesetzlichen Regulierungen immer strenger werden. Zum anderen üben Investoren zunehmend Druck auf Unternehmen aus, nachhaltiger zu agieren.

Auch GFT stellt fest, dass das Interesse steigt. Einige bekannte Unternehmen haben den Digitalisierer gebeten, Vorträge zu Green Coding zu halten. Darauf hat das Unternehmen mit Webinaren reagiert, die die Grundprinzipien aufzeigen. Über 400 Personen haben bereits teilgenommen und ein Zertifikat erhalten.

Grüne IT: Standards fehlen

Eine weitere Hürde für Green Coding ist, dass es noch keine Defacto-Standards gibt, mit denen Unternehmen geeignete Maßnahmen identifizieren können. Wer nachhaltige Software erstellen oder im Nachhinein bestehende Software nachhaltiger machen möchte, sollte dort ansetzen, wo die größten Optimierungspotenziale liegen. Wünschenswert wäre eine Lösung zur exakten Messung des Stromverbrauchs respektive der CO2-Emissionen einzelner Maßnahmen, Entscheidungen oder gar Codezeilen. Das kann allerdings komplex, aufwändig und fehleranfällig sein.

Aktuell arbeitet GFT an einem qualitativen Assessment. Dieses soll in Form einer Checkliste einzelne Maßnahmen nach ihrem Effekt gewichten. Dies gibt den Nutzern Feedback, wo es noch ungenutztes Potenzial gibt oder ob sie Green Coding schon weitgehend umsetzen. Zukünftig sollen die Assesments mit Messungen des tatsächlichen Verbrauchs und Einsparungen von Maßnahmen verknüpft werden. Denn der tatsächliche Verbrauch hängt auch von den eingesetzten Endgeräten, den Nutzungsgewohnheiten der Anwender und der Hardware der Betreiber ab.

Tipps für grüne Software-Entwicklung

Dabei lassen sich die Maßnahmen in vier Bereiche einteilen: Architektur, Logik, Methodik und Plattformen. Zu jedem dieser Bereiche gibt es viele Tipps, Richtlinien und Guidelines.

Im Folgenden einige zur Architektur:

  • Grüne Architektur sollte bei Nichtgebrauch abschalten: Wenn der letzte den Raum verlässt, schaltet er das Licht aus –das sollte auch bei Software so sein. Sie sollte daher modular entworfen sein, so dass die Microservices bei geringer Nachfrage herunterfahren können.
  • Spontan-Verbrauch vermeiden: Meistens arbeitet Software in Echtzeit: Aufträge werden sofort abgearbeitet. Das ist nicht immer notwendig. Bestimmte Aufgaben wie Housekeeping, Video-Transkodierung oder Datenbackups lassen sich oft zeitlich verschieben. Dadurch lassen sich Aufgaben zusammenfassen und dann ausführen, wenn genügend grüne Energie zur Verfügung steht. Zudem lässt sich so die Hardware besser auslasten.

Zur Logik:

  • Code-Verschwendung vermeiden: 90 Prozent der Software enthält heute Open-Source-Code, der von Dritten entwickelt wurde. Manchmal passt er perfekt zum Problem, oft aber enthält er redundante Abschnitte, die dafür sorgen, dass sich Artefakte vergrößern und damit das Erstellen, das Verteilen und den Start von Anwendungen verlangsamen. So genannte „Tree-Shaking“-Engines finden und entfernen „toten“ Code.
  • Sparsame Ressourcen verwenden: Manche Dateiformate verbrauchen weniger Ressourcen als andere. CSV braucht weniger als Excel, YAML weniger als XML.
  • Untersuchungen von GFT zeigen zudem, dass auch die Wahl der API einen direkten Einfluss auf die Treibhausgasemissionen haben kann.
  • Ein großes Einsparpotenzial bieten auch Bilder. Sie sollten stets komprimiert werden, um weniger Daten über das Netzwerk zu übertragen.

Zur grünen Methodik:

  • Agile Entwicklung nutzen: Agile- und Lean-Methoden erleichtern die Anpassung von Software für mehr Effizienz. Die Entwicklung in kleinen Schritten hilft, Rückkopplungsschleifen zu reduzieren. Die Entwickler kompilieren und testen dann nur die modifizierten Codeabschnitte, nicht ganze Projekte.
  • Lange Ladezeiten vermeiden: Die Lade- und Startzeit einer Software ist einfach zu messen und korreliert direkt mit dem Energieverbrauch. Für Entwickler ist das eine gute Möglichkeit, um die Auswirkungen von Code-Änderungen zu bewerten.

Zu grünen Plattformen:

  • Hardware optimal auslasten: Server, die nicht voll ausgelastet sind, verbrauchen mehr Energie als sie müssten. Das kommt vor, wenn Systeme zu groß geplant werden. Cloud-Computing kann große Energieeinsparungen bieten, da Public-Cloud-Systeme hochgradig modular sind und eine präzise Steuerung der Auslastung ermöglichen. AWS, Google Cloud und Microsoft Azure laufen beispielsweise mit einer Auslastung von circa 65 Prozent, während Rechenzentren vor Ort nur 12 bis 18 Prozent erreichen.

Grüne IT: Bis 2025 emissionsfrei

Green Coding steht noch am Anfang, erst wenige Software-Anbieter und -Anwender beschäftigen sich damit. Deshalb möchte GFT das Thema grüne IT vorantreiben. Das geschieht mit Partnern, um ein gemeinsames Verständnis zu erlangen, das vielleicht eines Tages in eine Green-Coding-Zertifizierung mündet. Auch firmenintern unternimmt GFT viel, um Emissionen zu senken. So hat das Unternehmen angekündigt, dass es bis 2025 die Emissionen auf netto Null bringen möchte. Das heißt: Emissionen reduzieren, wo es möglich ist, und die restlichen Emissionen kompensieren.

Die Autoren: Gonzalo Ruiz ist CTO, Tim Schade Software-Architekt bei GFT.

Lesen Sie auch: Nachhaltigkeit: Quantensensor misst Algenwachstum


Teilen Sie die Meldung „Grüne IT: Nachhaltigkeit in der Softwareentwicklung“ mit Ihren Kontakten:

Zugehörige Themen:

Forschung & Technik, Software

Scroll to Top