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.
Et stadig større strømforbrug
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 googlesøgning 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 MSO Bent Thomsen.
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.
Softwaresprog, 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 cloudservices − på serversiden i datacenteret," forklarer Bent Thomsen.
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."
Nedsættelse af strømforbruget
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ærtø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."