Een applicatie verbruikt energie. Maar hoeveel?

Een applicatie verbruikt energie. Maar hoeveel?
Hoe kun je het energieprofiel van een applicatie vaststellen? En hoe kan het profiel worden ingezet om het energieverbruik te verlagen? Twee praktijkcasussen maken het duidelijk.
Jeroen Arnoldus en Joris Gresnigt
Als het gaat om energieverbruik, dan zijn de ogen vooral gericht op hardware. Wij stellen voor om deze blik te verbreden tot het niveau van de applicatie. De applicatie is tenslotte de reden dat de hardware aanwezig is en er energie wordt verbruikt. Om de gewenste taken uit te voeren, maakt de applicatie gebruik van rekencapaciteit en opslagcapaciteit. Dit verlangen naar computercapaciteit zorgt voor het energieverbruik van de applicatie.
Het beslag van applicaties op de onderliggende infrastructuur staat weer op de agenda. Vroeger was het een item vanwege de beperkende capaciteit van de hardware, nu omdat de hulpbronnen (zoals ruimte en energie) beperkt zijn. Op dit moment worden er nog grote slagen gemaakt om in een kleinere ruimte met minder energie dezelfde computercapaciteit te leveren. Zoals Koomey aantoont worden processors steeds zuiniger, meer dan tweemaal zo zuinig per jaar . Ook datacentra zijn continu bezig hun rendement te verhogen2. Het ontbreekt echter aan inzicht om eenduidig vast te leggen hoeveel beslag applicaties leggen op deze computercapaciteit. Dat ontbrekende inzicht wordt enerzijds veroorzaakt door de meestal strikte scheiding tussen applicatieontwikkeling en systeembeheer en anderzijds doordat een begrijpelijke kwantificering ontbreekt. In dit artikel stellen we drie energiegrootheden voor om het vacuüm tussen beide partijen te doorbreken; ze stellen ook de applicatie-eigenaar in staat om deze partijen te sturen. De grootheden zijn energietotaal per jaar (AE), energieverbruik per uitgevoerde transactie (ET) en de RE (relatieve applicatie energieefficiëntie).
Twee van de drie grootheden zijn gekoppeld aan de geleverde functionaliteit van de applicatie. Zo wordt het mogelijk om te redeneren en te sturen op de computercapaciteitbehoefte vanuit het oogpunt van de functionaliteit van de applicatie. Beslissingen op het gebied van de softwarearchitectuur kunnen onbedoeld tot extra gebruik van computercapaciteit leiden of bepaalde hardwarefunctionaliteit kan beter worden uitgevoerd op softwareniveau. Het meten en relateren van de gegevens stimuleert om gedurende de ontwerpfase zowel de ontwikkelaars als systeembeheer inbreng te laten hebben in de architectuur.
De applicatie-eigenaar krijgt een stuurinstrument in handen dat inzicht geeft in de schaalgrootte van de applicatie in verhouding tot de geleverde en afgenomen functionaliteit. Er kan daardoor een intuïtie gecreëerd worden of de applicatie efficiënt is geïmplementeerd en er kan inzicht verkregen worden over de schaalgrootte van een bepaalde functionaliteit. Uiteindelijk is het doel om deze informatie over verschillende applicaties te verzamelen in een energieregister. Dit register kan gebruikt worden om intuïtie over (in) efficiëntie te onderbouwen. We laten zien hoe een energieregister vorm krijgt aan de hand van twee casussen uitgevoerd bij Logius. Logius is de dienst digitale overheid, bekend van diensten als DigiD. Deze twee casussen hebben geresulteerd in het vaststellen van het energieprofiel van twee applicaties.
Inzicht in energieverbruik
Het energieprofiel maakt het energieverbruik van een applicatie in de productieomgeving inzichtelijk. Het toegepaste energieprofiel bestaat uit drie grootheden:
• AE: Energieverbruik op jaarbasis;
• ET: Energieverbruik per uitgevoerde transactie;
• RE: Rendement van de applicatie in gebruik ten opzichte van haar optimale belasting.
Het energieprofiel is bedoeld om een applicatie te beoordelen in haar productieomgeving. De onderliggende reden hiervoor is dat kennis van de toegepaste hardwareconfiguratie van belang is voor het bepalen van het energieprofiel, evenals kennis van het gebruik van de applicatie.
Het totale energieverbruik is de belangrijkste grootheid van het energieprofiel. Het doel is om deze waarde te reduceren tot een minimum. De andere twee grootheden zetten het totale energieverbruik in perspectief door de hoeveelheid transacties mee te nemen in de berekening. Hierdoor kunnen ook applicaties met een hoog volume aan transacties en een hoog totaal energieverbruik eerlijk beoordeeld worden.
Energieverbruik per jaar
Het totale energieverbruik per jaar geeft inzicht in de schaalgrootte van de applicatie. Een kleine ondersteunende applicatie zou minder energie moeten verbruiken dan een grote applicatie die veel en/of complexe transacties moet verwerken. Het totale energieverbruik van een applicatie bestaat uit de volgende berekening:
AE Hardware wordt bepaald door de som te nemen van het energieverbruik van individuele servers. Het energieverbruik per server wordt berekend door het totale energieverbruik te vermenigvuldigen met het toewijsbare gebruik door de applicatie. Het toewijsbare gebruik is honderd procent als de server alleen wordt gebruikt voor de applicatie. Wordt de server gedeeld, dan wordt het percentage CPU-gebruik van de applicatie gehanteerd. In geval van opslagcapaciteit wordt de hoeveelheid opslagruimte gebruikt, of een andere specifieke rekenmethode passend bij de soort hardware.
AE communicatie wordt bepaald door de hoeveelheid netwerkverkeer te vermenigvuldigen met gemiddelde energiekosten voor het transport van data. Het gemiddelde energieverbruik voor dataverkeer over het internet kan bijvoorbeeld worden afgeleid uit benchmarks3,4.
Energieverbruik per transactie
Een systeem wordt gebouwd om taken te verrichten, de zogenaamde transacties. Meestal kan voor een systeem een enkele hoofdtransactie beschreven worden; bijvoorbeeld voor een ‘core banking’-systeem het verwerken van een overboeking en voor een e-mailserver het versturen van een bericht. De andere transacties, zoals rapportages, staan in dienst van de hoofdtransactie. De volgende grootheid geeft weer hoeveel energie er verbruikt wordt om de transactie van een applicatie uit te voeren. De berekening voor energieverbruik per transactie is: ET = AE / #transacties (jaar) [V2]
ET zet het totale energieverbruik in perspectief ten opzichte van het gebruik van de applicatie. Een applicatie met een hoog volume kan met hoog totaal energieverbruik een lage benodigde hoeveelheid energie per transactie halen. Andersom kan een applicatie met een laag totaal energieverbruik en een klein aantal transacties resulteren in een hoog energieverbruik per transactie. Er wordt voor de ET geen rekening gehouden met het verschil tussen actief en rusttoestand van de applicatie. Het model verdeelt het complete energieverbruik, inclusief verbruikte energie in rust, evenredig over alle transacties. De relatieve applicatie energie-efficiëntie ondervangt dit en zal beter gewaardeerd worden als de component energieverbruik in rust laag is.
Relatieve applicatie energie-efficiëntie
De laatste grootheid is relatieve applicatie energie-efficiëntie (RE). De RE drukt uit in hoeverre de applicatie belast wordt in haar efficiënte werkgebied. De definitie van relatieve applicatie energie-efficiëntie is: RE = ET (optimaal) / ET % [V3]
De RE is gebaseerd op twee waarden. De ET (optimaal) is de waarde voor ET waar deze het laagst is. Dit wordt bepaald door de applicatie aan een belastingtest te onderwerpen, waarbij wordt vastgesteld wanneer de ET op haar laagste punt komt zonder dat de performance-eisen worden overschreden. De ET vertegenwoordigt het gemiddelde verbruik van een transactie en wordt bepaald door de eerder gepresenteerde vergelijking [V1].
De optimale waarde voor de RE is honderd procent. Deze waarde wordt behaald als een applicatie exact gedimensioneerd is op haar gebruik. Een overgedimensioneerde applicatie heeft een lage RE. Voor constant gebruik betekent dit dat de applicatie de laagste ET heeft voor de betreffende belasting. Vaak vertoont het gebruik van een applicatie echter pieken dalmomenten. In dat geval dient de applicatie mee te schalen met haar belasting om een optimale RE te halen.
Een methode om applicaties mee te laten schalen is door gebruik te maken van virtualisatie. Computerapparatuur heeft nog de eigenschap de hoogste efficiëntie te halen onder zware belasting5. In de toekomst zou dit mogelijk kunnen verbeteren door enkel gebruik te maken van niet-actief gekoelde solid-state componenten die geen energie verbruiken in rust. Op dit moment is dat nog niet het geval, en moet de belasting van de machines hoog gehouden worden om ze in hun efficiëntste werkgebied te houden.
Een van de mogelijkheden om dit te bereiken is door het gebruik van virtualisatie, zoals gebeurd in cloudoplossingen. Applicaties kunnen hun aandeel op de machines laten groeien of krimpen naar gelang de computercapaciteit die ze nodig hebben.
Elasticiteit wordt geïllustreerd door figuur 1 .
Figuur 1. Energieverbruik en belasting overdag van een fictieve applicatie
Deze figuur toont het transactieverloop over de dag, met drie pieken. De andere twee lijnen tonen het energieverloop van twee (fictieve) opstellingen. De eerste opstelling vertoont een stabiel energieverbruik van 4 kWh per uur, de tweede opstelling vertoont een variabel energieverbruik gebaseerd op de belasting van het systeem. Wel kent deze tweede opstelling een basisenergieverbruik van 1 kWh. De RE’s voor de betreffende opstellingen zijn voor de eerste 64 procent en de tweede 28 procent. Als bij de tweede opstelling de hoeveelheid verbruikte energie in rust nog zou dalen, zou de RE nog verder stijgen richting honderd procent.
Hardwarereductie is echte besparing
Energieverbruik in kaart brengen is een kant van het verhaal, de andere kant is het verlagen van het energieverbruik. De benodigde inspanning om het energieverbruik van de applicatie te verlagen is in sommige gevallen echter te hoog om de baten puur uit energiekostenreductie te halen. De energiekosten zijn hier te laag voor .
De operationele kosten van een applicatie kunnen echter wel drastisch verlaagd worden door te sturen op een lager energieverbruik. De achterliggende gedachte hierbij is de trivialiteit dat er hardware nodig is om energie te verbruiken. Dit betekent dat het verlagen van het totale energieverbruik van een applicatie leidt tot het niet hoeven aanschaffen of uit dienst nemen van machines. De kostencomponenten van een machine bestaan onder andere uit afschrijving, software licenties, housing en operationeel beheer.
De kostenreductie van het niet hoeven aanschaffen of het uit dienst nemen van servers kan per server oplopen tot duizenden euro’s. In geval van DigiD Machtigen staat elke kilowattuur verbruikte energie gelijk aan 24 euro totale operationele kosten van de infrastructuur. Deze kosten bevatten onder andere het inhuren van virtuele machines en het beheer van de infrastructuur. Sturen op kleinere omvang van de applicatie kan significante reductie opleveren van de operationele kosten. Wel moet opgemerkt worden dat deze kosten potentieel niet lineair naar beneden schalen.
Door het gebruik van energiegerelateerde grootheden kan de reductie van de hardwareconfiguratie op een transparante manier plaatsvinden door alle lagen van een organisatie. De verschillende disciplines, zoals technici, ontwikkelaars en eigenaren, hebben in de energiegerelateerde grootheden een eenduidig vocabulaire om te overleggen en redeneren over besparingsmogelijkheden.
Inzicht en reductie
Logius wil groene diensten leveren aan haar klanten, dit houdt onder andere in dat ze inzicht heeft in het energieprofiel van haar diensten en daar op kan sturen. Onnodig energieverbruik wil Logius uitbannen door het inzetten van bovenstaande indicatoren in haar aanbestedingen.
Met deze indicatoren kan namelijk functioneel gevraagd worden naar energieverbruik. Hierbij wordt zoveel mogelijk de innovatie aan de markt gelaten.
Recent is ook aan de klanten van Logius gevraagd of ze energieverbruik van applicaties belangrijk vinden. Uit dit interne onderzoek blijkt dat 81 procent van onze onderzochte klanten geen inzicht heeft in het energieverbruik van hun softwareapplicaties en van deze groep zou 75 procent dit wel graag willen. 80 Procent wil dat Logius stappen neemt om de producten energiezuiniger te maken en bijna alle klanten willen duurzaamheid zwaar laten meewegen bij het inkopen van hun applicaties. Inzicht in en reductie van energieverbruik worden de norm.
Quick wins
Het energieprofiel zoals hier gepresenteerd is ontstaan en gevalideerd tijdens een onderzoek naar het energieverbruik van twee systemen. Deze geselecteerde systemen zijn DigiPoort en DigiD Machtigen8. Tijdens het onderzoek hebben we het energieprofiel van de applicaties opgesteld en gekeken naar makkelijk uitvoerbare verbeterpunten.
Digipoort
Digipoort is een elektronisch overheidsdienst om berichten veilig, betrouwbaar en snel naar specifieke overheidsorganen te sturen. Het wordt ingezet in het berichtenverkeer van bijvoorbeeld de Rotterdamse haven en Schiphol. De hoofdtransactie van dit systeem is het versturen van een bericht.
DigiD Machtigen
DigiD Machtigen is een elektronische dienst waarmee belanghebbenden derden kunnen machtigen zaken met de overheid te regelen. De machtiging vindt plaats door een overheidsaccount (DigiD) van de gemachtigde te machtigen om gebruik te maken van specifieke overheidsdiensten in naam van de belanghebbende. Denk hierbij aan het machtigen van een boekhouder om de belastingaangifte te doen. De hoofdtransactie van dit systeem is de machtiging.
Twee energieprofielen
Voor de twee applicaties zijn cijfers berekend ( figuur 2 ). Met de getallen moeten we voorzichtig omspringen. De cijfers zijn verkregen in een vrij korte tijd met imperfecte meetgegevens. Daarnaast kunnen er goede redenen zijn waarom de ene applicatie meer energie verbruikt dan de andere, zoals in dit geval Digipoort. Zo kan een applicatie met hele hoog eis aan beschikbaarheid en redundantie ervoor zorgen dat er meer energie wordt verbruikt dan een applicatie waarvoor dit geen eis is. De RE van Digipoort is beter dan van DigiD Machtigen doordat er veel meer transacties overheen zijn gegaan in de gemeten periode. De schaalgrootte van Digipoort verklaart ook waarom het totale energieverbruik zoveel groter is dan bij DigiD Machtigen. Dit zegt nog niets over hoe energie-efficiënt de applicatie zelf is. Functioneel zijn beide applicaties wezenlijk verschillend. Een analyse op architectuur en daarna op algoritmeniveau is noodzakelijk om het besparingspotentieel op verschillende niveaus te bepalen.
Figuur 2. Berekening van het energieverbruik van twee applicaties
Energiebesparende acties
Het lijkt erop dat DigiD Machtigen het grootste gedeelte van de tijd niets aan het doen is, terwijl de servers wel stabiel veel energie verbruiken. Een RE van 11 procent is laag en 38 Wh per transactie lijkt aan de hoge kant. Deze hoeveelheid energie komt overeen met een laptop een uur laten rekenen9. Dit is verklaarbaar gezien de piekbelasting van deze applicatie. Rond de belastingaangifteperiode worden veel meer mensen gemachtigd om dit voor iemand anders te doen, terwijl in andere periodes het aantal machtigingen bijna nihil is. Een onderzoek van het energieverbruik van applicaties stimuleert extra overleg tussen het operationele beheer en applicatieontwikkeling. Hierdoor wordt voor beide kanten van de keten duidelijk wat de gevolgen van bepaalde ontwerpbeslissingen zijn.
Het is bijvoorbeeld mogelijk dat iemand die zich bezig houdt met het serverpark wel ziet dat servers aan het draaien zijn, maar niet weet of dat wel nodig is.
Tijdens het onderzoek zijn twee bevindingen met betrekking tot Digipoort naar boven gekomen die meteen tot energiebesparende acties leidden. De eerste bevinding was dat er een omgeving was ingericht die niet gebruikt werd, maar wel beschikbaar was. Deze omgeving wordt uitgeschakeld en dit levert een besparing op van 14.000 kWh per jaar. De tweede bevinding was dat de servers niet automatisch schaalden in energieverbruik bij hoge of lage belasting. Het bleek dat deze optie expliciet in de firmware was uitgezet. De reden hiervoor was niet meer gegrond, en de processorschalingsoptie is naar aanleiding van deze pilot weer geactiveerd.
Eigenaar aan het ‘energiestuur’
Sturen met indicatoren
Een applicatie-eigenaar heeft de verantwoordelijkheid om inzicht te krijgen in het energieverbruik van de applicatie en dient vanuit de maatschappelijk verantwoord ondernemen (MVO)-gedachte te sturen op de reductie ervan. De drie indicatoren geven het stuur in handen om beide te doen. Om te sturen op reductie moet een applicatie-eigenaar het energieprofiel van de applicatie over tijd bijhouden. Hiermee kan de eigenaar volgen of de applicatie efficiënter wordt over de tijd en of het nog realistisch is om zwaardere eisen te stellen. Een voorbeeld: of 1,27 Wh per transactie het optimum is, kan bepaald worden door over tijd te meten waarbij actief gestuurd wordt op lager energieverbruik per opgeleverde systeemrelease. Het wordt dan ook helderder of het realistisch is om bijvoorbeeld in de eerstvolgende aanbesteding te vragen om dat getal naar 1,0 Wh per transactie te brengen.
Borging via architectuur
Voor Logius is het belangrijk om het meten van het energieprofiel en het sturen daarop te borgen in de principes waarmee haar software wordt gemaakt. Daarom wil Logius in haar enterprisearchitectuur de volgende principes gaan hanteren:
1) Het energieverbruik moet op functioneel niveau inzichtelijk zijn. Publicatie van energiebehoefte van de hoofdtransacties. De onderliggende energiemodellen en meetgegevens dienen openbaar te zijn.
2) De energie-efficiëntie moet beter worden over de tijd. De verbeteringen moeten op alle niveaus (software en hardware) plaatsvinden. Energie-efficiëntie moet als kwaliteitseis onderkend zijn bij bouw en onderhoud van de applicatie.
Keurmerk
Het doel is een keurmerk voor energie-efficiëntie van applicaties. Een keurmerk geeft eigenaren de mogelijkheden te sturen en in te kopen op efficiëntie en leveranciers om te concurreren op betere energie-efficiëntie. Een keurmerk kan pas tot stand komen als aan de volgende voorwaarden is voldaan: er is een geschikte functionele categorisatie en er is per categorie een significant aantal energieprofielen. De eerste voorwaarde komt voort uit het feit dat applicaties niet zonder meer met elkaar vergeleken kunnen worden. Applicaties leveren veelal verschillende functionaliteiten die andere hoeveelheden werk met zich mee brengen. Een categorisatie gebaseerd op functionaliteit zou dit probleem gedeeltelijk kunnen opheffen. Voorbeeldcategorieën zijn mailsystemen, realtime-systemen en administratiesystemen. Onderzoek en discussie is noodzakelijk om overeenstemming te krijgen over geschikte functionele categorisatie.
Naast categorisatie is het noodzakelijk dat systemen onderling vergeleken kunnen worden. Theoretisch is het mogelijk om te redeneren over de benodigde energie voor een informatiebewerking . Door de hoge mate van complexiteit van de geleverde functionaliteit door applicaties is dit optimum in de praktijk lastig vast te stellen. In de geest van het onbekende optimum is het wel mogelijk om soortgelijke applicaties met elkaar te vergelijken en te verbeteren. Dit kan worden gepraktiseerd door het opbouwen van een energieregister met een significant aantal applicaties per functionele categorie.
De eerste stap naar een keurmerk is het verzamelen van energieprofielen in een energieregister. Logius wil daaraan bijdragen door ook haar andere applicaties door te meten en er wordt gekeken of meer partijen zich willen aansluiten bij dit initiatief.
Conclusie
In dit artikel hebben we een energieprofiel gepresenteerd waarmee het energieverbruik van applicaties in kaart kan worden gebracht. Dit energieprofiel bestaat uit drie grootheden: het totale energieverbruik per jaar, energieverbruik per transactie en de relatieve applicatie energie-efficiëntie. Het toepassen van het energieprofiel hebben we getoetst op twee systemen. Het energieverbruik van DigiPoort en DigiD Machtigen is vastgesteld. Ook zijn er gemakkelijk toepasbare energiebesparende maatregelen voorgesteld, met name met betrekking tot het verbeteren van de elasticiteit. In de toekomst werken we toe naar een uitgebreid register. Dit register maakt het mogelijk om applicaties te vergelijken en om – als een geschikte functionele categorisatie gedefinieerd kan worden – tot een energiekeurmerk te komen.
 
