Techniques to Improve Energy Eﬃciency on Heterogeneous Multiprocessors under Timing and Quality Constraints

Traditionally, applications are executed without the notion of a computational deadline and often use all available system resources which leads to higher energy consumption. User speciﬁcation of Quality of Service (QoS) constraints, in terms of completion time and solution quality, opens up for allocation of just enough resources to an application to ﬁnish just in time and thereby save energy. Modern heterogeneous multiprocessor (HMP) platforms provide a set of conﬁgurable resources including a frequency range of dynamic voltage frequency scaling (DVFS), one among a set processor types, and one or a plurality of processors of each type. They can be conﬁgured at run-time to open up new opportunities for resource management. This thesis presents techniques to reduce energy consumption under QoS constraints by allocating resources at run-time on heterogeneous multiprocessor platforms targeting sequential and parallel iterative and task-parallel applications. The proposed techniques rely on a progress-tracking framework that monitors and predicts how much time is left until the application ﬁnishes. Furthermore, the proposed framework enables the prediction of computation demand and performance requirements for future iterations or tasks. The ﬁrst contribution of this thesis is a resource management technique, called SLOOP , targeting single-threaded applications. SLOOP allocates resources, i.e., processor type and DVFS, for each iteration to meet deadlines while using the prediction of computational demand and execution-time. The second contribution of this thesis is a resource-management scheme, called SaC , for multi-threaded applications executing on HMPs, where resources also include the number of processors besides DVFS and processor type. SaC ﬁrst chooses the most energy-eﬃcient conﬁguration that meets the deadline. The proposed technique collects execution-time slack over subsequent iterations to select a conﬁguration that can save energy. The third contribution of this thesis is a resource manager, called Task-RM , for task-parallel applications executing on HMPs under QoS constraints. Task-RM exploits the variance in task execution times and imbalance between sibling tasks to allocate just enough resources in terms of DVFS and processor type. It uses an innovative oﬀ-line analysis to avoid redoing scheduling analysis at run-time.Finally,the fourth contribution is a scheme, called Approx-RM , that can exploit accuracy-energy trade-oﬀs in approximate iterative applications. Approx-RM allocates an appropriate amount of resources while guaranteeing timing and solution quality speciﬁcations. Approx-RM ﬁrst predicts the iteration count required to meet the quality target and then allocates enough resources on an HMP in terms of DVFS, processor type and processor count to save energy while meeting a performance target. four articles. The central theme is to save energy under QoS constraints for various types of applications executing on a heterogeneous multiprocessor platform. Each paper presents a resource manager designed for a speciﬁc application type operating under a unique set of constraints. Paper-I targets iterative sequential applications; Paper II focuses on multi-threaded iterative applications. Paper-III aims to improve energy eﬃciency for task-parallel applications, and ﬁnally, Paper-IV proposes a resource manager for approximate iterative applications. HMP. deadline iteration type of processor.