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.
Universiteit Twente