Neu

msg digital mehr

Green Coding

Nachhaltiges Programmieren in der IT

Green Coding – energiereduzierte Softwareentwicklung

Das Ziel von Green Coding – auch „Sustainable Programming“ genannt – ist es, den Energieverbrauch einer Software zu verringern. Im Zentrum stehen die Bereiche der Softwarearchitektur, Softwarekomponenten und die Betriebsplattform. Dabei wird die Reduktion des Energieverbrauchs als nicht funktionale Anforderung – analog Performance, Effizienz und Sicherheit – behandelt.

„Jede Codezeile hat das Potenzial, den Energieverbrauch zu senken“

Das Green Coding beginnt bereits in der Designphase. Designer und Entwickler können bei der Aufnahme der fachlichen und technischen Anforderungen beispielsweise dynamisches Nachladen bei einer Webanwendung kritisch hinterfragen. Außerdem wird überprüft, ob jede Datenverarbeitung in Echtzeit passieren muss. Weitere Maßnahmen auf technischer Ebene, wie z.B. Serveranfragen reduzieren, Algorithmen im Sinne eines geringen Energieverbrauchs wählen und Caches oder Komprimierungsverfahren verwenden, können unterstützen. Auch der Einsatz von Datenbankindizes und eine optimierte Softwarekonfiguration für den Dauerbetrieb – zum Beispiel korrekt konfigurierte Loglevel oder optimierte Datenbankeinstellungen – helfen, den Energieverbrauch zu senken.

Während der Realisierungsphase ist es wichtig, den Energieverbrauch messbar zu formulieren und auch während der Umsetzung zu überprüfen.

Der Energieverbrauch kann beispielsweise mit dem von msg entwickelten jPowerMonitor gemessen werden, welcher innerhalb laufender Java-Applikationen gerade aktive Funktionen und deren CPU-Zeitverbrauch überwacht.

Haben Sie Fragen?

Christina Landgraf

Lead Business Consultant

Grüne Betriebsplattform

Beim Betrieb der Software befasst sich Green Coding mit CO2-Reduktion durch energieoptimierte Datenverarbeitung. Gegenüber firmeneigenen Rechenzentren ist der Betrieb in der Cloud meist vorzuziehen: Da virtuelle Server nur bei Bedarf gestartet werden arbeitet die Cloud normalerweise energie- und damit CO2-effizienter. Lokale Server sollten anhand der tatsächlichen Auslastung dimensioniert werden. Ein weiterer, an Bedeutung zunehmender Faktor ist die Sekundärnutzung von Abwärme.

Durch die künstliche Intelligenz und Digitalisierung steigt der Bedarf an Rechenleistung und Strom weiterhin an. Daher wird der Softwarebetreiber auch bei der Wahl des Rechenzentrums auf den Einsatz von erneuerbaren Energien achten und möglichst grüne Rechenzentren wählen.

Um die Zeiträume mit Energieüberschuss im Versorgungsnetz optimal zu nutzen, können IT-Entwickler wie auch Softwareanwender bei der Konfiguration bestimmen, wann Berechnungen durchgeführt werden. „In Kombination mit stationären NaION- oder LFP-Stromspeichern werden Rechenzentren somit zu netzdienlichen Verbrauchern. Vergleichbares gilt auch für die Verarbeitung auf Endgeräten“, betont Thorben Schulte.

Die Optimierungen mit Green Coding haben somit direkte Auswirkungen auf die Berechnung der eigenen CO2-Emissionen und damit auf Scope-2- oder Scope-3-Emissionen.

Hoch aktuell auch für Automotive

Gerade im Bereich Automotive ist das Potenzial von Green Coding ausgesprochen hoch.

  • Mit zunehmender Digitalisierung des Individualverkehrs steigen Datenmengen und Verarbeitungsvolumina an.
  • Gemäß dem Grundsatz „Jede Codezeile hat das Potenzial, den Energieverbrauch zu senken“ lässt sich durch geeignete Optimierungsstrategien eine erhebliche Ersparnis an Energie- und Systemressourcen erreichen. Dies gilt insbesondere für die Bereiche Telemetrie und autonomes Fahren (mit und ohne Backend-Unterstützung) und generell für jegliche Backend-Anbindung von Fahrzeugen.
  • Findet die Verarbeitung „on edge“, also im Fahrzeug, statt, so kann diese einen hohen Leistungsbedarf bedeuten und Auswirkungen auf die Reichweite von vollelektrischen Fahrzeugen haben. Eine Optimierung nach Green Coding kann in solchen Fällen zu einer Erhöhung der Reichweite führen.
  • Die intelligente und sparsame Verwendung von Übertragungsbandbreite ist ein weiterer Pfeiler des Green Codings. „Neben der reinen Datenverarbeitung gilt auch die Übertragung via Mobilfunk als Verbrauchsfaktor. Hier sind Redundanzen zu vermeiden und Ansätze wie die Bündelung von Informationen oder die Wahl geeigneter Übertragungsfenster anzuwenden“, fasst Thorben Schulte zusammen.

