Danske forskere vil energimærke software

Illustration: DONG Energy A/S
Brugen af it er en af nutidens helt store strømslugere. Derfor arbejder forskere på metoder til at måle konkret strømforbrug og dernæst udvikle et energimærke, så vi i fremtiden kan få mere bæredygtig software og softwareinstallationer.

Energiforbrug og CO2-aftryk skal være en parameter i fremtiden, når eksempelvis virksomheder og myndigheder skal anskaffe nye it-systemer. Ligesom det i dag kendes fra hårde hvidevarer, kommer der i fremtiden til stå et A++ på et givent it-system, hvis det står til it-Brancheforeningen og en række medlemsvirksomheder, som derfor har bedt forskere fra Aalborg Universitet (AAU) om at kortlægge, hvordan software påvirker energiforbruget i it-systemer. Forskningsprojektet, som netop er skudt i gang, foregår i samarbejde med kolleger fra RUC og DTU.

It sluger ti procent af strømmen

It sluger i dag omkring ti procent af verdens samlede elektricitetsforbrug. Og skal man tro på engelske The Times koster det lige så meget energi at se en film på Netflix, som det koster at koge vand til 60 kopper te. Spørger man Google, forbruger én søgning på Google den samme mængde energi, som en 60W-pære, der står tændt i 17 sekunder.

»Tendensen er tydelig. it brænder mere og mere energi af, for vi bruger mere og mere, og det bliver mere og mere avanceret. Derfor skal vi i fremtiden være meget mere bevidste om det energiforbrug, software er med til at generere,« forklarer AAU-professor Bent Thomsen i en pressemeddelelse.

Software i sig selv bruger naturligvis ikke energi, men det gør den hardware, softwaren kører på. Hardwaren drives af software, så i den sidste ende er der en sammenhæng mellem software og energiforbrug, og derfor giver det ifølge Bent Thomsen mening at tale om et energimærke til software.

Sprog, compileren og datacentrene

Bent Thomsen sætter i øvrigt spørgsmålstegn ved nøjagtigheden af beregninger som de ovennævnte fra The Times og Google. I dag er man nemlig ikke i stand til at foretage en nøjagtig udregning af et givent it-systems energiforbrug. Udviklernes fokus har været rettet mod begreber som funktionalitet og hardwarestørrelse og ikke mod energiforbrug. Og at kunne beregne energiforbruget er første skridt i retning af overhovedet at kunne energimærke software.

»Det er en meget kompleks opgave, for vi skal i princippet have det hele med. Softwarens påvirkning af strømforbruget på den enkelte computer, på netværksdelen, måske på en lokal server og – når der er tale om de mere og mere gængse cloud-services − på serversiden i datacenteret,« forklarer Bent Thomsen.

Nedsættelse af strømforbruget

En stor udfordring er at måle strømforbruget i datacenteret, for hvordan skal man måle strømmen i netop den del af datacenteret, som den givne software kører i? Desuden kører flere applikationer på samme server, så en yderligere udfordring er at adskille lige den software, der skal måles strømforbrug på, fra de øvrige applikationer, der kører på samme server.

»Hvis vi skal se på en applikation som fx netbank, kører den måske i et datacenter på en server, der også hoster Nordjyske Online, 117 banker eller det offentliges e-Boks. Vi ved ikke, hvilken software der kører i samme datacenter, hvilken software vi faktisk interagerer med. Vi ved faktisk ikke engang, hvilket datacenter det kører i.«

Når metoden er på plads til at måle strømforbruget, og man i samarbejde med de rette instanser kan begynde at definere energimærkningen, vil et naturligt skridt være at se på, hvordan man fremadrettet kan reducere det strømforbrug, softwaren genererer. Et sted, hvor der virkelig er noget at hente, forklarer Bent Thomsen, er i programmeringssproget og i compileren, der oversætter programmeringssproget til maskinkode.

»De gængse programmeringssprog som C++ og C# opererer ikke med begrebet energiforbrug, og det gør det meget svært for programmørerne at adressere det i programmerne. Derfor er det nødvendigt at udvikle programmeringssprog, der adresserer energiforbrug, så programmørerne får bedre mulighed for at tage det med i deres udvikling af ny software,« siger han.

