• Wyślij znajomemu
    zamknij [x]

    Wiadomość została wysłana.

     
    • *
    • *
    •  
    • Pola oznaczone * są wymagane.
  • Wersja do druku
  • -AA+A

Zielone kodowanie, czyli jak zmniejszyć informatyczne zanieczyszczenia?

12:20, 14.11.2023
  Porsche Engineering
Zielone kodowanie, czyli jak zmniejszyć informatyczne zanieczyszczenia?

Sektor IT to obecnie jedno z największych źródeł emisji CO2. Fot. Porsche Engineering
Sektor IT to obecnie jedno z największych źródeł emisji CO2. Fot. Porsche Engineering

Podziel się:   Więcej
Prof. Volker Wohlgemuth z Uniwersytetu Nauk Stosowanych w Berlinie
Procesy wymagające intensywnych obliczeń, takie jak Big Data, Internet rzeczy i sztuczna inteligencja są w niektórych przypadkach bardzo energochłonne.
Według raportu Association for Computing Machinery (ACM) technologie informacyjno-komunikacyjne (ICT) i globalny ruch lotniczy są obecnie mniej więcej porównywalne pod względem wpływu na klimat. Przemysł ICT odpowiada za 2,8 procent rocznej emisji gazów cieplarnianych. Po uwzględnieniu efektów produkcji sprzętu, jego udział wynosi prawie cztery procent, podczas gdy ruch lotniczy to około 2,5 proc. W 2050 r. technologie te mogą odpowiadać za jedną trzecią wszystkich światowych emisji gazów cieplarnianych.

Bardziej energooszczędny sprzęt i zasilacze neutralne dla klimatu prawdopodobnie doprowadzą do poprawy w tym zakresie. Jednak rozwój oprogramowania może również wnieść zauważalny wkład poprzez ekologiczne kodowanie, czyli takie podejście do tworzenia oprogramowania, którego celem jest zmniejszenie zasobów i energii potrzebnej do zaprojektowania, stworzenia, przetworzenia i opublikowania projektu oprogramowania.


Badanie zlecone przez niemiecką Federalną Agencję Środowiska pokazuje, w jaki sposób dwa programy do edycji tekstu w różny sposób wykorzystują zasoby komputera: w standardowym scenariuszu użytkowania jedno oprogramowanie zużywało 3,6 watogodzin energii, podczas gdy konkurencyjny produkt zużywał zaledwie 0,93 watogodzin. Porównanie trzech przeglądarek internetowych ujawniło podobny obraz: w porównywalnych warunkach zużycie energii podczas użytkowania wyniosło odpowiednio 1,95, 0,91 i 0,66 watogodzin. W stanie bezczynności wykorzystanie procesora wahało się od 0,8 do 12 procent.

Ekologiczne kodowanie

Jednym z powodów jest oprogramowanie typu bloatware, czyli oprogramowanie obciążone mnóstwem – często rzadko używanych – funkcji. W programowaniu wykorzystywane języki również powodują znaczne różnice: na przykład C, który powstał na początku lat 70. XX wieku, i stosunkowo nowy język Rust radzą sobie najlepiej, podczas gdy powszechnie używane języki Ruby i Python charakteryzują się wysokim zużyciem energii. W teście porównawczym wymagały one do tych samych zadań odpowiednio 70 i 76 razy więcej mocy niż C.


Aby zminimalizować wpływ rozwoju oprogramowania na środowisko, zielone kodowanie stosuje szereg podejść. Użycie predefiniowanego wariantu z biblioteki funkcji napisanej w C zamiast samodzielnego napisania funkcji matematycznej w Pythonie pozwala na zmniejszenie zużycia energii o 90 procent. Podobną redukcję zmierzono także w przypadku obliczania liczb losowych. Istnieje również potencjał optymalizacji, jeśli chodzi o wykorzystanie bibliotek oprogramowania typu open source, gdyż wiele z nich zawiera kod, który nigdy nie jest używany i prowadzi do niepotrzebnego zużycia energii podczas kompilacji. Oszczędności można również osiągnąć, ograniczając do minimum ruch sieciowy w rozproszonych aplikacjach, a także przeprowadzanie obliczeń możliwie lokalnie, a nie głęboko w chmurze.

źródło: Porsche Engineering