HOGESCHOOL VAN AMSTERDAM
SEFLab SURF innovatieregeling 2013 SEFLab in IT onderwijs Bo Merkus 30 november 2013
Inhoudsopgave 1
Introductie ....................................................................................................................................... 4
2
Quickscan groene ICT in het hoger onderwijs ................................................................................. 6
3
4
5
6
7
2.1
Inleiding ................................................................................................................................... 6
2.2
Methode .................................................................................................................................. 6
2.3
Resultaat .................................................................................................................................. 6
2.4
Conclusie ................................................................................................................................. 8
Domein specifiek kader IEEE/ACM .................................................................................................. 9 3.1
Introductie ............................................................................................................................... 9
3.2
Resultaat .................................................................................................................................. 9
3.3
Conclusie ............................................................................................................................... 12
Ontwerprichtlijnen voor groene software .................................................................................... 13 4.1
Introductie ............................................................................................................................. 13
4.2
Resultaat ................................................................................................................................ 13
4.3
Conclusie ............................................................................................................................... 16
Inventarisatie IT opleidingen HvA ................................................................................................. 17 5.1
Introductie ............................................................................................................................. 17
5.2
Structuur opleiding ................................................................................................................ 17
5.3
Beroepsprofielen ................................................................................................................... 18
5.4
Relevante vakken en projecten ............................................................................................. 19
5.5
Conclusie en concrete kansen ............................................................................................... 20
Uitbreiding SEFLab......................................................................................................................... 22 6.1
Introductie ............................................................................................................................. 22
6.2
Nieuwe Hardware.................................................................................................................. 22
6.3
Sensor boards en data-acquisitie .......................................................................................... 23
6.4
Conclusie ............................................................................................................................... 24
Projecten in SEFlab ........................................................................................................................ 25 7.1
Introductie ............................................................................................................................. 25
7.2
Projecten binnen informatica HvA ........................................................................................ 25
7.3
Pilot “wedstrijd energie-efficiënt googlen” ........................................................................... 26
7.4
Effect van virtual machines op het energieverbruik ............................................................. 27
7.5
Minor Energie & Duurzaamheid ............................................................................................ 27
7.6
Overige projecten .................................................................................................................. 28
7.7
Conclusie ............................................................................................................................... 28
8
Disseminatie .................................................................................................................................. 29
9
Conclusies en aanbevelingen ........................................................................................................ 30
1 Introductie In het kader van de het project “SEFLab in ICT onderwijs” t.b.v. de SURF innovatieregeling 2013 is een inventarisering uitgevoerd van het ICT onderwijs aan de HvA, VU en UvA en de mogelijkheden om SEFlab hierin in te bedden. Het CleanTech onderzoekprogramma is in 2012 onder andere met hulp van de SURF Innovatieregeling het SEFLab gestart: het Software Energy Footprint Lab, waar het energieverbruik dat software op hardware veroorzaakt nauwkeurig en onder gecontroleerde condities kan worden gemeten. Tot recent is het lab alleen ingezet in de opleiding E-technology van domein Techniek. Het biedt echter ook goede mogelijkheden om ingezet te worden in ICT opleidingen van het domein Media Creatie en Informatie en mogelijk buiten de HvA in ICT opleidingen van de UvA en VU. Dit project heeft daarom als doel gehad het onderzoeken van de haalbaarheid van een lesmodule “Green software Engineering”. Uitgangspunt hierbij is de inzet van het SEFLab in het ICT-onderwijs zodat studenten leren welke afwegingen gemaakt worden bij de ontwikkeling van energie-efficiënte software en de resultaten van de studentenprojecten bijdragen aan de ontwikkeling van richtlijnen voor energie-efficiënte softwareontwikkeling. Het lange termijn effect hiermee is dat: toekomstige IT-professionals worden bewustgemaakt duurzaamheid in ICT en hen wordt geleerd hoe een softwareapplicatie energie-efficiënter geprogrammeerd kan worden. -
studenten zullen bestaande richtlijnen implementeren in hun applicaties
-
de effectiviteit van de richtlijnen worden getest in het SEFLab en kenbaar gemaakt aan huidige IT-professionals (via publicaties in vakbladen en een workshop).
Om bovenstaande duurzame effecten te bereiken waren de volgende activiteiten gepland: -
Inventarisatie van mogelijkheden om het SEFLab in te zetten in het IT-onderwijs van de HvA en VU/UVA en onderzoek naar de haalbaarheid en leerdoelen van een lesmodule Green Software Engineering.
-
Geschikt maken van het SEFLab voor practicum-toepassing door uitbreiding van het aantal servers en meetopstellingen.
-
Onderzoek naar mogelijkheden om het SEFLab remote aan te sturen (uploaden van software t.b.v. testing)
-
Literatuuronderzoek naar bestaande richtlijnen voor de ontwikkeling van groene software.
-
Het door studenten laten testen van een aantal richtlijnen aan de hand van zelfgeschreven applicaties in het SEFLab.
Het grootste deel van deze activiteiten is uitgevoerd; enkele zijn vooralsnog niet afgerond, onder andere wegens het ontbreken van studenten Informatica om hier uitvoering aan te geven. Zo zijn we nog steeds aan het werven voor studenten om Remote-functionaliteit op te zetten, alsmede het laten testen van richtlijnen voor groene software. In plaats daarvan zijn enkele andere tests uitgevoerd, welke hebben bijgedragen aan het doel van dit project, namelijk integratie van SEFLab binnen de Informatica opleidingen. Zo is het SEFLab opengesteld aan onderzoekers en studenten van andere universiteiten waaronder van de VU, UvA en HvA. In deze projecten zijn verschillende resultaten geboekt. In samenwerking met de VU is de Intel Energy Checker tool geïmplementeerd waardoor de meetdata realtime buiten Labview software om uitgelezen kan worden (een voorwaarde voor remote meten). De harde schijven van de meetserver zijn buiten de server geplaatst zodat deze gemakkelijk te verwisselen zijn. Er is een pilot met twaalf studenten uit de minor Energie & Duurzaamheid opgezet, waarmee een wedstrijd “Energie-efficient zoeken op internet” is uitgevoerd waaruit bleek dat het lab geschikt is snel, leerzame resultaten te genereren. De samenwerkingen met diverse instituten en bedrijven zijn o.a. gebruikt om de huidige labopstelling te valideren en inzichtelijk te maken of en hoe deze kan worden opengesteld voor derden (in toekomst ook studenten TI). Daarnaast is met VU samengewerkt om een aantal concrete ontwerprichtlijnen voor groen software te testen. Dit onderzoek is nog in volle gang; en wordt begin begin 2014 afgerond (te laat voor deze rapportage). Vergelijkbaar is een virtualisatie studie met de UvA opgezet. De resultaten dragen bij aan het doelstelling van dit project. Al met al heeft het SEFlab met de SURF subsidie weer enkele professionaliseringsslagen kunnen maken; zowel in de meetopstelling, in de meetmethode, en in de vertaling naar inzet voor het onderwijs. De rest van dit rapport is als volgt opgebouwd. In hoofdstuk 2 is een verkennend onderzoek uitgevoerd naar vakken en cursussen die andere hogere onderwijsinstellingen, nationaal en internationaal, al geven op het gebied van GreenIT en specifieker Groene Software. In Hoofdstuk 3 is aan de hand van het document “Computer Science Curricula 2013” de vraag naar GreenIT kennis door de IT industrie onderzocht. In hoofdstuk 4 wordt ingegaan op de ontwerprichtlijnen van groene software en de toepassing van de deze richtlijnen in lesstof voor een lesmodule groene software. In hoofdstuk 5 wordt de structuur van IT de opleidingen aan de HvA en aanknopingspunten voor GreenIT vakken en projecten onderzocht. Hoofdstuk 6 beschrijft de uitbreidingen die in het SEFLab zijn gemaakt om meer studentenpojecten te kunnen faciliteren. In Hoofdstuk 7 wordt een overzicht gegeven van projecten en nieuwe samenwerkingsinitatieven met verschillende organisaties die bijdragen aan de ontwikkeling van het SEFlab en de kennis over groene software. In Hoofdstuk 8 wordt disseminatie van de resultaten besproken en tenslotte zullen in Hoofdstuk 9 conclusies en aanbevelingen gegeven worden.
2 Quickscan groene ICT in het hoger onderwijs 2.1 Inleiding In dit hoofdstuk wordt onderzocht welke vakken er al in het hoger onderwijs al worden gegeven over het onderwerp Groene ICT en aan welke specifieke onderwerpen daarbinnen aandacht wordt besteedt. Om deze informatie te achterhalen is door een stagiair werkzaam voor de Open Universiteit een quickscan gedaan. Onderzocht is welke hoger onderwijsinstellingen in Nederland en in het buitenland in hun curriculum aandacht besteden aan Groene ICT en dan in het bijzonder Groene Software. Informatie over het vergroenen van de ICT van de onderwijsinstellingen zelf is niet bij de scan betrokken. Ook onderzoeken bij onderwijsinstellingen naar Groene ICT zijn niet opgenomen in deze scan.
2.2 Methode De quickscan is uitgevoerd via internet zoekopdrachten. In 1e instantie is gezocht met de zoekmachine Google. Voor specifieke informatie over een instelling is verder gezocht binnen de website van de betreffende instelling. De zoekopdracht is gedaan met de volgende keywords: “Groene software ", Groene ICT", "Groene IT", "Duurzame ICT", "Duurzame IT" gecombineerd met "onderwijs" en “Green Software”, “Green Code”, "Green ICT", "Green IT", “Green Computing”, "Sustainable ICT" en "Sustainable IT" gecombineerd met "education". Daarnaast is gebruik gemaakt van twee eerdere onderzoeken (quickscans) naar duurzaamheid in het hoger onderwijs om specifiek binnen de genoemde instellingen te zoeken. Voor Nederland is het "Rapport Duurzaamheid in het ICT-onderwijs en -onderzoek" (Plessius, 2012) benut. De in dit rapport genoemde bronnen zijn op de websites van de betreffende instellingen bekeken op relevantie voor Groene ICT. Verder is gekeken of de informatie nog actueel was. Voor internationale informatie is mede geput uit "Where Can Green IT/IS Education and Training Be Found Today? An Initial Assessment of Sources" (England & Bartczak, 2012). Ook uit dit document zijn de bronnen bekeken en geactualiseerd. Ten slotte is er persoonlijk contact geweest met René Visser van de Hogeschool Rotterdam om informatie te verkrijgen. De gebruikte zoekmethode brengt met zich mee dat alleen informatie wordt gevonden in het Nederlands en het Engels. Als (buitenlandse) instellingen hun informatie niet in het Engels ter beschikking stellen, wordt deze gemist. Ook zijn de zoektermen zo generiek dat er een zeer groot aantal gevonden items zijn, zodat er gemakkelijk relevante webpagina's gemist worden.
2.3 Resultaat In het algemeen is er wel informatie te vinden over specifieke lesstof met betrekking tot Groene ICT in het algemeen maar nauwelijks over Groene Software in het bijzonder. In de bijlage zijn twee tabellen opgenomen met gevonden informatie over Nederlandse en internationale onderwijsinstellingen (tabel 1). De belangrijkste uitkomsten zijn hier samengevat in een kruistabel, waarbij per onderwijsinstelling is weergegeven in welk ICT domein aandacht is voor groene ICT onderwerpen.
Tabel 1. Resultaten quick scan GreenIT in hoger onderwijs
Instelling Nederland
Greening by IT
Groene ICT (Greening of IT) Leerdoelen Soft- ICT alData Levens- Hardware gemeen center cyclus ware
Hogeschool Arnhem en Nijmegen
Beleid
√
Hogeschool van Rotterdam
√
Hogeschool van Utrecht
√
√
Noordelijke Hogeschool
√
√
Buitenland Leeds Metropolitan University (GB)
√
√
University of Bradford (GB) Université de Lorraine (F) e.a.
√
(√) (√)
√
√
√
Letterkenny Institute of Technology (Ierland)
√
√
Linkoping University (Sweden)
√
√
Australian National University
√
Athabasca University (Canada)
√
Open Universities Australia
√
University of the South Pacific
√
Arizona State University (USA)
√
√
√
√
University of Illinois (USA)
√
Boston University (USA) St Xavier University, Chicago George Mason University (USA)
√
√
√
√
√ √
√
√ √
√ √
√
(√)
√
√
√
√
√
√
√
√
√
In het ICT onderwijs bestaan meerdere opleidingen en vakken binnen opleidingen, waarin aandacht wordt besteed aan Groene ICT.: in Nederland zijn vier instellingen gevonden, in het buitenland veertien. Vooral de algemene termen samengevat in Groene ICT worden veel gebruikt : NL: 1 van 4,
buitenland 14 van 14.instellingen. Daarnaast wordt het datacenter vaak genoemd: NL 2 van 4, buitenland 6 van 14 instellingen. Verder ook het aandachtsgebied levencyclus/footprint: NL 1 van 4, buitenland 6 van 14 instellingen. Aandacht voor beleid wordt genoemd bij: NL 1 van 4, buitenland 9 van 14 instellingen. Het aandachtsgebied Groene Software wordt alleen bij Lorraine genoemd. In Leeds wordt een complete masteropleiding aangeboden in Sustainable Computing en lijkt als de meest uitgebreide en uitgewerkte opleiding op dit gebied. De EU Erasmus Mundus Master PERCCOM, die wordt gegeven aan de universiteiten van Lorraine, Lulea en St. Petersburg biedt een breed en interessant programma over Groene ICT. Buiten de quickscan om is binnen het programma van de gezamenlijke Computer Science van de VU en UvA naar aanknopingspunten gezocht zijn op het gebied van GreenIT. Hier kwamen twee vakken naar boven: “Service Oriented Design” van Patricia Lago en “Large-Scale Computing Infrastructures” van T. Kielmann. Het eerste vak besteedt één college uur aan Green IT en een Greening by IT gerelateerde opdracht. In het tweede vak wordt energy-efficiëntie meegenomen als leerdoel voor het ontwerpen van grote computer infrastructuren.
2.4 Conclusie Uit bovenstaande inventarisatie blijkt dat Groene Software in het hele onderzoek maar één keer terugkomt in een vakbeschrijving van de Université de Lorraine. Het bredere thema GreenIT wordt vaker genoemd (14 keer). Met de ontwikkeling van een lesmodule Groene Software zou de HvA zich op nationaal en internationaal vlak dus kunnen onderscheiden van andere hogere onderwijsinstellingen. De vraag is echter of het niet te vroeg is voor een dergelijke lesmodule. Deze vraag valt uiteen in twee deelvragen: 1) Is er wel behoefte vraag naar kennis over groene software vanuit de industrie en 2) is er überhaupt wel genoeg kennis over de ontwikkeling van groene software om lesstof van te maken? Deze twee vragen zullen in Hoofdstuk 3 en 4 verder behandeld worden.
3 Domein specifiek kader IEEE/ACM 3.1 Introductie Het domeinspecifiek referentiekader voor ICT opleidingen opgesteld door de HBOi-I stichting (samenwerkingsverband van ict-opleidingen in het hoger beroepsonderwijs) is de basis voor alle Nederlandse HBO ICT-opleidingen. Dit kader wordt gebaseerd op het “Computer Science Curricula”1 een internationaal document opgesteld door de grootste ICT brancheverenigingen: IEEE en ACM. Op dit moment is er pre-release van de final versie in omloop van het Computer Science Curricula 2013 (CS2013). Dit geeft een goede indruk van de onderwerpen die in het ICT curriculum belangrijk zijn/worden voor de industrie. In dit hoofdstuk wordt CS2013 geanalyseerd op de aanwezigheid van GreenIT onderwerpen en vergeleken met eerdere versies (CS2008 en CS2001). In het document is gezocht naar de termen “green”, “sustainability”, “energy”, en “power”.
3.2 Resultaat In CS2013 en CS2008 valt duurzaamheid onder “Social Issues and Professional Practice” (SP). In de oude variant wordt sustainabilty alleen genoemd als keuze onderwerp binnen SP subthema Economics of Computing. In het nieuwe document is er een nieuw verplicht onderwerp toegevoegd: Sustainability. Tabel 1 geeft een overzicht van de verdeling van het aantal contacturen van een ict opleiding per onderwerp. In totaal worden er 16 SP’s genoemd. Hiervan zijn er twee gereserveerd voor “Sustainability”. In tabel 2 wordt een overzicht gegeven van de kennisgebieden waarin GreenIT onderwerpen voorkomen. Naast “Social Issues and Professional Practice” liggen er raakvlakken bij hardware architectuur, ontwikkeling voor mobiele platforms en parallelle computer systemen. In vakken met deze onderwerpen liggen dan ook kansen om practica om gastcolleges over het SEFLab te verzorgen.
1
Computer Science Curricula 2013: Final Report 0.9 (Pre-release version). ACM & IEEE. October 2013
Tabel 2. Verdeling uren ICT onderwijs per onderwerp [CS2013]2.
Tabel 3. Overzicht kennisgebieden met GreenIT onderwerpen [CS2013]
Knowledge Area Social Issues and Professional Practice (SP) Architecture and Organization (AR)
Platform-Based Development (PBD)
2
Knowledge Unit Sustainability
Topics
Core Hours
Learning outcomes
zie tabel 3
2 + electives
zie tabel 3
Digital Logic and Digital Systems
Physical constraints (gate delays, fan-in, fan-out, energy/power)
≈1/7 van 3
Mobile Platforms
Performance / power tradeoffs
0 (elective)
Explain the implications of the “power wall” in terms of further processor performance improvements and the drive towards harnessing parallelism. [Familiarity] Discuss the performance vs. power tradeoff. [Familiarity]
NB: Alle tier 1 uren dienen gegeven te worden en minimaal 80% van de tier 2 vakken.
Parallel and Distributed Computing (PD)
Parallel Performance
Power usage and management
0 (elective)
Explain the impact and trade-off related to power usage on parallel performance. [Familiarity]
Wanneer specifiek naar de knowledge unit “sustainability” wordt gekeken is te zien dat het onderwerp GreenIT breed wordt neergezet. Een overzicht van de bijbehorende onderwerpen en leerdoelen is gegevens in tabel 3. Specifieke raakvlakken met het SEFLab zijn gemarkeerd. Het gaat hier om met name om richtlijnen voor duurzame ontwerp keuzen. Tabel 4. Overzicht duurzaamheidsonderwerpen en leerdoelen.
Topic Being a sustainable practitioner by taking into consideration cultural and environmental impacts of implementation decisions (e.g. organizational policies, economic viability, and resource consumption). [Tier 1] Explore global social and environmental impacts of computer use and disposal (e-waste) [Tier 1]
Learning outcome Identify ways to be a sustainable practitioner. [Familiarity]
Environmental impacts of design choices in specific areas such as algorithms, operating systems, networks, databases, or humancomputer interaction (cross-reference SE/Software Evaluation/software evolution; HCI/Design-Oriented HCI/sustainability) [Tier 2]
Describe the environmental impacts of design choices within the field of computing that relate to algorithm design, operating system design, networking design, database design, etc. [Familiarity] Investigate the social and environmental impacts of new system designs through projects. [Usage] 5. Identify guidelines for sustainable IT design or deployment. [Familiarity]
Guidelines for sustainable design standards [elective]
Illustrate global social and environmental impacts of computer use and disposal (ewaste). [Usage]
Systemic effects of complex computermediated phenomena (e.g. telecommuting or web shopping) [elective]
List the sustainable effects of telecommuting or web shopping. [Familiarity]
Pervasive computing. Information processing that has been integrated into everyday objects and activities, such as smart energy systems, social networking and feedback systems to promote sustainable behavior, transportation, environmental monitoring, citizen science and activism. [elective] Conduct research on applications of computing to environmental issues, such as energy, pollution, resource usage, recycling and reuse, food management, farming and others. [elective]
Investigate pervasive computing in areas such as smart energy systems, social networking, transportation, agriculture, supply-chain systems, environmental monitoring and citizen activism. [Usage]
Develop applications of computing and assess through research areas pertaining to environmental issues (e.g. energy, pollution, resource usage, recycling and reuse, food management, farming). [Assessment]
How the sustainability of software systems are interdependent with social systems, including the knowledge and skills of its users, organizational processes and policies, and its societal context (e.g. market forces, government policies). [elective]
De twee belangrijkste wijzingen van CS2013 ten opzichte van CS2001 op het gebied van GreenIT zoals deze worden beschreven door de auteurs van CS2013 zijn de volgende: -
In “Architecture and Organisation”: In this knowledge area, multi-core parallelism, virtual machine support, and power as a constraint are more significant considerations now than a decade ago.
-
In “Social Issues and Professional Practice”: They … recognize the enormous impact that computing has had on society at large emphasizing a sustainable future and placing added responsibilities on computing professionals.
3.3 Conclusie De industrie, verantwoordelijk voor het opstellen van het CS2013, vindt duurzaamheid belangrijker worden en onderkent daarmee het belang van GreenIT, getuige de grotere aandacht voor sustainability in CS2013 (tov eerdere versies). Gekeken over het hele curriculum is het aantal college uren over dit onderwerp nog wel zeer beperkt (2 uur van de +-290 verplichte uren). Dit is echter een minimaal aantal uren (3uur); en onvoldoende voor een vak an sich (e.g. een vak als Green Software Engineering). Per opleiding/vak bestaat de vrijheid om in keuzevakken meer aandacht te besteden aan duurzaamheid. Naast “Social Issues and Professional Practice” liggen er diverse raakvlakken bij vakken over hardware architectuur, mobiele platforms en parallelle computer systemen, waar duurzaamheid in terug kan komen. Het SEFLab biedt mogelijkheden om als practicum-en testlocatie bij te dragen aan diverse duurzaamheid gerelateerde leerdoelen gesteld binnen CS2013.
4 Ontwerprichtlijnen voor groene software 4.1 Introductie Dit hoofdstuk heeft tot doel een inschatting te maken van het kennisniveau van richtlijnen voor groene software ontwikkeling om een antwoord te geven op de volgende vraag: is er genoeg kennis over de ontwikkeling van groene software om lesstof van te maken? Hiertoe zijn verschillende richtlijnen uit de literatuur verzameld en zijn gesprekken gevoerd met experts om een inschatting te kunnen maken van de bruikbaarheid van dit materiaal als lesstof.
4.2 Resultaat In samenwerking met de VU is gekeken naar groene ontwerp richtlijnen voor software. Opvallend is dat er geen simpele oplossingen voor groene software te vinden zijn (o.a. door complexiteit van software lagen, drivers en OS, etc). Het abstraheren van een aantal gevalideerde richtlijnen is derhalve niet mogelijk binnen dit project. Wat verder opvalt is dat bijna alle richtlijnen die te vinden zijn in wetenschappelijke artikelen of andersoortige artikelen op internet van één bedrijf komen: Intel3. De richtlijnen zijn over het algemeen gegeneraliseerd uit case-studies waarbij meerdere zaken tegelijk gevarieerd werden. Het is te betwijfelen of deze richtlijnen in andere implementaties hetzelfde effect zullen hebben. Daarnaast dienen deze richtlijnen gevalideerd te worden door een andere partij en dient gekwantificeerd te worden wat de invloed van deze richtlijnen is op het energieverbruik van een server. Dit is precies wat er in samenwerking met de VU op dit moment in het SEFlab onderzocht wordt. Uit de eerder genoemde bronnen van Intel is een gecategoriseerde lijst opgesteld van bruikbare richtlijnen. Tabel 5 geeft hiervan een overzicht. Om deze richtlijnen te testen op energieverbruik zijn een aantal simpele software applicaties gemaakt voor elke richtlijn. Deze applicaties, met en zonder richtlijn, zullen in het SEFlab worden uitgevoerd. Tijdens de experimenten worden twee typen data worden verzamelt: energieverbruik (totaal verbruik van de server en op hardwarecomponentniveau) en resource gebruik van de verschillende hardwarecomponenten (CPU load, geheugengebruik etc.). Hierna worden de richtlijnen statisch met elkaar vergelijken op energieverbruik en relatie tot het resource gebruik. Het onderzoek met de VU is nog in volle gang en wordt begin volgend jaar toegewerkt naar een publicatie. Tabel 5. Groene software onwerprichtlijnen.
3
Priority ID
Practice
Description
Category
1
Use efficient queries
complex queries can be performed to increase the responsiveness of the application at the expense of
Database
O.a. Creating Energy-Efficient Software, [Intel, 2012]; Energy-Efficient Software Guidelines [Intel,2010]; http://software.intel.com/en-us/energy-efficient-software
energy efficiency. Can be useful to avoid unnecessary “ORDER BY” or to use indexes. 2
Put application to sleep
in order to save energy the application can be put in sleep mode. An event, a signal, or an interrupt can resume the application.
Coding
3
Keep 3rd party software up-to-date
updated 3rd party software can improve performance, quality, security and energy efficiency.
Other
4
Decrease algorithmic complexity
Despite different algorithms can complete the same task, the way the task is performed can be totally different. Reducing the algorithm complexity can lead to save energy.
Coding
5
Reduce memory leaks
with memory leaks the application can stall or crash. This unpredictable behavior can alter the energy consumption and, more generally, they must always be avoided.
Memory
6
Static GUI
Using dynamic animations in GUI are more energy expensive than static counterparts. In fact redrawing an image uses energy both in order to compute it, and in transmitting it to the screen.
GUI
7
Free or unmap unneeded the use of unnecessary memory makes the memory memory consume more energy itself. It can also force the system to use virtual memory.
8
Reduce data redundancy
storage and transportation of redundant data impacts energy efficiency.
Memory
9
Lazy loading
It increases performance deferring the object initialization until it is really needed.
Coding
10
Less frequent/Avoid polling
event based programming avoids a waste of I/O resources involved in doing unnecessary operations. If polling cannot be avoided, it is advised to select a fair time interval.
11
Use low-level programming
with low-level programming languages, the developer has more details of the system in which she/he is developing, than using high-level programming languages. When possible, it is advised to develop the more computationally intensive parts of the application in low-level programming languages to increase performances and energy efficiency.
Memory
Coding
Efficient UI
Efficient UI can let the user complete a task quickly. An inefficient UI can increase the application complexity, and consequently the energy consumption.
GUI
Batch I/O
Buffering I/O operations increases energy efficiency; the OS can power down I/O devices when not used.
I/O
Use asynchronous I/O
using asynchronous I/O with Native Command Queuing is more energy efficient than synchronous I/O because decrease the time it takes to process a job.
I/O
Compiler optimization
using a compiler that allows energy optimizations.
Compiler
Avoid use of byte-code
the virtual machine interpretation of byte code can make the application energy inefficient.
Compiler
Use JIT Compiler
a Just In Time compiler translates byte-code into machine languages at runtime.
Compiler
Reduce transparency/abstractio ns
layers of abstraction prevent the introduction of efficiency because no details from the underlying system are exposed.
Coding
Reduce QoS dynamically
the application has to be able to scale this execution in case of low-power situations
Coding
Code Migration (agents)
To increase energy efficiency in devices where computation can be energy consuming, it worth using software agents to move the task to another environment and gathering results when the computation is completed.
Coding
Ander richtlijnen die nog gevonden zijn komen uit een publicatie van SIG. Deze zijn vrij globaal, ze overlappen deels met de richtlijnen van Intel en zijn ook niet gevalideerd. Zie tabel 6 voor een overzicht. Tabel 6. Groene software ontwerprichtlijnen SIG.
8 tips om software energiezuinig te maken [computerworld.nl 2012] Laat meerdere applicaties op shared servers draaien Verbeter de vertaalslag tussen softwarecomponenten
Verklein de resolutie van plaatjes en verzend ze minder vaak
Laat applicaties minder activiteiten vastleggen Gooi historische gegevens weg als je ze niet gebruikt Compileer applicaties in programmeertalen die gebruik maken van een interpreter Zorg ervoor dat protocollen niet onnodig veel contact maken
Zet zinloze features van software uit
In verschillende gesprekken met experts4 wordt aangegeven dat onderzoek naar groene software eigenlijk nog in de kinderschoenen staat. Zij geven aan dat er eerst meer onderzoek nodig is naar betrouwbare gevalideerde richtlijnen voordat er daadwerkelijk lesstof uit ontwikkeld kan worden. Dit blijkt ook uit het geringe aantal universiteiten dat hier een vak in geeft (zie Hoofdstuk 2) en door het gering aantal bedrijven dat hier aandacht besteed.
4.3 Conclusie Uit dit onderzoek blijkt dat het huidige kennisniveau nog ontoereikend is om een lesprogramma uit te ontwikkelen. Er zijn wel ontwerprichtlijnen in de literatuur vindbaar, maar resulteren voornamelijk uit verschillende onderzoeken van één organisatie (Intel) of zijn zeer globaal geformuleerd. Deze richtlijnen dienen verder onderzocht te worden ter validatie en om te kwantificeren wat het energiebesparingspotentieel is. Met dit doel is een onderzoeksproject met de VU gestart waarin ontwerprichtlijnen voor groene software in applicaties worden geïmplementeerd en worden getest in het SEFLab.
4
O.a. Patricia Lago, Henk Plessius en Joost Visser
5 Inventarisatie IT opleidingen HvA 5.1 Introductie Uit hoofdstuk 2, 3, en 4 blijkt dat een vak Green IT met als onderdeel het SEFlab een logische (logischer dan een vak specifiek groene software) en haalbare aanvulling is op IT lesprogramma’s. Hierbij is de focus gelegd op mogelijkheden binnen de HvA. Wanneer hier een succesvol programma voor is ontwikkeld kan gekeken kansen bij universiteiten waar nu al onderzoekssamenwerkingen bestaan in het SEFlab (bijvoorbeeld VU en UvA). Om de mogelijkheden van een dergelijk lesprogramma in de IT opleidingen aan de HvA te verkennen zijn de structuur van de opleiding en aanknopingspunten voor GreenIT vakken en projecten onderzocht. Hiervoor is gekeken welke vakken en beroepsprofielen inhoudelijk het best aansluiten bij het SEFlab en welke niet inhoudelijke kansen (inzet van studenten bij het onderzoek middels stages, minoren, afstuderen) er zijn. Voor de kansen op korte termijn is gekeken naar mogelijkheden voor het schooljaar 2013-2014 die geen aanpassing van bestaande vakken behoeven. Voor de kansen op lange termijn is rekening gehouden met de geplande herindeling van het onderwijsprogramma van (Technische) Informatica vanaf schooljaar 2014-2015. Dit biedt mogelijkheden voor integratie van relevante vakken met het SEFLab.
5.2 Structuur opleiding (Technische) Informatica is een vierjarige opleiding waarin gekozen kan worden voor zes beroepsprofielen: -
System & Network Engineering Technical Computing Software Engineering Game Development Human Centered Design IT management
De structuur van alle beroepsprofielen is hetzelfde (zie figuur 1) en bestaat uit vakken en multidisciplinaire projecten in jaar 1 en 2, gevolgd met een stage en Business unit in jaar 3, en een minor en afstudeeropdracht in jaar 4.
Figuur 1. Structuur (T)I opleidingen.
In de eerste twee jaar krijgen de studenten algemene IT vakken en passen deze kennis toe in projecten. Gezien de beperkte kennis van de studenten en ruimte in het programma lijkt integratie van het SEFLab in deze fase niet voor de hand liggend, tenzij een opdracht een meer oriënterend karakter heeft en aansluiten van andere leerdoelen van de studenten. Ook is het ten behoeve van promotie van het SEFlab onder studenten goed om in de eerste jaren al in aanraking te komen met het onderwerp GreenIT en het SEFLab. Technische inhoudelijke SEFlab studentenprojecten zullen daarom voornamelijk op jaar 3 en 4 in het programma moeten focussen, oriënterende projecten kunnen ook in jaar 1 of 2. Op korte termijn is het formuleren van stageopdrachten of afstudeeropdrachten een mogelijkheid. Ook kunnen buiten het curriculum om student-assistentschappen aangeboden worden. Daarnaast is een GreenIT gastcollege en kleine opdrachten in het eerste jaar een wenselijk als die mogelijkheid zich in het curriculum voordoet. Op lange termijn zou samenwerking met projecten of vakken in relevante business units, minoren of themasemesters gezocht kunnen worden.
5.3 Beroepsprofielen Het SEFlab is niet even relevant voor alle beroepsprofielen. Om de relevatie in te schatten zijn vier criteria die inhoudelijk met het SEFlab te maken hebben gekozen: -
-
-
-
Kennis over de kosten van IT. Wanneer over de kosten van IT (systemen) moet worden nagedacht zal ook het energieverbruik moeten worden meegenomen. Het SEFLab kan dit inzichtelijk maken. Uitgebreide kennis van softwarearchitectuur en -ontwerppatronen. Ontwerpalternatieven kunnen worden vergeleken op verschillende kwaliteitsfactoren (bijvoorbeeld maintanability, scalability, security, enz). De toevoeging van energie-efficiënte is een logische kwaliteitsfactor die aantoonbaar kan worden gemaakt in het SEFLab. Programmeer kennis. In het SEFlab kunnen stukken code op energie-efficiënte worden onderzocht. Om verschillende programmeeroplossingen op code-niveau te vergelijken op energie-efficiënte is zeer goede programeer kennis nodig. Basiskennis electrotechniek. Enig begrip van hoe het energieverbruik gemeten wordt, zal helpen om de resultaten in perspectief te plaatsen.
In tabel 7 zijn de zes beroepsprofielen aan de hand van een multicriteria-analyse vergeleken door de opleidingsmanager van informatica en opleidingsmananager Technische informatica. Het SEFLab is het meest inhoudelijke relevant voor het beroepsprofiel Technical Computing en Software Engineering. Dit komt voornamelijk doordat deze beroepsprofielen het dichtst bij elektrotechniek liggen (TC) en door de goede programmeerkennis van deze studenten. Daarna is Game Development en IT management het meest relevant. Een opdracht voor de Game Development richting zal echter altijd een spelelement moeten bevatten. Alleen Human Centered Design heeft te weinig raakvlakken met het SEFlab om nuttig te zijn voor de studenten. System & Network Engineering scoort neutraal. Er zal voor dit profiel daarom goed naar het onderwerp van de opdracht gekeken moet worden om deze te laten aansluiten bij de kennis van de studenten.
Tabel 7. Multicriteria-analyse relevantie SEFlab voor bedrijfsprofielen
Bedrijfsprofiel
IT kosten
Software Programarchitectuur meren 0 + 0
Electrotechniek -
System & Network Engineering Technical Computing
+
+
0
0
+
+
++
++
+
Software Engineering
+
0
++
+
++
++
Game Development
0
-
+
+
++
Human Centered Design
0
-
0
-
0
IT management
++
+
0
+
0
Totaal 0.25
-0.25
0
+
1
1
1
-
-
1
0.5
0,75
++
-
-
0.5
0.25
0.34
+
-
-
-0.25
-0.5
-0,34
-
-
0.25
0.5
0.34
+
Uit deze multicriteria analyse kan geconcludeerd worden dat het SEFLab het meest relevant is voor de bedrijfsprofielen Technical Computing en Software Engineering en. Er kan nog naar Game Development en IT management en eventueel System & Network Engineering gekeken worden. Human Centered Design kan beter buiten beschouwing worden gelaten.
5.4 Relevante vakken en projecten De beste kansen voor SEFLab in het onderwijs zijn bij de vakken waarin software kwaliteit, software metrieken en datastructruren worden behandeld5. Binnen de HvA zijn dit respectievelijk de vakken Maintanance, AGILE development en Algoritmen en Datastructuren (ADS). Op verschillende momenten kunnen projecten worden ingebracht in het IT onderwijs: -
-
-
5
Eerstejaars multidisciplinair project o Geen stagevergoeding Tweedejaars ProveIT project o Groepsopdracht o Start in februari o Geen stagevergoeding o 6 ECTS Derdejaars stageproject o 30 ECTS o Start september (voor juni vinden de meeste studenten een opdracht) of februari o Stagevergoeding aan te raden Derdejaars Business unit project Afstudeerfaseproject o 1-20 (meestal rond 12) ECTS o Start voornamelijk september of februari
Bron: Interview Jan Derriks
-
o Stagevergoeding aan te raden Afstudeeropdracht o 30 ECTS o Start september of februari o Stagevergoeding aan te raden
Met uitzondering van de eerste- en tweedejaars projecten kunnen de beschrijvingen op de vacaturebank geplaatst worden. Daarnaast kan de opleidingsmanager ter promotie een mededeling plaatsen op de website.
5.5 Conclusie en concrete kansen Hoewel de informatica opleidingen op dit moment nog geen aandacht besteden aan het onderwerp GreenIT zijn er wel kansen in het programma om hiermee te starten. Een obstakel vormt echter te terughoudendheid van docenten van de desbetreffende vakken. Hier is nog het nodige promotie werk te doen en er zal tijd moeten worden gestoken in het intensiveren van de banden tussen domein Techniek (waar het SEFLab gehuisvest is) en het domein Media, Creatie & Informatie (waar informaticaopleidingen onder vallen). Naar aanleiding van bovenstaande inventarisatie zijn de volgende stappen genomen: -
-
-
-
6
Er zijn drie afstudeeropdrachten geformuleerd specifiek gericht op (technische) informatica studenten in samenwerking met SIG en SURFnet.6 Deze opdrachten zijn op de vacaturebank van de informatica opleidingen geplaatst. Er zijn gesprekken gevoerd met 4 kandidaten, dit heeft echter niet tot invulling van de vacatures geleid. Ter voorbereiding op de komst van informatica studenten is op 16 oktober 2013 als pilot in het SEFLab een workshop gehouden met 12 studenten van de minor Energie & Duurzaamheid over “Energie efficiënt zoeken op het internet”. Op 1 november 2013 is voor 100 technische informatica studenten (jaar 1-4) een college gegeven over GreenIT en het SEFLab. Het SEFLab zal zich als opdrachtgever op stellen voor 10 groepen van 6 eerstejaars studenten voor het projectvak Agile Development. Deze projecten zullen 5 maanden lopen vanaf februari 2014. Op het moment van schrijven wordt hier verder over gesproken. In hoofdstuk XX zullen een aantal opdrachten besproken worden. Het SEFLab zal zich als opdrachtgever opstellen voor een groep studenten voor tweedejaars studenten voor het projectvak Prove-IT. Dit project zal een over periode van 5 maanden worden uitgevoerd vanaf februari 2014. Op het moment van schrijven wordt in het kader van vernieuwing van het curriculum de mogelijkheid onderzocht om een GreenIT keuze semester op zetten voor derdejaars informatica studenten in september 2014.
Zie voor de opdrachten: https://home.informatica.hva.nl/projecten/singleview.php?Nummer=4611, https://home.informatica.hva.nl/projecten/singleview.php?Nummer=4605; https://home.informatica.hva.nl/projecten/singleview.php?Nummer=4604.
Al met al bieden de ondernomen stappen en plannen bieden een solide basis voor verdere samenwerking in de toekomst.
6 Uitbreiding SEFLab 6.1 Introductie Om het SEFlab toekomstbestendig te maken voor de studenten groepen en toekomstig onderzoek is uitbreiding wenselijk op meerdere vlakken: -
Aantal opstellingen moet vergroot worden om meerdere studenten en onderzoekers simultaan te laten werken Er moeten nieuwere generatie servers en andere typen servers bemeten worden om het SEFLab serverpark representatief te houden voor wat er in een datacenter draait. De nauwkeurigheid en snelheid van de meetopstelling dient vergroot te worden De dataverwerking dient verder geautomatiseerd te worden om analysetijd te verkorten De data en bij voorkeur ook de meetopstelling dient over het internet benaderd te kunnen worden
6.2 Nieuwe Hardware Om het aantal meetopstellingen te vergroten zijn verschillende bedrijven benaderd om hardware te sponsoren. Hier hebben drie bedrijven gehoor aan gegeven: Ordina, Centric en Network Republic.
Figuur 2. Overhandiging servers door sponsoren.
Het betreft hier servers die net zijn afgeschreven voor operatie in een datacenters van ongeveer 4 jaar oud. De servers zijn en generatie jonger dan de servers die op dit moment in het lab gebruikt worden. De servertypes die gedoneerd zijn: -
2x HP Proliant DL360 G5 4x HP Proliant DL380 G5
Momenteel wordt één van HP Proliant DL380 G5 servers uitgerust met sensoren. Op termijn kunnen de andere servers gebruikt maken om een klein netwerk van servers te simuleren.
Daarnaast zijn er gesprekken met SurfSARA gevoerd om een node uit de LISA supercomputer te bemeteren in het lab en deze op termijn terug te plaatsen in de supercomputer. Dit is een server van ongeveer twee jaar oud en zal waarschijnlijk in de eerste helft van 2014 uitgerust naar het SEFlab komen. In huidige datacenters wordt het aandeel blade servers steeds groter. De supercomputer node is een blade server en past daarmee goed in de visie voor het uitbreiden van het SEFlab. Het betreft hier het volgende type server: -
Dell PowerEdge M620 blade server
Daarnaast zullen door het SEFLab twee nieuwe servers aangeschaft worden zodat de hardware in het lab overeenkomt met dat in huidige datacenters. Het gaat hier om servers die één generatie achter liggen in vergelijking met nieuw uitgebrachte servers. Dit is zijn: -
2x HP Proliant DL380 G7
Er is bewust gekozen voor hetzelfde type server als wat er al voor handen is in het lab, zodat de evolutie van de server meetbaar gemaakt kan worden.
6.3 Sensor boards en data-acquisitie Om de nieuwe servers nauwkeuriger te bemeteren hebben er ontwikkelingen plaatsgevonden in de sensor boards die de stroom en spanningen in voedingslijnen van de server meten. Ten eerste is een nieuw actief ontwerp gemaakt dat het meetsignaal versterkt zodat er kleinere verschillen gemeten kunnen worden. De versterking is afhankelijk van de omgevingstemperatuur, daarom is een temperatuursensor ingebouwd t.b.v. de juiste calibratie. Deze sensorboards worden op dit moment gebruikt in de SUN setup. Met het oog op toekomstige data-acquisitie-eisen zullen de huidige National Instrument DAQ’s niet meer voldoen wegens de volgende problemen: -
inflexibel qua software heeft een scheidingstrafo nodig samplerate gaat snel achteruit als zowel stroom, spanning als temperatuur gemeten wordt sluit niet goed aan bij de metingen die wij willen verrichten (bijvoorbeeld temperatuur).
Op termijn is de ambitie van het SEFLab om naar een hogere bandbreedte te gaan, waarbij er meer controle over de hardware mogelijk is. Binnen dit project is besloten om een eigen acquisitieboard te ontwerpen en te ontwikkelen dat de National Instruments systemen kan vervangen. Het grootste verschil met vorige ontwerpen is dat het meetsignaal op het sensorboard wordt omgezet van een analoog naar een digitaal signaal. Hierdoor treedt minder verstoring op in het signaal en kunnen hogere sample rates gehaald worden. Ter vergelijking, de National Instruments systemen hebben een maximale sample rate van 1 MS/s, het nieuwe systeem een theoretisch maximum van 20 MS/s7. Het acquistieboard is momenteel in ontwikkeling, er is een prototype gemaakt zoals afgebeeld op figuur 3 en de eerste test metingen zijn succesvol uitgevoerd.
7
De piek-doorvoersnelheid is 40MBps, elke sample van de ADCs gebruikt 16 bits, dus theoretisch max is 20MS/s.
Figuur 3. Sensorboard ontwikkeling, v.l.n.r.: het oude sensorboard, het nieuwe actieve sensorboard, het prototype met A/D conversie.
6.4 Conclusie Door de werkzaamheden die de afgelopen periode in het SEFlab zijn verricht kan het lab kleine groepen studenten faciliteren in het lab. Verschillende donaties van bedrijven hebben eraan bijgedragen dat op het moment van schrijven twee nieuwe servers uitgerust worden met sensoren. Daarnaast worden verbeteringen aan de data-acquisitie doorgevoerd zodat er nauwkeuriger en met een hogere sample rate gemeten kan worden. Het implementeren van het op afstand kunnen meten heeft vertraging opgelopen door een gebrek aan afstudeerders in de looptijd van dit project. De ontwikkeling van back- en front-end voor online remote meetportal zal echter meegenomen worden in hoofdstuk 5 genoemde projecten bij de IT opleiding aan de HvA. Ook zijn er in verschillende andere projecten vorderingen gemaakt om het SEFlab gereed te maken voor intensiever gebruik in het onderwijs: -
-
In samenwerking met de VU is de Intel Energy Checker tool geïmplementeerd waardoor de meetdata realtime buiten Labview software om uitgelezen kan worden (een voorwaarde voor remote meten). De harde schijven van de meetserver zijn buiten de server geplaatst zodat deze gemakkelijk te verwisselen zijn. Er is een agenda opgezet t.b.v. de verdeling en planning van labtijd voor de verschillende projecten
7 Projecten in SEFlab 7.1 Introductie Dit hoofdstuk geeft een overzicht van projecten die tijdens de looptijd van de SURF innovatieregeling hebben gelopen, zijn afgesloten of tot stand zijn gekomen. De intentie was om de doelstellingen van het project te behalen door het uitvoeren van studentenprojecten. Moeilijkheid hierin was dat de looptijd van de SURF innovatieregeling niet overeenkomt met de onderwijs jaarplanning van de HvA. Om vorderingen te maken in het lab zijn naast een aantal studentenprojecten een student-assistent ingezet en zijn projecten gestart met promovendi van de VU, UvA en Centric. Het project met de VU en het onderzoek van de stagiair van de Open Universiteit zijn al eerder besproken en zullen hier buiten beschouwing worden gelaten.
7.2 Projecten binnen informatica HvA In februari 2014 zal het SEFLab zal zich als opdrachtgever op stellen voor 10 groepen van 6 eerstejaars studenten voor het projectvak Agile Development en voor een groep tweedejaars studenten in het project vak Prove-IT. Voor de eerder genoemde projecten Agile Development en Prove-IT zijn in een brainstorm een aantal mogelijke projecten vastgesteld. Voor Agile development zijn zullen de volgende twee vragen worden onderzocht: o o
Hoe ziet een platform om “codeer-wedstrijden” te kunnen doen eruit waarbij de meest energiezuinige oplossing (van een sudoku of ander probleem) wint? Hoe moet een web-frontend en/of backend voor het on-line aanbieden en remote doormeten van code er uit zien?
De studentenprojecten zullen bijdrage aan de verdere automatisering van het meetproces van het lab. Voor het Prove-IT project zal een keuze worden gemaakt uit de volgende vragen: o
o
o o o o o
Hoeveel code is nog te observeren binnen het lab? Energie vs codelengte, wordt er 2 keer zoveel energie gebruikt bij 2 keer zoveel code? En bij 4x zoveel code? En bij 8x zoveel code? Stuk code mappen op het gemeten energieverbruik. Welke piek wordt veroorzaakt door welke stuk code? Hoe creëer je observabiliteit van je code? Verander de volgorde van de code/of iets anders. Hoe verandert de energieconsumptie? Kun je een programma herkennen aan zijn energie footprint net zoals bij de vingerafdruk van mensen? Onderzoek bekende algoritmes op hun energiezuinigheid en implementeer deze algoritmes in verschillende programeetkies hiervoor zelf een programmeertaal Welk webserver pakket is het meest energie-effcicient en wat is het aandeel van elk onderdeel (MySQL, Apache, Fileserver, etc). Kunnen “kleine systemen” zoals RaspBerryPI of mobieltjes worden bemeten? Hoe ziet een test en implementatie van profiler-tools eruit waarmee ook bestaande programma’s doorgemeten kunnen worden?
De projecten zullen in december verder besproken worden in gezamenlijke sessie met Informatica docenten en SIG in combinatie met een demonstratie in het SEFLab.
7.3 Pilot “wedstrijd energie-efficiënt googlen” Ter voorbereiding op groepen studenten die een workshop in het lab is een pilot uitgevoerd met 11 studenten van de minor Energie & Duurzaamheid. Doel was om te zien of het lab geschikt was om op een leuke manier snel, leerzame resultaten te generen met betrekking tot het energieverbruik van software. Tijdens de pilot werd eerst een algemene introductie gegeven over het belang van software in GreenIT. De studenten werden vervolgens in groepen ingedeeld en kregen tijd om een strategie te bedenken om zo energie-efficiënt mogelijk een presentatie over GreenIT op internet te vinden en deze door te lopen. De strategie werd vervolgens uitgevoerd op de meetopstelling van het SEFLab waarna per groep het energieverbruik van de strategie werd bepaald. De studenten probeerden op meerdere manieren het energieverbruik te beperken, door: -
snel te werken, slimme zoekqueries te gebruiken, een klein bestand te kiezen, met de zuinigste (geïnstalleerde) browser te browsen, instellingen van het besturingssysteem aan te passen.
In figuur 4 en tabel 8 zijn de resultaten van de wedstrijd samengevat. Een interessant leerpunt was dat de snelheid waarmee de opdracht werd uitgevoerd niet automatisch betekende dat dat het energie-efficiëntst was. Het winnende team (Green Heroes) had namelijk 74 seconden langer de tijd nodig dan nummer 2 (team 5), maar verbruikte 312 Joule minder energie. 120
POWER (ON TOP OF IDLE) [WATT]
Paddestoel
Underground
Green Heroes
Team 5
100 80 60 40 20 0 0
50
100
150 200 TIME [SECONDS]
Figuur 4. Verbruikt vermogen van de verschillende zoekopdrachten
250
300
350
Tabel 8. Samenvatting resultaten zoek wedstrijd.
Team
Green Heroes Team 5 Underground Paddestoel
Power Watt 161 185 168 162
Total Time Seconde 161 87 168 358
Energy Joules 26662 16353 28399 57879
Activity Power Energy Watt Joules 24 3864 48 4176 31 5208 25 8950
Een tweede pilot met een groep honoursstudenten zal 4 december gedaan worden. Uitdaging in deze wedstrijd zal ze energie-efficiënt mogelijk een aantal bewerkingen met Excell uitvoeren op een grote SEFLab meetfile.
7.4 Effect van virtual machines op het energieverbruik Met de UvA is een onderzoek gestart om de impact op het energieverbruik van twee virtualisatietechnieken te vergelijken: systeem-level virtualisatie versus OS-level virtualisatie. De onderzoeksvraag die in dit onderzoek onderzocht wordt is: is er een meetbaar verschil in energie- en resourcegebruik gebruikmakend van VM’s of Linux containers? Daarnaast is er gevraagd om feedback te geven op het gebruik van de opstelling en een rapport geschreven met aanbevelingen voor verdere ontwikkeling van de opstelling. De resultaten van de studie kunnen als volgt samengevat worden: -
-
Zoals verwacht is de performance en het energieverbruik van een kaal besturingssysteem versus een gebruik van een linux container ongeveer gelijk. De CM experiment kon niet nog niet uitgevoerd worden omdat de SEFLab meetopstelling dit niet ondersteund. Het SEFlab moet daarom beschikking krijgen over nieuwere servers die virtualisatie ondersteunen. Het uitvoeren van de meting koste erg veel tijd. Het meten en de dataverzameling moet verder geautomatiseerd worden. Voor toekomstig onderzoek is het aan te bevelen om CPU te gebruiken die frequency scaling ondersteunen. Het zou voor toekomstig onderzoek goed zijn om het energieverbruik van de grafische chip apart te kunnen meten.
Het onderzoek zal worden voortgezet als de nieuwe server klaar is voor gebruik. De feedback is meegenomen is de ontwikkeling van het lab zoals beschreven in Hoofdstuk 6.
7.5 Minor Energie & Duurzaamheid Twee studenten van de minor Energie & Duurzaamheid voeren op dit moment een studie uit naar de energie-efficiëntie van MySQL. De onderzoeksvraag die beantwoord wordt luidt: Hoe kan de configuratie van een MySQL applicatie de prestatie per Joule verbeteren? Dit bekeken vanuit het perspectief als applicatie- en data center beheerder. Om deze vraag te beantwoorden is een MySQL server en client ingericht in SEFLab. Op het moment van schrijven wordt onderzocht welke variabelen van invloed zijn op het enegievebruik van MySQL en variabelen te testen met de
meetopstelling. Resultaten van dit project worden naar verwachting in februari 2014 kenbaar gemaakt.
7.6 Overige projecten Naast bovengenoemde punten zijn er nieuwe samenwerkingspartners gevonden die zullen bijdrage aan de ontwikkeling van het SEFlab en de kennis over groene software: -
-
Met SurfSARA wordt gekeken naar de bruikbaarheid van de Intel Performance API (PAPI) in het SEFLab en wordt geïnventariseerd welke standaarden en tools kunnen worden gebruikt van het hardware lab van BULL in Frankrijk. Met SURFnet zal het energieverbruik van verschillende DNS software en DNSSEC (met encryptie) onderzocht worden. Met de RU Nijmegen wordt een statisch model van het energieverbruik van software gevalideerd in het SEFLab. Onder begeleiding van Centric onderzoekt een student van de VU de invloed van het OS op het energieverbruik van de server.
7.7 Conclusie De verschillende projecten hebben aangetoond dat het SEFlab goed gebruikt kan worden voor onderzoek door derden en voor het geven van project gestuurd onderwijs aan groepen van ongeveer 10 studenten. De ervaringen die zijn opgedaan hebben geleid tot heldere aanbevelingen voor de ontwikkeling van het SEFLab waar op het moment van schrijven aan wordt gewerkt. Daarnaast is meer kennis opgedaan over groene software en zijn er nieuwe samenwerkingsverbanden gesloten.
8 Disseminatie Het doel was om met een workshop te organiseren om de vorderingen in het SEFLab onder professionals en studenten onder de aandacht te brengen. Dit doel is echter bereikt door presentaties te verzorgen bij bestaande initiatieven. Zodoende is er gekozen om geen grote workshop te organiseren, maar zll in december 2013 een kleine workshop georganiseerd worden voor informatica docenten van de HvA. Bij de volgende initiatieven is door het SEFLab een presentatie verzorgd: -
-
-
8
Op 10 oktober 2013 is het SEFlab gepresenteerd op het Festival of Cools.8 Op 18 oktober is een college GreenIT gegeven voor ongeveer 60 studenten van het vak Duurzaamheid op de HvA. Bijeenkomst Knowledge Network Green Software “De Energievoetafdruk van software”, 22 oktober 2013. Ongeveer 20 organisaties hebben elkaar op do hoogte gebruik van recente ontwikkelingen op het gebied van groene software9. Op 1 november 2013 is een college Green IT voor ongeveer 100 Technische informatica studenten van de HvA gegeven. Green IT Networking event van de VU, 14 november 2013. Verschillende bedrijven en instellingen kwamen bij elkaar om hun organisatie en studenten opdrachten te presenteren aan ongeveer 30 studenten van de VU en UvA10. Op de Datacenter Dynamics conferentie van 26 november 2013 is een presentatie verzorgd over onderzoek naar groene software en het SEFLab.11
Voor meer informatie zie: http://www.newenergydocks.nl/index.php/agenda/54-10-oktober-2013-festival-ofcools 9 Voor meer informatie zie: http://kngs.wikidot.com/events:surfnet. 10 Voor meer informatie zie: http://www.cs.vu.nl/en/news-agenda/recent-news/Meet-your-future-Green-ITnetworking-event-for-students-a-success.asp 11 Voor meer informatie zie: http://www.datacenterdynamics.com/nl/conferences/2013/amsterdam2013?l=programma
9 Conclusies en aanbevelingen De activiteiten die in het kader van dit project zijn uitgevoerd hadden tot doel het SEFLab in te zetten in het ICT onderwijs van de HvA, UvA en VU. Er is een verkennend onderzoek uitgevoerd naar vakken en cursussen die andere hogere onderwijsinstellingen, nationaal en internationaal, al geven op het gebied van GreenIT en specifieker Groene Software. Hieruit blijkt dat Groene Software in het hele onderzoek maar één keer terugkomt in een vakbeschrijving van de Université de Lorraine. Het bredere thema GreenIT wordt vaker genoemd (14 keer). Met de ontwikkeling van een lesmodule Groene Software zou de HvA zich op nationaal en internationaal vlak dus kunnen onderscheiden van andere hogere onderwijsinstellingen. De vraag is echter of het niet te vroeg is voor een dergelijke lesmodule. Deze vraag valt uiteen in twee deelvragen: 1) Is er wel behoefte vraag naar kennis over groene software vanuit de industrie en 2) is er überhaupt wel genoeg kennis over de ontwikkeling van groene software om lesstof van te maken? Om de eerste deelvraag te beantwoorden is het document “Computer Science Curricula 2013” onderzocht op GreenIT en Groene software aanknopingspunten. Dit document is opgesteld door de IT industrie (IEEE en ACM) en wordt internationaal als leidraad gebruikt voor de invulling van IT bachelor opleidingen. Uit de inventarisatie van dit document dat een minimum van ongeveer 3 college-uren aan GreenIT moet worden besteed met mogelijkheden tot uitbreiding van dit aantal uren in de keuzeruimte. Specifiek Groene Software wordt als één van de 8 leerdoelen genoemd als resultaat van het lesprogramma. De industrie hecht dus belang aan kennis over GreenIT van de toekomstige IT professional en kan zich goed vertalen naar een vak GreenIT. Onderdeel van dit vak zou een lesmodule Groene Software kunnen zijn. Om de tweede deelvraag te beantwoorden is gezocht naar ontwerprichtlijnen voor groene software uit de literatuur en is de mening van een aantal experts gevraagd over het huidige kennisniveau van dergelijke ontwerprichtlijnen. Uit dit onderzoek blijkt dat het huidige kennisniveau nog ontoereikend is om een lesprogramma uit te ontwikkelen. Er zijn wel ontwerprichtlijnen in de literatuur vindbaar, maar resulteren voornamelijk uit verschillende onderzoeken van één organisatie (Intel) of zijn zeer globaal geformuleerd. Deze richtlijnen dienen verder onderzocht te worden ter validatie en om te kwantificeren wat het energiebesparingspotentieel is. Met dit doel is een onderzoeksproject met de VU gestart waarin ontwerprichtlijnen voor groene software in applicaties worden geïmplementeerd en worden getest in het SEFLab. Uit bovenstaande blijkt dat een vak Green IT een logische en haalbare aanvulling is op IT lesprogramma’s. Om hiervan de implementatie mogelijkheden in de IT opleidingen aan de HvA te verkennen zijn de structuur van de opleiding en aanknopingspunten voor GreenIT vakken en projecten onderzocht. Hieruit zijn een viertal concrete mogelijkheden geïdentificeerd: -
Het SEFLab zal optreden als opdrachtgever voor eerstejaars projectvak Agile Development Het SEFlab zal optreden als opdrachtgever voor tweedejaars projectvak Prove-IT Het SEFLab zal meedenken (met de intentie ingezet te worden) bij de ontwikkeling van een nieuwe GreenIT keuzesemester voor derdejaars studenten.
-
Er zijn meerdere SEFLab (afstudeer)stageopdrachten geformuleerd voor derde- en vierdejaarsstudenten.
Om al deze projecten te kunnen faciliteren in het SEFLab is d.m.v. verschillende donaties van bedrijven het aantal servers uitgebreid en worden op het moment van schrijven twee nieuwe servers uitgerust met sensoren. Daarnaast worden verbeteringen aan de data-acquisitie doorgevoerd zodat er nauwkeuriger en met een hogere sample rate gemeten kan worden. Het implementeren van het op afstand kunnen meten heeft vertraging opgelopen door een gebrek aan afstudeerders in de looptijd van dit project. Wel zijn in verschillende projecten vorderingen gemaakt om het SEFlab gereed te maken voor intensiever gebruik in het onderwijs: -
-
-
In samenwerking met de VU is de Intel Energy Checker tool geïmplementeerd waardoor de meetdata realtime buiten Labview software om uitgelezen kan worden (een voorwaarde voor remote meten). De harde schijven van de meetserver zijn buiten de server geplaatst zodat deze gemakkelijk te verwisselen zijn. Er is een pilot met twaalf studenten uit de minor Energie & Duurzaamheid opgezet, waarmee een wedstrijd “Energie-efficient zoeken op internet” is uitgevoerd waaruit bleek dat het lab geschikt is snel, leerzame resultaten te genereren. Er is onderzoek naar virtualisatietechnieken uitgevoerd door de UvA, dit heeft tot heldere feedback en requirements geleid voor ontwikkeling van de opstelling Er is een agenda opgezet t.b.v. de verdeling en planning van lab tijd voor de verschillende projecten
Naast bovengenoemde punten zijn er nieuwe samenwerkingspartners gevonden die zullen bijdrage aan de ontwikkeling van het SEFlab en de kennis over groene software: -
-
Met SurfSARA zal een gekeken worden naar de bruikbaarheid van de Intel Performance API (PAPI) in het SEFLab en zal geïnventariseerd worden welke standaarden en tools kunnen worden gebruikt van het hardware lab van BULL in Frankrijk. Met Centric zal gekeken worden naar de invloed van verschillende besturingssystemen op het energieverbruik van server. In een project van de minor Energie & Duurzaamheid worden keuzen in het gebruik MySQL vergeleken op energieverbruik. Met SURFnet zal het energieverbruik van verschillende DNS software en DNSSEC (met encryptie) onderzocht worden. Met de RU Nijmegen zal een statisch model van het energieverbruik van software worden gevalideerd in het SEFLab.
Geconcludeerd kan worden dat met het SURF project een gedegen basis voor samenwerking tussen ICT opleidingen van de HvA en het SEFLab is ontstaan met de formulering van een aantal concrete projecten. Daarnaast is het SEFLab verder ontwikkeld om inzet in het onderwijs mogelijk te maken en zijn meerdere samenwerkingsverbanden aangegaan om de kennis over groene software te vergroten wat uiteindelijke weer moet terugvloeien naar een lesprogramma Groene Software.