Universiteit Twente


Meer functies en zuiniger dankzij parallele processoren

22 april 2010

Mobiele apparaten moeten steeds méér kunnen, mogen steeds minder energie verbruiken en moeten ook nog eens goedkoop en handzaam zijn. Om aan al deze eisen te voldoen, gebruiken de nieuwste modellen meerdere processoren die parallel werken. Het is de kunst deze verschillende processoren zodanig te programmeren dat ze elkaar niet in de weg zitten of lange opstarttijden vergen. Promovendus Philip Hölzenspies heeft aan het Centrum voor Telematica en Informatietechnologie (CTIT) van de Universiteit Twente (UT) hiervoor een succesvolle strategie ontwikkeld, zodat de systemen méér doen met minder. Hij promoveert op 23 april.

In plaats van één centrale processor die alles regelt, krijgen de nieuwe generaties mobiele apparatuur parallelle processoren die elk gespecialiseerd kunnen zijn in een bepaald type taak. Ze leveren daardoor betere prestaties, maar zijn ook energiezuiniger: als op een mobiele telefoon geen video wordt afgespeeld, verbruikt de bijbehorende processor ook geen energie en wanneer er wel video wordt afgespeeld is de bijbehorende processor veel energie-efficiënter. Er zijn inmiddels multiprocessoren die zich als een kameleon aanpassen aan de toepassing. Deze benadering vergt wel een nieuwe benadering van programmeren: 'multiprogrammering' zet de verschillende processoren aan het werk - alleen als het nodig is, maar vaak ook tegelijk. Hoe houd je dat flexibel genoeg, hoe zorg je ervoor dat alles snel opstart? Philip Hölzenspies heeft hiervoor nieuwe methoden ontwikkeld.

Pas toewijzen bij opstarten

Niet alleen het energieverbruik, ook de kwaliteit die elke taak vereist, neemt hij daarin mee. Het afspelen van een video via internet bijvoorbeeld, via een mobiele telefoon, stelt bijvoorbeeld eisen aan de internetverbinding, aan de verwerking van de beeldinformatie en de aansturing van het beeldschermpje. Tegelijk wil de gebruiker ook bereikbaar blijven met zijn of haar telefoon. Al die - soms concurrerende - eisen vergen een slimme strategie voor de werkverdeling onder de processoren. Dat wordt alleen nog maar complexer door de vele programma's die gebruikers zelf downloaden en opstarten.

Door de taken van een programma pas op het moment van opstarten toe te wijzen aan beschikbare processoren, kan Hölzenspies optimaal rekening houden met de andere software die op dat moment draait, met processoren die zijn uitgevallen en met omgevingsfactoren zoals de signaalsterkte van het netwerk en het batterijniveau. Door dit niet vooraf te doen, maar op 'run-time', is het mogelijk om te optimaliseren voor het energieverbruik. Dankzij zijn methode kunnen flexibeler systemen ontworpen worden, kunnen chips goedkoper en sneller worden ontworpen en geproduceerd en springen de systemen zo zuinig mogelijk om met energie.