Der er stor fokus på energiforbruget til it i disse år, men det drejer sig typisk om at udvikle mere effektive chips og kølesystemer. Nu har forskere fra University of Washington udviklet et softwarebaseret system, kaldet EnerJ, som angiveligt kan reducere energiforbruget med op til 90 procent kun ved at ændre i softwaren eller ved en kombination af software og hardware. Man kunne kalde det for ”grøn kode”.
”Vores langsigtede mål er at tidoble batteri-levetiden,” siger Luis Ceze, som er en af de to forskere bag det nye system.
Det grundlæggende koncept er at udnytte processer som tillader små fejl uden at hele programmet går ned. Det kan f.eks. være billedgenkendelse, streaming af lyd, video eller spil. Her betyder det ikke så meget, om et par bit bliver ”vendt rundt”. Men man kan spare meget energi ved at undlade fejlkorrektion eller køre processoren med en lavere spænding.
EnerJ opdeler koden i to segmenter. Den ene del indeholder den kode hvor fejl ikke er tilladt – det kan f.eks. være kryptering, hvor selv et enkelt forkert bit kan være katastrofalt. Den anden del indeholder processer som er lidt mere fejltolerante. Softwaren skaber så en barriere, der forhindrer at koden kan blive blandet sammen.
”Billedgenkendelse fungerer allerede selv om der er små problemer med billedet, som et par prikker med snavs. Hvis vi tilføjer lidt flere fejlpunkter, så burde algoritmen stadig fungere, og vi kan spare energi,” siger den anden af systemets opfindere, Adrian Sampson.
Det skulle også fungere med den nuværende hardware, men der kan spares endnu mere energi hvis man udvikler nye chips, hvor man kan sænke strømforbruget hvis man kører fejltolerante processer.
”Hvis du kan tillade dig at lave en fejl for hver 100.000 operationer, så kan du allerede spare meget energi,” siger Ceze.
Alene ved at anvende ”grøn kode” på en eksisterende computer eller smartphone burde man kunne halvere energiforbruget, mener forskerne, og det skulle være muligt at spare 90 pct. med en kombination af software og specialdesignet hardware.
EnerJ er en udvidelse af programmeringssproget Java og skal frigives som et open source værktøj senere i år.