Heterogene processoren integreren snelle, grote rekenkernen die veel vermogen vereisen met vermogensefficiënte, trage kleine rekenkernen. Applicaties gebruiken de kleine rekenkernen om vermogen te sparen en migreren naar een grote kern wanneer een hogere prestatie vereist is. Hedendaagse processoren hebben echter een vermogenslimiet. Daarom kunnen applicaties niet continue de grote kernen gebruiken. Het maximaliseren van de prestatie met deze beperkingen komt neer op het optimaliseren van het vermogensverbruik.
In deze thesis stellen we een planningstechniek voor die de prestatie kan maximaliseren voor vermogensgelimiteerde heterogene processoren. Wij tonen aan dat, voor enkeldradige applicaties, door het correct beheren van het vermogensbudget over alle fases van het programma heen het mogelijk is om een bijna optimale prestatie te behalen. Daarna bekeken we multi-programmed werklasten. Wij tonen aan dat eerder werk er niet in slaagt om aan de vermogenslimiet te voldoen. Wij formuleren het probleem als een lineair programmeerprobleem waarvoor we een metriek beschrijven om het plannen van applicaties te optimaliseren. Als laatste tonen we dat processoren standaard spanning-frequentie instellingen hebben waar vermogen verloren gaat en de prestatie achteruit gaat. Wij tonen hoe we het optimale punt kunnen vinden en toewijzen aan een applicatie voor het maximaliseren van de prestatie. | |