Green Software: Warum allein Effizienz und saubere Energie nicht genügen

Eine der Hoffnungen zur “Bewältigung” der Klimakrise ist die Digitalisierung. Die Vorstellung ist, dass wir weniger Abfall und Umweltverschmutzung erzeugen, wenn wir uns von physischen Ressourcen wie dem Bedrucken von Papier und Aktivitäten wie persönlichen Treffen verabschieden. Da wir annehmen, dass digitale Geräte nur Strom (und “das Internet”) benötigen, um zu funktionieren, könnten wir die digitale Tech-Industrie schließlich dazu bewegen, “grüne” Energie zu nutzen und eine vollständige Dekarbonisierung* zu erreichen, oder? Wenn wir weiterhin davon ausgehen, dass erneuerbare Energiequellen nahezu keine Auswirkungen auf die Umwelt haben, scheint es, als hätten wir eine großartige Lösung gefunden.

* Entkopplung von Produktivität und Wirtschaftsleistung von den Treibhausgasemissionen

Aber die Realität ist komplexer. Digital ist nicht ätherisch. Die Cloud ist nicht im Himmel. Es geht um die Server in den Rechenzentren, die Glasfaserkabel, die seltenen Metalle, die für die Herstellung von Computern benötigt werden, die Minen, aus denen sie stammen, und die Gewalt und Ausbeutung, die ihre Gewinnung finanziert. Es sind die wasser- und energieintensiven Rechenzentren, die den lokalen Gemeinschaften diese Ressourcen entziehen. Es geht um den giftigen Elektroschrott, den wir auf Mülldeponien hinterlassen, wenn wir die von uns verwendete Hardware – die nicht mit der aufgeblähten Software mithalten kann, die immer mehr Ressourcen verbraucht, um dieselben Aufgaben zu erfüllen – als nicht effizient genug einstufen.

Was genau ist Green Software?

Green Software bezeichnet eine Bewegung zur Dekarbonisierung der Computerindustrie (und der Informations- und Kommunikationstechnologie (IKT) insgesamt), indem Software und Hardware effizienter gestaltet und auf saubere oder kohlenstoffarme Energiequellen umgestellt werden. Obwohl es keine offizielle Definition gibt, stimmen die meisten Organisationen und Schlüsselpersonen der Bewegung diesen Zielen zu. Die meisten betonen, wie wichtig es ist, die Kohlenstoffintensität zu reduzieren und nicht nur die Emissionen auszugleichen.

Die Prämisse dieser Ziele erscheint sinnvoll. Sie bietet Softwareunternehmen einen klaren Weg zur Dekarbonisierung ihres Geschäfts:

  1. Verlagerung von Diensten zu Cloud-Anbietern, die mit sauberer Energie betrieben werden und Optionen für eine kohlenstoffbewusste Ressourcennutzung anbieten.
  2. Nutzung von ressourceneffizienterer Hardware und gemeinsamer Nutzung von Rechenressourcen durch verschiedene Dienste, um Leerlaufzeiten zu minimieren (durch Verlagerung in die Cloud).
  3. Optimierung des Softwarecodes auf verschiedene Weisen - u. a. durch effizientere Programmiersprachen, Microservices, Reduzierung der Größe von Web-Assets, effizientes Caching und Datenkomprimierung.
  4. Fokus auf die Messung der Umweltauswirkungen von Software, indem Metriken wie die Software Carbon Intensity Spezifikation verwendet werden.

Bedeutet das, dass wir alles unter Kontrolle haben und nur noch diese Änderungen umsetzen müssen, um eine Netto-Null-Zukunft für die Tech-Industrie zu erreichen? Lassen Sie uns diese Komponenten der Green Software genauer betrachten.

"Premature optimization is the root of all evil"

Der amerikanische Informatiker Donald Knuth andte sich mit dieser Aussage an die Programmierer, die sich “an den falschen Stellen und zur falschen Zeit um Effizienz sorgen”. Obwohl er im speziellen Sinne meinte, dass man sich zu sehr auf die Rechenkomplexität konzentriert, lässt sich diese Einstellung auch allgemeiner auf die Art und Weise anwenden, wie wir über Software und Computer im Kontext der Nachhaltigkeit nachdenken. Es ist zweckmäßig, effizientere Hardware zu nutzen, Bilder effektiver zu komprimieren und JS-Assets vor der Übertragung an den Client mit einem Tree-Shake zu versehen. Wir können und sollten die Aufblähung von Software reduzieren, die Menge an unnötig übertragenen Daten verringern und kritisch über unseren Technologie-Stack, unsere Systemarchitektur und IT-Infrastruktur nachdenken.

Doch wie oft hat die Verbesserung der Effizienz unseren Verbrauch an Energie und materiellen Ressourcen tatsächlich reduziert? Sie werden erstaunt sein, dass die Antwort “praktisch null” ist. Seit den ersten Computern steht die optimale Nutzung der verfügbaren Ressourcen im Fokus der Technologiebranche, und dennoch steigt der Energiebedarf des IKT-Sektors jedes Jahr um 6 bis 9 %. Dieses Phänomen ist (in einer wachstumsorientierten Wirtschaft) so allgegenwärtig, dass es einen eigenen Namen hat: Jevons-Paradoxon.

