310 likes | 406 Views
Battery Aware Dynamic Scheduling for Periodic Task Graphs. Venkat Rao # , Nicolas Navet # , Gaurav Singhal *, Anshul Kumar , GS Visweswaran # TRIO Group, INRIA-Lorraine /LORIA. * Dept of ECE, UT Austin, Dept of CSE, IIT Delhi Dept of EE, IIT Delhi. Introduction.
E N D
Battery Aware Dynamic Scheduling for Periodic Task Graphs Venkat Rao#, Nicolas Navet #, Gaurav Singhal *, Anshul Kumar, GS Visweswaran #TRIO Group, INRIA-Lorraine /LORIA. * Dept of ECE, UT Austin, Dept of CSE, IIT Delhi Dept of EE, IIT Delhi
Introduction • Battery lifetime is major constraint • Slow growth in energy densities not keeping up with increase in power consumption • Extension of battery lifetime and not just low energy design the REAL GOAL Mobile Embedded Systems Design : Venkat Rao – INRIA Lorraine /LORIA
CMOS Energy and power Energy α V2 Power α V2.f fmaxα V Dynamic Voltage Scaling (DVS): busy system => increase Vdd, frequency idle system => decrease Vdd, frequency Potential to achieve quadratic energy and cubic power savings. Traditional approaches to energy optimization Venkat Rao – INRIA Lorraine /LORIA
Variable-supply Architectures • High-efficiency adjustable DC-DC converter • View from battery side • Vbat is constant and depends on battery technology( 1.2 V for NiMh, 3.6-4.2 V for Li ion) • High Vdd translates to high Ibat ` SoC Vsys X Isys = µ X Vbat X Ibat Power Manager Clkgen Vsys Switching DCDC regulator Battery Vbat Isys WK to f f to Vdd Ibat Vset Venkat Rao – INRIA Lorraine /LORIA
Electron Flow _ Load + Cathode Positive Ions Anode Electrolyte Battery Basics • Battery characterized by Voc and Vcut. • Battery lifetime governed by active species concentration at electrode-electrolyte interface. • Phenomenon governing battery lifetime: • “Rate Capacity Effect” “high load current implies lower charge delivered.” • “Recovery Effect” “charge recovered by giving idle slots” Venkat Rao – INRIA Lorraine /LORIA
Diffusion Model- Rakhmatov, Vrudula et al. After a recent discharge Fully charged battery Electrode Electrode Fully discharged After Recovery Electrode Electrode Electro-active species • Analytically very sound but computationally intensive • Cannot be used for online scheduling decisions. Venkat Rao – INRIA Lorraine /LORIA
Battery Aware Scheduling • Guideline 1: For a set of schedulable tasks (t0, t1……tN) having corresponding currents costs (I0, I1……IN) scheduling them in decreasing order of current costs is the optimum battery solution.[Rakhmatov03] Ibat time Venkat Rao – INRIA Lorraine /LORIA
Battery Aware Scheduling • Guideline 2: For a given task t to be executed before a given deadline d its better to lower the frequency and run without giving an idle slot than give an idle slot and run at a higher frequency.[Rakhmatov03] freq freq idle time time d d Venkat Rao – INRIA Lorraine /LORIA
Problem Definition To find a battery efficient schedule for a given a set of periodic tasks graphs (T1, T2, ....Tn) which have corresponding deadlines (D1,D2, .....Dn) equal to their periods, where a taskgraph Ti comprises of any m interdependent nodes, each of which are in themselves tasks with given worst case computations (wci1, wci2, ......wcim). Precendence constraint wci T3D3 T2 D2 T1 D1 Venkat Rao – INRIA Lorraine /LORIA
Our Methodology • There are 2 aspects to the problem • Global Frequency Setting • Local order of execution of nodes Task Graphs nodes WCi’s Di’s Ready list fcurr Frequency Setting DVS Algorithm next node Priority function for max slack recovery Local Task Order Venkat Rao – INRIA Lorraine /LORIA
Global Frequency Setting • To calculate the min frequency that can ensure all subsequent deadlines are met. upon release( Taskgraph Ti ) 1: WCi = åwcij 2: select_frequency( ) upon end_of_node( τij ) 1: WCi = WCi + acij − wcij 2: select frequency( ) select_frequency ( ) 1: U = åWCi/Di 2: fref = U × Fmax , return fref Modified ccEDF algorithm from [pillai01] Venkat Rao – INRIA Lorraine /LORIA
Global Frequency Setting • Follows EDF so works up to U= 100% • Ensures all deadlines are met. • Ensures a Non Increasing discharge profile for set of jobs (set of instances of periodic tasks) re-computing speed freq time d Venkat Rao – INRIA Lorraine /LORIA
Local order of execution • Slack Recovery maximization. • Worst case seldom arrives leading to dynamic slack • Order of execution effects dynamic slack recovery • Important to choose the order optimally • A priority function needs to be chosen • Heuristics like LTF and STF work well in specific cases • pUBS : a near optimal priority function from [Gruian02] Venkat Rao – INRIA Lorraine /LORIA
Ready List • Ready list comprising of nodes from current(EDF) Task graph only. D3 D2 D1 Ready list D1 < D2 < D3 Priority function Execute Venkat Rao – INRIA Lorraine /LORIA
Ready list comprising of nodes from current Task graph only • Advantages : • Follows EDF so ensures meeting of deadlines • Simple to implement • Disadvantages : • Limited choice for the priority function. • Limited slack recovery. Venkat Rao – INRIA Lorraine /LORIA
Ready List • Ready list comprising of nodes from all released Task graphs. D3 D2 D1 Ready list D1 < D2 < D3 Priority function Execute Venkat Rao – INRIA Lorraine /LORIA
Ready list comprising of nodes from all released Task graphs • Advantages : • More choice for the priority function. • Better slack recovery hence lower energy consumption • Disadvantages : • Out of EDF execution hence deadline can be missed Need For additional feasibility check Venkat Rao – INRIA Lorraine /LORIA
Ready List • Ready list comprising of nodes from all released Task graphs. D3 D2 D1 Ready list D1 < D2 < D3 Feasibility check Priority function Execute Venkat Rao – INRIA Lorraine /LORIA
Feasibility check • Check to ensure that an out of EDF execution will not cause a deadline miss • Or more stringently will not cause the raising of frequency later for meeting deadlines • For task belonging to EDF order k, k-1 checks are required. Feasibility Check ( tij ) flag= 1; for (k=1 to j-1) { if (åWCk +wcij > fcurr X Dk – Tcurr ) Flag =0; } return flag Venkat Rao – INRIA Lorraine /LORIA
Simulations • C simulations were conducted to test our methodology • The DVS enabledprocessor simulated supports the following 3 frequency-voltage tuples [(0.5GHz,3 V), (0.75GHz,4V),(1.0GHz,5V)]. • Task graphs were generated from TGFFwith random dependencies • Utilization of the system waskept to 70% • Stochastic battery model from [G.Singhal05] was used to estimate battery life for the profiles generated by various scheduling algorithms • Simulated for NiMH AAA Panasonic batteries with max capacity of 2000mAh and nominal capacity of 1600mAh Venkat Rao – INRIA Lorraine /LORIA
Simulation Results :Battery lifetime and charge delivered. • Results were obtained by averaging performance ofthe various algorithms over 100 random taskgraph sets • Battery Aware Schedule 2 delivers maximum battery life amongst the schemes compared Venkat Rao – INRIA Lorraine /LORIA
Conclusion • We have presented a Battery-aware SchedulingMethodology that facilitates the combining of a goodDVS algorithm with a heuristic based priority functionfor scheduling of taskgraphs. • Simulations suggest that ourmethodology performs up to 47% better than ccEDFand upto 23.3% better than laEDF scheduling schemes in terms of battery lifetime. • It can result in up to 100%improvement in battery lifetime over systems with noDVS. Venkat Rao – INRIA Lorraine /LORIA
References and Credits [1] V. Rao and G. Singhal. Integrated power management for embedded systems. Bachelors Thesis, Indian Institute of Technology, Delhi, 2005. [2] F.Yao,A Demers and S Shenkers. A Scheduling Model for Reduced CPU energy. IEEE 1995. [3] P. Pillai and K. G.Shin. Real time dynamic voltage scaling for low powered embedded systems. Operating Systems Review, 35:89–102, October 2001. [4] S. Vrudhula and D. Rakhmatov. Energy management for battery powered embedded systems. ACM Transactions on Embedded Computing Systems, pages 277– 324, August 2003. [5] J. Luo and N. K. Jha. Battery-aware static scheduling for distributed real-time embedded systems. In DAC’01: Proceedings of the 38th conference on Design automation, 2001. [6] Gruian F., Energy-Centric Scheduling for Real-Time Systems, PhDthesis, LundInstitute of Technology, 2002. [7] V. Rao, G. Singhal, A. Kumar, and N. Navet. Battery model for embedded systems. In Proceedings of International Conference on VLSI Design, pages 105–110, January 2005. [8] V. Rao, G. Singhal, and A. Kumar. Real Time Dynamic VoltageScaling for Embedded Systems. InProceedings of InternationalConference on VLSI Design, pages 650–653, January2004. Venkat Rao – INRIA Lorraine /LORIA
Thank You Venkat Rao – INRIA Lorraine /LORIA
Battery Models Still Too computationally intensive for use at runtime Venkat Rao – INRIA Lorraine /LORIA
Rate Capacity Effect • Total charge delivered by the battery goes down with the increase in load current. • Concentration of active species at interface falls rapidly with increasing load current. • Battery seems discharged when the concentration at interface becomes zero. Rate Capacity Effect back Venkat Rao – INRIA Lorraine /LORIA
Recovery Effect • Battery recovers capacity if given idle slots in between discharges. • Diffusion process compensates for the low concentration near the electrode. • Battery can support further discharge. Intermittent Discharge Cell Voltage Continuous discharge Elapsed time of discharge Recovery Effect back Venkat Rao – INRIA Lorraine /LORIA
Simulation Results:Effect of ready list on energy consumption At Utilization 70% and actual computation times varying from 20% to 70% Energy consumption (normalizedw.r.t optimal schedule) byvarious schedulingpolicies for different number of tasks ina taskgraph Venkat Rao – INRIA Lorraine /LORIA
Simulation Results:Effect of priority function on energy consumption At Utilization 70% and actual computation times varying from 20% to 70%. Ready list comprises of most imminent. Energy consumption (normalizedw.r.t optimal schedule) byvarious schedulingpolicies for different number of tasks ina taskgraph Venkat Rao – INRIA Lorraine /LORIA
Kinetic Battery Model • Simplest PDE model to explain both recovery and rate capacity. • Available and Bound charge wells • Dynamic transfer of charges governed by a rate constant and difference in heights. Venkat Rao – INRIA Lorraine /LORIA
Introduction • Battery Basics • Rate Capacity Effect • Recovery Effect • Related Work : Review of relevant models • Scheduling Problem • Our Methodology. • Simulation and Results • Conclusion Venkat Rao – INRIA Lorraine /LORIA