Green Coding  – klimabewusst programmieren
© Adobe Stock / peach_fotolia

Green Coding – jede Zeile zählt

Wie Entwickler mit klimabewusstem Programmieren die CO₂-Emmissionen senken können

08.02.2022
Gerd Meyring – freiberuflicher Autor
Artikel teilen:

Wie viel sind 302 Millionen Tonnen? Etwa so viel, wie 7,3 Millionen Kurzstreckenflugzeuge, 215 Millionen Mittelklasse-Pkw oder gut zwei Millionen Blauwale wiegen. Oder genau die Menge an Kohlendioxid-Emissionen, die deutsche Unternehmen und Verbraucher:innen jedes Jahr einsparen müssen, um die im Mai 2021 von der damaligen Bundesregierung beschlossenen Klimaschutzziele zu erreichen. Danach soll der Ausstoß von Treibhausgasen bis 2030 um 65 Prozent unter den Wert des Jahres 1990 sinken. Nur 15 Jahre später soll Deutschland dann klimaneutral sein. Und auch die neue Bundesregierung strebt in ihrem Koalitionsvertrag die Klimaneutralität bis 2045 an.
 
Das Ziel flößt Ehrfurcht ein – allerdings nur auf den ersten Blick. Denn 151 Millionen Tonnen und damit die Hälfte der erforderlichen Einsparungen ließen sich durch eine schnellere Digitalisierung sämtlicher Lebensbereiche erzielen, hat der Digitalverband Bitkom in einer Studie ermittelt. „Die IT-Branche muss und kann einen bedeutenden Beitrag dazu leisten, den CO₂-Ausstoß zu senken. Insbesondere im Bereich der Softwareentwicklung gibt es noch viele bislang ungenutzte Potenziale“, erklärt Dr. Frank Termer, Bereichsleiter Software beim Bitkom.

Schon eine kleine Änderung des Codes macht einen Unterschied

Danny van Kooten, niederländischer Entwickler eines Plug-ins, mit dem mit Wordpress erstellte Webseiten den E-Mail-Marketing-Service Mailchimp nutzen können, gibt Termer recht. Seit van Kooten Details des Java-Codes seines Plug-ins änderte, überträgt dieses bei jeder versandten Mail 20 Kilobyte weniger Daten. Das klingt nach wenig. In der Summe sinkt der Energiebedarf der zwei Millionen Webseiten, die das Plug-in nutzen, dadurch aber so sehr, dass ihr Betrieb jeden Monat 59 Tonnen CO₂-Emissionen weniger verursacht. Das entspricht dem Ausstoß, der durch 87 Flüge eines einzelnen Passagiers von Amsterdam nach New York zusammenkommt. „Diesen Effekt kann ich in keinem anderen Bereich meines Lebens erzielen, egal was ich tue“, erklärt van Kooten.

Sein Beispiel zeigt: Selbst wenn eine einzelne Zeile Code nur einen kaum wahrnehmbaren Beitrag zum Klimaschutz leistet, kann eine ganze Software-Anwendung die Welt verändern, wenn Entwickler:innen darauf achten, wie viel Energie deren Betrieb verursacht.

  •  Kostenlos: Profil erstellen, auf Projekte bewerben, Anfragen erhalten
  • Reichweite steigern: Circa 4.500 Unternehmen suchen Freelancer:innen über GULP
  • Passende Projekte: Gepflegtes Projektportal mit umfangreicher Auswahl verschiedener Skills

Mehr erfahren

Performanz und Energieeffizienz: auf ewig vereint

Wer ein Programm schreibt, entscheidet wie dieses auf Daten zugreift, wenn es diese liest, verändert und wieder speichert. Dauert das unnötig lange, leidet nicht nur die Performanz der Software. Sie ist auch weniger energieeffizient, als sie es sein könnte. Wer klimabewusst programmiert, setzt daher Caches intelligent ein und hält Daten in Netzwerken so nahe wie möglich bei den Komponenten vor, die sie verarbeiten. So vermeiden Software-Profis lange und energiezehrende Roundtrips.

Wer klimaschonend programmiert, vermeidet auch, dass die Endgeräte, auf denen die Software läuft, Datenbanken jede Minute oder im Stundentakt abfragen, obwohl die Datenquelle selbst gar nicht so häufig aktualisiert wird. Schließlich verbraucht Code, der gar nicht erst ausgeführt wird, auch keine Energie.

Überdimensionierte Hardware schadet dem Klima

Die Art, wie Software geschrieben ist, entscheidet auch darüber, wie viel Arbeitsspeicher ihre Prozesse belegen und wie diese die CPUs auslasten. Damit haben Programmierer:innen in der Hand, welchen CO₂-Fußabdruck die Anwendung hinterlässt. Denn je mehr Hardwarekapazitäten nötig sind, damit eine Software läuft, desto mehr Energie benötigt deren Betrieb.
 