Joris Gresnigt is projectleider maatschappelijk verantwoord ondernemen (MVO) bij Logius. E-mail: joris.gresnigt@logius.nl
Jeroen Arnoldus is consultant bij SIG. E-mail: j.arnoldus@sig.eu
Dit onderzoek had niet kunnen plaatsvinden zonder de medewerking van enkele mensen en partijen. Wij danken Agentschap NL voor de financiering van het onderzoek dankzij het MJA-programma, Logius voor het beschikbaar stellen van de casussen. Cap Gemini, Equinix en KPN voor hun medewerking als leveranciers van de applicaties. En Dirk Harry van Mansystems en Joost Visser, Kay Grosskop en Michiel Cuijpers van de Software Improvement Group (SIG).
 
(1) Koomey, J.G. “Outperforming moore’s law.” Spectrum, IEEE 47.3 (2010): 68-68.
(2) “Report on server and data center energy efficiency”, 2007, United States Environmental Protection Agency (EPA) Energy Star Program
(3) Costenaro, D, Duer, A, “The Megawatts behind Your Megabytes: Going from Data-Center to Desktop”, 2012, ACEEE Summer Study on Energy Efficiency in Buildings
(4) Weber, C. L., Koomey, J. G. and Matthews, H. S. (. “The energy and climate change implications of different music delivery methods.” Journal of Industrial Ecology 14.5 (2010): 754-769.
(5) Barroso, L.A., Hölzle, U. “The case for energy-proportional computing.” Journal of Computer 40.12 (2007): 33-37. (6) CBS, “Aardgas en elektriciteit, gemiddelde prijzen van eindverbrui-kers”, http://statline.cbs. nl/StatWeb/publication/?VW=T&DM=SLN-L&PA=81309NED&D1= 0-1,5,8,12,15&D2=0&D 3=0&D4=4,9,14,(l-6)-l& HD=130226-1041&HDR =T&STB=G2,G3,G1
 
 

Tag

Onderwerp



Niet gevonden? Vraag het de redactie!

Heeft u het antwoord op uw vraag niet gevonden, of bent u op zoek naar specifieke informatie? Laat het ons weten! Dan zorgen we ervoor dat deze content zo snel mogelijk wordt toegevoegd, of persoonlijk aan u wordt geleverd!

Stel uw vraag