Yorick De Bock is doctor in de toegepaste ingenieurswetenschappen

Datum: 5 juli 2018

Inleiding: Sinds 3 juli heeft de Faculteit Toegepaste Ingenieurswetenschappen er een doctor bij.

Yorick De Bock verdedigde op 3 juli zijn doctoraatsthesis aan de Faculteit Toegepaste Ingenieurswetenschappen (Universiteit Antwerpen) met professor Peter Hellinckx en professor Jan Broeckhove als promotoren. De doctoraatsthesis is getiteld ‘Hard real-time scheduling  on virtualized embedded multi-core systems’.

Cyber-physical systems zijn systemen die een combinatie zijn van een softwarecomponent en mechanische of elektronische onderdelen. Door de nieuwe industriële revolutie of in het algemeen de innovatie in Cyber-Fysieke systemen en Internet of Things-omgevingen, is de toename van het aantal embedded systemen in zo'n systemen en omgevingen exponentieel. Embedded systemen zijn computersystemen met een toegewijde functie in een groter mechanisch of elektrisch systeem, vaak met real-time computing beperkingen. Embedded systemen controleren de meeste veelgebruikte apparaten vandaag de dag.

Om deze toename van computerkracht te beheersen, zijn nieuwe technologieën nodig zoals multi-core processoren en embedded virtualisatie. De combinatie van beide technologieën maakt het mogelijk om het aantal embedded systemen te doen dalen door meerdere afzonderlijke systemen te bundelen in één krachtig embedded systeem.

Deze krachtige embedded systemen hosten meerdere taken onder de controle van een besturingssysteem. De uitvoervolgorde van de taken wordt bepaald door de scheduler van het besturingssysteem, die op zich gebruikt maakt van een scheduling algoritme om aan elke taak een prioriteit toe te kennen. Er bestaan meerdere scheduling algoritmes en het is de verantwoordelijkheid van de softwareontwikkelaar om het best geschikte scheduling algoritme voor de applicatie te selecteren.

Het selecteren van een scheduling algoritme voor single-core systemen is relatief eenvoudig vanwege de beperkte set van mogelijke scheduling algoritmes. Voor multi-core systemen in combinatie met virtualisatie wordt dit echter complex. De reden hiervoor is dat er meerdere processorkernen en scheduling lagen zijn en dit vertaalt zich in sterke stijging van het aantal mogelijke scheduling algoritmes. Doordat er geen algemeen optimaal scheduling algoritme bestaat voor iedere applicatie, wordt er voor elke applicatie individueel een geoptimaliseerd scheduling algoritme geselecteerd. Momenteel wordt deze selectie handmatig uitgevoerd. Dit komt met een enorme kost en is tijdrovend.

Om de kosten van het selecteren van het scheduling algoritme voor complexe embedded systemen te reduceren, introduceren we een nieuwe analysemethodologie. Het hoofddoel van deze analysemethodologie is het reduceren van de mogelijke scheduling algoritmes voor een bepaalde applicatie in een zo vroeg mogelijke fase van het ontwerpproces. Tijdens een vroege fase verkennen we alle mogelijke scheduling  algoritmes op een hoog abstractieniveau. Op dit abstractieniveau selecteren we enkel scheduling algoritmes met een hoog potentieel tegen een lage kost. Bij de lagere abstractieniveaus reduceren we de set van scheduling algoritmes verder, om uiteindelijk op het laagste abstractieniveau het meest optimale scheduling algoritme te selecteren. Het analyseren van een scheduling algoritme op het laagste abstractieniveau gaat gepaard met een hoge kost. Doordat we slechts een aantal scheduling algoritmes moeten analyseren, reduceren we zo de kosten. De verzamelde informatie gaande over het geoptimaliseerde scheduling algoritme kan worden gebruikt in traditionele analyse tijdens de implementatiefase van het ontwerpproces. Hierdoor worden de kosten voor het selecteren van het geoptimaliseerde scheduling algoritme van een applicatie beperkt.

Via meerdere experimenten werd de analysemethodologie gevalideerd en werden er meerdere applicaties geanalyseerd. De resultaten van de experimenten bewijzen dat de prestaties van een scheduling algoritme applicatie afhankelijk is. Er is geen algemeen optimaal scheduling algoritme voor gevirtualiseerde embedded multi-core applicaties.

De resultaten bewijzen ook dat het mogelijk is om al vanaf een vroege fase van het ontwerpproces de set van mogelijk scheduling algoritmes te reduceren en zelfs nog verder te reduceren in de volgende fases gebruik makende van de analysemethodologie. Dit vermindert de totale kost van het ontwerpproces enorm.



Link: https://www.uantwerpen.be/nl/faculteiten/fac-toegepaste-ingenieurswetenschap/