In Anwendungen, die von Millionen Usern genutzt werden, macht die Änderung von Details im Code daher für den Klimaschutz einen gewaltigen Unterschied. Entwickler:innen, die es schaffen, dass ein einzelner Vorgang einer transaktionsstarken B2B-Anwendung nur eine CPU-Sekunde weniger benötigt, sparen schnell den Jahresstromverbrauch von mehreren Tausend Zwei-Personen-Haushalten ein. Immerhin wird die Transaktion im Verlauf eines Jahres millionenfach ausgeführt.

Die Programmiersprache wirkt sich auf die Nachhaltigkeit der Software aus

Auch die Wahl der richtigen Programmiersprache entscheidet über den Stromverbrauch einer Software. Python etwa erfordert so leistungsstarke CPUs und Grafikkarten, dass sich die Sprache auf mobilen Endgeräten nicht einsetzen lässt. Programmiersprachen wie die von Netflix, LinkedIn oder Google genutzten Scala und Golang, sind erheblich energiesparender. Allerdings lässt sich nicht jede Anwendung mit ihnen programmieren.
 
Klimabewusste Coder:innen wählen auch Datenformate mit Bedacht. So lassen sich binäre Daten schneller verarbeiten, als textbasierte Datenformate. Im Internet of Things ist dazu auch weniger Speicherplatz und Bandbreite erforderlich. Dadurch sinken der Energiebedarf und mit ihm die durch die Software verursachten Treibhausgasemissionen.

Ohne grünen Code beschleunigt die Digitalisierung die Erderwärmung

Verlieren Entwickler:innen den Klimaschutz dagegen aus dem Blick, könnte die Digitalisierung zum „Brandbeschleuniger“ der Erderwärmung werden, stellt der wissenschaftliche Beirat der Bundesregierung in einem Gutachten fest. Statt wie heute zwischen fünf und neun Prozent wird IT dann 2030 mehr als ein Fünftel des weltweit erzeugten Stroms verschlingen.
 
Denn mit der Komplexität der Aufgaben, die digital gelöst werden, steigen auch die dafür erforderliche Rechenleistung und die für diese aufzubringende Energie. So haben Wissenschaftler:innen der University of Massachusetts in Amherst berechnet, dass das Training einer Künstlichen Intelligenz (KI) bis zu fünf Mal so viele Treibhausgas-Emissionen verursacht wie ein durchschnittlicher Pkw in den USA im Verlauf seiner gesamten Nutzungsdauer.
 
Um einer KI beizubringen, unterschiedliche Arten von Schwertlilien mit einer Genauigkeit von 96 Prozent zu unterscheiden, sind 964 Joule Energie erforderlich. Wenn die Algorithmen nur um 1,7 Prozent genauere Treffer liefern sollen, wächst der Energiebedarf um 2815 Joule an. Eine weitere Steigerung der Genauigkeit um marginale 0,08 Prozent erfordert nochmals 3800 Joule – fast vier Mal so viel Energie wie zum Erreichen der ersten 96 Prozent Prognosegenauigkeit nötig sind.

Die Verantwortung liegt nicht nur bei den Entwicklern

Wie präzise KI sein muss, entscheiden allerdings meist nicht die Programmierer:innen einer Anwendung, sondern ihre Auftraggeber:innen oder Vorgesetzten. Sie müssen nachhaltige Softwareentwicklung zu einem festen Bestandteil der Nachhaltigkeitsstrategie ihrer Unternehmen machen und bei Projekten konsequent grünen Code einfordern. Dann können sie gemeinsam mit Entwicklerinnen und Entwicklern die Digitalisierung so gestalten, dass sich mit ihrer Hilfe die Hälfte der bis 2030 erforderlichen Treibhausgaseinsparungen erzielen lässt.

Lesermeinungen zum Artikel

2,1 von 5 Sternen

Ihre Meinung zum Artikel

Bitte verwenden Sie keine Links in Ihrem Kommentar.

Ihr Kommentar wird zunächst geprüft. Möchten Sie informiert werden, wenn er veröffentlicht wurde?
Bitte tragen Sie dazu Ihre E-Mail-Adresse ein:
Wir konnten Ihre Bewertung leider nicht speichern. Bitte geben Sie zuerst Ihr Feedback ab. Bitte aktivieren Sie die Checkbox "Ich bin kein Roboter", um das Formular senden zu können. Die Captcha Überprüfung war ungültig. Bitte versuchen Sie es erneut.
Lieber Leser, vielen Dank für Ihr Feedback.
Ihre Bewertung für den Artikel wurde gespeichert. Ihre GULP Redaktion.