Unser gesamter Fokus liegt darauf, das Überflüssige zu eliminieren und mit geringerem Ressourceneinsatz die gleichen Resultate zu erreichen. Dabei vermeiden wir jedoch die grundlegende Frage - was betrachten wir als notwendig und warum? Sollten wir uns auf die Verbesserung der Komprimierung für das Musikstreaming konzentrieren, oder könnten wir (wieder) lernen, Musik einmal herunterzuladen und dann offline zu hören? Sollten wir die Performance unserer Anwendung, die in einem Kubernetes-Cluster auf einer CO2-bewussten Cloud-Computing-Plattform läuft, überwachen und optimieren, oder könnten wir uns mit einer statischen Webseite zufrieden geben, die auf einem kleinen, netzunabhängigen, solarbetriebenen Heimserver läuft? Diese Fragen könnten einschüchternd wirken, aber sie sind essentiell, wenn wir herausfinden wollen, wo wir unsere begrenzte Zeit und unsere Ressourcen investieren sollten, um die Umweltauswirkungen der Softwareindustrie zu bekämpfen.

Man könnte argumentieren: "In unserer modernen Welt ist das einfach unrealistisch, wir können nicht in die Steinzeit zurückkehren. Die Menschen schätzen Bequemlichkeit und Komfort, und wir werden danach streben, ob wir es wollen oder nicht. Anstatt unseren Energieverbrauch zu reduzieren, sollten wir uns auf den Übergang zu sauberer Energie konzentrieren.

Dies ist ein verlockender Gedanke - könnten wir einfach so weitermachen wie bisher, nur umweltfreundlicher?

Gibt es "saubere" Energie?

Die Abkehr von fossilen Brennstoffen und die Hinwendung zu sauberen Energiequellen ist ein unabdingbarer Schritt zur Dekarbonisierung, unabhängig vom Wirtschaftssektor. Was in diesen Diskussionen jedoch oft fehlt, ist die Frage, wie viel Energie wir im Vergleich dazu verbrauchen, wie viel wir ausschließlich mit erneuerbaren Energiequellen erzeugen können.

Die Ausdrücke “sauber” und “erneuerbar” können irreführend sein, da sie die Ressourcen, die zur Energiegewinnung benötigt werden, entmaterialisieren. Sonnenkollektoren benötigen die Extraktion von Aluminium und die Herstellung von Silizium-Halbleitern, während Windturbinen aus Stahl und petrochemischen Materialien gefertigt werden. Die Produktion von sauberen und erneuerbaren Energietechnologien erfordert die umweltschädliche und schädliche Extraktion von nicht erneuerbaren Ressourcen und beinhaltet energie- und kohlenstoffintensive Prozesse. Selbst wenn wir es schaffen, unsere Stromnetze vollständig auf erneuerbare Energien umzustellen, müssen wir weiterhin immer mehr Mineralien abbauen, da sowohl Solarzellen als auch Windkraftanlagen eine Lebensdauer von ungefähr 25 Jahren haben. Wie viel Energie benötigen wir also, um unseren aktuellen und zukünftigen Bedarf zu decken?

Prognosen zufolge werden wir im Jahr 2022 global etwa 3.400 TWh oder ~11,9 % des gesamten Stroms aus Wind- und Sonnenenergie erzeugen. Der Prozentsatz erhöht sich auf 29,6 % wenn wir Wasserkraft, Biomasse und andere erneuerbare Energiequellen berücksichtigen. Es wird angenommen, dass der IKT-Sektor allein für bis zu 10 % des globalen Stromverbrauchs verantwortlich ist, und dieser Anteil wird nach Prognosen in Zukunft deutlich ansteigen, zusammen mit der global zunehmenden Gesamtnachfrage nach Energie. Entgegen der allgemeinen Annahme trennt die Digitalisierung das Wirtschaftswachstum nicht vom Energieverbrauch.

Es mag bequem erscheinen zu glauben, dass wir alle Rechenzentren auf erneuerbare Energien umstellen oder Arbeitslasten durchführen können, wenn das Netz “sauberer” ist, doch die Wahrheit ist, dass wir unseren steigenden Energiebedarf nicht decken können, ohne der Umwelt und den Menschen erheblichen Schaden zuzufügen. Ob Solarenergie oder Kernfusion, das Problem liegt nicht darin, dass wir mehr oder bessere Technologie benötigen. Wir müssen unsere Prioritäten neu bewerten und unseren Gesamtverbrauch drastisch reduzieren.

Abschließende Überlegungen

Keine Energiequelle ist frei von Ressourcenabbau. Es gibt keine Möglichkeit für die Softwarebranche, unbegrenzt zu wachsen, ohne mehr Energie zu verbrauchen. Nachhaltigkeit bedeutet, zu erkennen, was notwendig und was verschwenderisch ist, es bedeutet, einen umfassenden Blick auf unsere Umwelt und unsere Interaktion mit ihr zu haben, und es bedeutet, ihre Grenzen zu verstehen und zu wissen, wann genug genug ist. Solange unser Wirtschaftssystem Wachstum um jeden Preis verlangt, können wir nicht ernsthaft von Green Software und Nachhaltigkeit reden.

FacebookTwitterPinterest

Serge Korzh

Full Stack Developer

Ich baue gerne leichte und robuste Websites. Ich bin ständig auf der Suche nach neuen Wegen, um gängige Herausforderungen in der Softwareentwicklung zu meistern. Bei meiner Arbeit stelle ich jedoch den Menschen an die erste Stelle und die Technik an die letzte.