Weitere Entwicklungen

Aufgrund der EU-weiten Gesetzesvorgaben wird die Nachhaltigkeit und der Nachweis eines nachhaltigen Handelns in Zukunft an Bedeutung gewinnen. Diese Vorgaben werden sich nach und nach konkretisieren und eröffnen gleichzeitig Fachabteilungen, IT-Architektur, Entwicklung und Betrieb vielseitige Möglichkeiten für konkrete Beiträge zum Klimaschutz. Diese Checkliste unterstützt die Verantwortlichen mit den wichtigsten Aufgaben für Green Coding:

 

  • Nicht funktionale Anforderungen zu Grüner IT und Green Coding sind definiert
  • IT-Architekten und Entwickler sind geschult
  • System skaliert dynamisch und fährt sich bei Leerlauf herunter
  • Dynamische Inhalte und Echtzeitverarbeitung werden möglichst vermieden
  • Green-Coding-Prinzipien und -Entwicklungsmuster sind in folgenden Punkten berücksichtigt:
    • Effizienter Code mit optimalen Algorithmen
    • Vermeidung unnötiger Round-Trips
    • Caching
    • Optimiertes Datenvolumen
    • Komprimierte Netzwerkkommunikation
    • Datenbankindizes
    • Optimierte Ressourcennutzung durch optimierte Konfiguration
    • Zero-Waste-Code
    • Prinzip: „Jede Codezeile hat das Potenzial, den Energieverbrauch zu senken“

 

  • Komponenten mit dem höchsten Energieverbrauch sind identifiziert
  • Performance Engineering: Es ist klar, was, wann und wie gemessen wird
    • Was: Gesamtsystem, Prozess, Komponente, Methode
    • Wann: Unittest, Integrationstest, Betrieb
    • Wie: Open-Hardware-Monitor oder Smart Plugs, Frameworks
  • Ressourcenverbrauch: Optimierung von CPU, RAM, Speicher, Netzwerk
  • DevOps und Betrieb:
    • DevOps-Pipeline ist hinsichtlich Energieverbrauch optimiert
    • Containerbasierte Plattform mit intelligenter, dynamischer Skalierung wird genutzt

Ihr Anspruch ist ebenfalls, Ihren CO2-Abdruck zu verringern?

Unsere Expertinnen und Experten verfügen über umfangreiches Know-​how in den Prozessen für die Branchen Automotive sowie im Bereich der nachhaltigen Codierung. Beides ermöglicht eine erfolgreiche Umsetzung in Ihrem Projekt. Somit erfüllen Sie nicht nur den gesetzlichen Rahmen, sondern liefern außerdem eine attraktive Botschaft an Ihre Kundinnen und Kunden.

Weitere Publikationen

Sustainability

Automobilhersteller müssen ihre Emissionen entlang der Wertschöpfungskette detailliert erheben, ausweisen und nachweislich reduzieren. Wie das gelingt kann, erfahren Sie in diesem Artikel.

Sustainability

Eine konsequente Verankerung der ESG-Kriterien ist heute weit mehr als die Pflichterfüllung gesetzlicher Rahmenbedingungen. Ihre Umsetzung ist längst ein entscheidender Wettbewerbsfaktor.

Sustainability

Erfahren Sie, wie die erfolgreiche Umsetzung der Taxonomie-​Verordnung in Ihrem Unternehmen gelingt und Sie die notwendigen Veränderungen darüber hinaus als Chance nutzen.

Sustainability

Die Auswirkungen des Klimawandels sind weltweit spürbar. Um eine weitere Erwärmung zu begrenzen, müssen Unternehmen ihren CO2-Fußabdruck drastisch reduzieren. Digitalisierung kann bei der Reduktion unterstützen, allerdings ist auch die IT nachhaltig zu gestalten. Ein Ansatz dabei ist Green Coding.

Digitaler Zwilling, Sustainability

Wir verbrauchen zu viele Ressourcen. Innerhalb eines Jahres schafft es unsere Erde nicht mehr diese nachhaltig wieder zur Verfügung zu stellen.

Sustainability

Wie Unternehmen ihren CO2-​Footprint ermitteln und CO2-​Emissionen effektiv reduzieren können, erläutern wir in unserem Whitepaper.

Sustainability

Nachhaltigkeit wird in naher Zukunft als zentrales Leitmotiv im Finanzsystem verankert. Wie sieht die optimale Vorbereitung auf eine nachhaltige Zukunft in der Branche Banking aus?

Sustainability

Nachhaltige Prozesse sind heute nicht mehr ein „Nice-to-have“, sondern aufgrund von gesetzlichen Anforderungen und immer „grüneren“ Kundenbedürfnissen dringend notwendig.