Energibevidst nichesoftware

Et sted, hvor der er viden at hente, er inden for nicheområder, hvor strømforbruget har været afgørende for funktionaliteten. Det drejer sig om områder som satellitter og IoT. Der findes specialhardware, som det GomSpace bruger i deres satellitter, idet udviklerne har brug for tids- og energiforudsigelighed, fordi de skal regne ud, hvor meget batteristrøm der er til rådighed i satellitterne. Det samme gælder IoT-området, hvor det drejer sig om at få batteriet til at holde så længe som overhovedet muligt, og det kræver nogle andre værktøjer og nogle andre måder at programmere på end det man gør i mainstream.

»Disse områder har krævet dygtigere programmører og dyrere hardware og værktøjer. Og faktisk kan vi se, at de værktøjer vi bruger i dag, simpelthen ikke kan skaleres. De kan klare små stykker software, 500 eller måske 1000 linjer program, men i et program som fx Word er der over 500.000 linjer kode, så der er simpelthen kæmpe afstand mellem det, vi ved vi kan i dag, og det vi gerne vil kunne.«

Tips og korrekturforslag til denne historie sendes til tip@version2.dk
Følg forløbet
Kommentarer (12)
sortSortér kommentarer
  • Ældste først
  • Nyeste først
  • Bedste først
#2 Ivo Santos

Jeg vil mene at både Office 97 og Office 2000 indenholder allle de funktioner jeg har brug for, og desuden bruger disse pakker mindre strøm end i forhold til de nyeste office pakker. Så mangler vi et letvægts OS som kan køre disse office pakker.

  • 1
  • 0
#3 Christian Nobel
  • 5
  • 1
#4 Hans Nielsen

Så kan du da bare bruge LibreOffice i stedet for, og en Linux efter temperament.

RPi-4 forbruger under 5W og har rigeligt med hestekræfter.

Med et Logitech G15 keybord,G9 mus HD Skræm/TV og SD kort. 0,47 Ampere og 5 Volt så lige under 2.5 Watt. Men der er jo tab i USB PSU.

Køre langt bedre end jeg regnet med, Bedre end en billig nyere 2 kernet bærbare med Windows 10, fyldt til randen med service som jeg ikke anvender, men alligevel skal køre for at reportere hjem til MS, samt tåbelige spil, og sikkeheds patche som stort set har suget alt kraft ud af den. (sidste Intel CPU til mig)

Med et 64 Gb SD kort, så er der mere end 62 Gb til bruger data. Og OS tager kun 0.3 Gb af de 4 Gb til rådighed, så den kan sikkert også køre de 2 x 4K skærme som påstået. Perfekt som kontor PC.

Den fylder jo også mindre end en pakke cigeretter, så en rigtigt fint løsning til Kontor brug.

Men ud over det, så har du ret, LibraOffice og Office 95/97 ligner hinanden meget. Men hvis man vil arbejder sammen med andre skal man undgå Office. Alt efter version, patch og opdatereinger, så bliver formateringer forskelligt. Så man skal huske at gemme i ODF, det kan heldigvis også fået til via en opdatering 97.

Når man ser hvor lidt man har brug for, og hvor meget data kraft der kommer fra ARM CPU, så bør Intel være meget bange for sådan en 8 kernet billigt og strømbesparende CPU i lowendt market, mens Amd med de nye Ryzen 3 generation total tager det øverste marked.

  • 1
  • 1
#5 Christian Nobel

Med et 64 Gb SD kort, så er der mere end 62 Gb til bruger data. Og OS tager kun 0.3 Gb af de 4 Gb til rådighed, så den kan sikkert også køre de 2 x 4K skærme som påstået. Perfekt som kontor PC.

Et godt råd - benyt hellere en rigtig SSD via USB, det kan spare dig for mange ærgrelser, og er formodentlig også hurtigere nu hvor USB controlleren er blevet forbedret i RPi-4.

  • 0
  • 0
#6 Lars Andersen 2

