Long Presentation: Topic 8 General Low Power/Energy Optimization Techniques Jordan Templeton EEL6935G On the Interplay of Dynamic Voltage Scaling and Dynamic Power Management in Real-Time Embedded Applications Vinay Devadas, Dept. of Computer Science, George Mason University Fairfax, VA, USA Hakan Aydin, Dept. of Computer Science, George Mason University Fairfax, VA, USA Introduction Major reason for increased energy efficiency is to promote longer run time of portable, battery powered embedded devices. Two main paths for increasing efficiency are typically employed exclusively. Dynamic Voltage Scaling (DVS) Dynamic Power Management (DPM) Objectives Maximize run time of a real-time system that operates from a finite source of energy. Maintain real-time system timing accuracy. Dynamic Voltage Scaling Main goal is to reduce energy consumption of CPU. CPU energy consumption increases with system operating speed. Energy management can be realized through management of CPU clock speed. Real-time systems are susceptible to failure from excessively slow clock speeds. Pros/Cons of DVS Care must be taken to avoid slowing the system down too much and causing missed deadlines. DVS is widely used and well understood making implementation relatively straightforward. Dynamic Power Management Energy savings are realized through selective sleep periods for system peripherals such as memory and I/O devices. Effective implementation requires accurate prediction of upcoming allowable sleep periods. Timing constraints are critical for real-time systems because of peripheral wake-up delay. Pros/Cons of DPM Requires accurate prediction of duration of sleep state to determine if a transition is worth it, called the break-even time. Highly beneficial for energy savings for devices that have low duty cycles. DVS/DPM Interaction Most research is focused on employing one or the other; little is known about combining them. DVS reduces CPU speed which leads to longer execution times and less opportunity for devices to transition to sleep states. Increased CPU speeds allows for longer sleep periods which is a benefit of DPM. Design Work Define system model and assumptions Analyze the interaction between DVS and DPM for a simple single device model. Expand analysis to a general, multiple device model. Device Parameters Pa: Active state power consumption. Ps: Sleep state power consumption. Tsd: Time to transition to sleep mode. Twu: Time to transition to active mode. Esd: Energy overhead for transition to sleep mode. Ewu: Energy overhead for transition to active mode. Single Device Model Simplified version of proposed algorithm to illustrate concept. Applicable only to simplest implementations; not widely useful. Single Device Break-Even Time Minimum allowable sleep time for a device to be able to make use of a sleep mode transition. c = WCET d = frame length B0 = break-even time Energy Consumption Tradeoffs Region 1 illustrates operation where CPU speed is too slow to allow enough time for devices to enter sleep mode. Region 2 illustration where CPU speed has increased enough to allow sleep modes to be utilized. f* is the minimum frequency at which the CPU operates fast enough to allow sleep modes. Figure 2 (b) shows that it may still be possible to achieve the lowest energy consumption while only using DVS and a very low CPU frequency. Multiple Device Model Generalized algorithm to service a broader range of applications. Includes support for devices with differing parameters (Pa, Ps, Esd, Ewu, Tsd, Twu). Each device has its own break-even time. Multiple Device Break-Even Time m = number of devices c = WCET d = frame length Bm = break-even time of device m. Break-even times arranged in ascending order of length from right, i.e. Bm > Bm-1 > B2 > B1. Conclusion DVS and DPM are much more difficult to implement when combined compared to individually. The combination of DVS and DPM is necessary for system level designers to progress in the quest for maximum embedded energy efficiency. The authors acknowledge that their work is some of the first in this area of research and much more refinement is necessary; they view their work more as a proof of concept rather than a finished product. Power Management in Real Time Embedded Systems through Online and Adaptive Interplay of DPM and DVFS Policies Khurram Bhatti, LEAT Research Laboratory, University of Nice-Sophia Antipolis Valbonne, France Cecile Belleudy, LEAT Research Laboratory, University of Nice-Sophia Antipolis Valbonne, France Michel Auguin, LEAT Research Laboratory, University of Nice-Sophia Antipolis Valbonne, France Introduction Much research is focused on increasing energy efficiency of embedded real-time systems. Today’s devices are becoming smaller and smaller, resulting in less battery capacity and cooling capabilities. At the same time, processing power is increasing. These are the two major factors fueling the need to increase efficiency. Previous Work Dynamic Power Management (DPM) is a well established method of reducing energy consumption via selectively enabling sleep mode for various system devices. Dynamic Voltage and Frequency Scaling (DVFS) is another heavily used technique to regulate energy consumption via CPU performance control. Both of these techniques are very well understood when applied individually but little effort has been put toward utilizing them together. Early work in the area of combining DPM and DVFS has been to use DPM only for system devices and DVFS only for the CPU. Hybrid Power Management Design Proposal Incorporate and apply existing energy management policies relating to both DPM and DVFS. Primarily a control system rather than a unique power management technique. Proposed adaptive scheme to determine best policy for the current conditions at runtime is called HyPowMan. HyPowMan is designed for multiprocessor real-time systems but can also be used on single processor systems. Control over each processor can be global or partitioned. System Model and Notations m processors : P = {P1, P2, …, Pm} All processors support both DPM and DVFS with independent control for each processor. DVFS is assumed to scale over a continuous range but the model also supports discrete ranges. Voltage and frequency are always adjusted together. There is to be a finite number of tasks executed over a frame of time, TS = {Ta1, Ta2, …, Tan}. Each task Tan within TS is governed by at least four characteristics (ri, Ci, di, Ti) referring to release time, worst-case execution time, relative deadline, and periodicity. HyPowMan Scheme Created as a policy selection mechanism. A library contains all energy management schemes and a machine-learning algorithm is used to select a set of participating policies, known as an expert set. Each policy that is participating is called an expert. Inactive policies are referred to as dormant policies. All DPM based experts become dormant when a CPU is executing a task. DVFS based experts are dormant during CPU idle periods. Active experts are termed working experts. Fundamental Design Challenge HyPowMan must be able to decide which expert to utilize but all of the required information for such a decision is not available at once. Experts employing DPM rely on schedule information to adjust to idle time intervals. DVFS experts adjust according to dynamic slack that varies depending on workload. HyPowMan seeks the best energy policy within a given expert set, not the absolute best possible energy policy. How It Works Machine Learning Algorithm Assign weight vector Winput and probability vector Hinput to the expert set. N: number of experts 1≤k≤N 0 ≤ hkinput ≤ 1 Expert with highest probability is chosen. Evaluating Expert Performance Experts are evaluated at completion of current task. Working expert evaluation based on amount of energy saved. Dormant expert evaluation based on potential energy conservation performance using loss factor lkinput for expert k. Loss Factor Computation , (0 ≤ α ≤ 1) Loss factor Lkinput related to energy savings and performance degradation. Lkinput is used to update weight factors: where 0 ≤ β ≤ 1 . β is dependent on granularity of weight factors and is higher for lower variations in weight factors for a given input. Summary of Selection Algorithm Experimental Evaluation Simulated using STORM (Simulation Tool for Real-time Multiprocessor Scheduling). Marvell Xscale based PXA270 processor. Measurements of energy consumption for three different parameters Energy Consumption vs. BCET/WCET Ratio Energy Consumption vs. Number of Tasks Energy Consumption vs. Variation in Cumulative Utilization Energy Consumption vs. Alpha Energy Consumption vs. Beta Conclusion HyPowMan chooses from a library of existing energy management policies rather than create a new policy. The selection algorithm is adaptive and can compensate for varying conditions. The scheme allows for multiple types of energy policies to be employed by a single system. The system overhead of HyPowMan increases as the number of experts grows but that also improves the energy conservation performance. Comparisons Paper 1 proposes a new energy management policy that is a combination of DPM and DVFS while paper 2 proposes a selection at runtime of the best existing energy management policy from a library. Paper 1 is primarily aimed at single processor systems while paper 2 mainly discusses multi-processor systems. Critiques Paper 1 does not provide enough experimental data or reasonable supporting justification of its claims. Paper 2 claims that the protocol works on single processor systems as well, but there are no simulation results to compare the performance to the multi-processor case. References Paper 1 Devadas, Vinay; Aydin, Hakan; , "On the Interplay of Voltage/Frequency Scaling and Device Power Management for Frame-Based Real-Time Embedded Applications," Computers, IEEE Transactions on , vol.61, no.1, pp.31-44, Jan. 2012 Paper 2 Bhatti, K.; Belleudy, C.; Auguin, M.; , "Power Management in Real Time Embedded Systems through Online and Adaptive Interplay of DPM and DVFS Policies," Embedded and Ubiquitous Computing (EUC), 2010 IEEE/IFIP 8th International Conference on , vol., no., pp.184-191, 1113 Dec. 2010