Man skal bare tænke sig om inden man går i gang med at "spare". Havde engang en situation, hvor 3 gamle servere i datacenteret rutine mæssigt blev erstattet af 3 nye moderne servere. De nye servere afviklede uheldigvis vores batchjob 30 % langsommere. Det tog over een måned at finde ud af, at der default var sat en bios setting til economy (strømspare) mode. Den blev rettet til max, og vi fik 50% performance plus. Det er jo fint nok hvis man KAN tåle at køre langsomt men med 1200 brugere, som klagede var det ikke en option hos os.

  • 0
  • 0
#7 Ditlev Petersen

Man kan sagtens vedtage nogle standardopgaver, og så måle på dem under forskellige systemer, men der er jo så ufatteligt mange variationer i praksis, både på hardware og opsætningen af software, at man kan blive usikker på værdien af tallene. Men det kigger forskerne nok på fra starten (hellere end at blive skammet ud bagefter). De eneste, der kører standardsoftware, er vist Sundhedsplatformen ...

  • 0
  • 0
#9 Jacob Nordfalk

I stedet for at kigge på tingenes internet og andre steder kan man med fordel kigge på hvordan mobile applikationer er skruet sammen i f.eks. Android. Her har der igennem længere tid været særdeles stor fokus på at minimere strømforbruget, RAM-forbrug, og fungere med svingende netværk. Det gennemsyrer hele platformen.

Udkommet er f.eks. - omfattende og meget præcis monitorering af alle aspekter af en applikations resurseforbrug (udover selvfølgelig CPU/GPU/netværk/RAM også aktiviteter, der får det samlede system til at bruge strøm) - effektiv brug af CPU (og GPU), med mulighed for at lukke helt - upræcie ure - giver mulighed for at enheden planlægger hændelser på tværs af applikationer så det samlede strømforbrug minimeres - app's kan fjernes helt fra RAM og senere genskabe deres tilstand når der er behov for det - så RAM (og dermed strømforbrug) mindskes

  • 3
  • 0
#10 Martin Storgaard Dieu

Må indrømme at det første jeg tænkte på var Halting Problemet.

Projekteret kunne man skrive det som: Hvordan finder man ud af at et program aldrig rammer en sektion, som er dyr (i RAM, CPU, Netværk, Harddisk, strøm) i en periode?

Eller må software slet ikke indeholde noget kode, som potentielt kan være dyrt?

Mht Varnish, så er det måske nemmere at sige: I forhold til en ren IIS/Apache/Nginx opsætning, så sparer Varnish nogle kald til backend og dermed spare den strøm. Men hvad vil projektet bruge som baseline? Hvad er deres A+++? Hello World i assembly?

Eller har de tænkt sig 'lige' at løse Halting Problemet?

  • 0
  • 0
#12 Michael Cederberg

Energimærkning af software lyder som noget nær det dummeste jeg har hørt i lang tid. For vaskemaskiner, opvaskemaskiner og andre hårdehvidevarer er energimærkningen nemt at snyde med. VW lavede software til biler som snød. At forestille sig at man skulle kunne lave en energimærkning af software viser en fuldstændig mangel på forståelse af problemet.

Derfor er det nødvendigt at udvikle programmeringssprog, der adresserer energiforbrug, så programmørerne får bedre mulighed for at tage det med i deres udvikling af ny software,

Enhver kompetent udvikler ved godt hvor problemerne i hans software ligger. Udviklere skal ikke til at forstå om et while-statement er mindre energikrævende end et for-statement. Den slags betyder nul og niks. Men hvis han har en algoritme der er O(n^2) så er det ringere på næsten alle punkter (også energimæssigt) end en der er O(n log n) (hvis n bliver stort). Enhver moderne CPU kan fortælle hvor mange cycles koden bruger når den kører. Det er fint til udviklere som ønsker at optimere deres kode.

Når det gælder delte services, så kunne man bede leverandøren dele omkostningerne ud på brugerne. Evt. ved at lægge skat på energiforbrug. Det er klart det nemmeste og det sværeste at snyde med. Man skal bare forstå hvordan det påvirker samfundet hvis man går den retning (herunder erkende at dataprocessing kan flyttes til mindre skattetunge lande).

  • 1
  • 0
Log ind eller Opret konto for at kommentere