Presentation is loading. Please wait.

Presentation is loading. Please wait.

Mode Selection and Mode Dependency Modeling for Power-Aware Embedded Systems Dexin Li, Pai H. Chou, Nader Bagherzadeh University of California, Irvine.

Similar presentations


Presentation on theme: "Mode Selection and Mode Dependency Modeling for Power-Aware Embedded Systems Dexin Li, Pai H. Chou, Nader Bagherzadeh University of California, Irvine."— Presentation transcript:

1 Mode Selection and Mode Dependency Modeling for Power-Aware Embedded Systems Dexin Li, Pai H. Chou, Nader Bagherzadeh University of California, Irvine 5th International Conference on VLSI Design and 7th Asia and South Pacific Design Automation Conference Bangalore, India, January 11, 2002

2 2 Outline Introduction Related work Mode dependency modeling Mode selection Experimental results Conclusions

3 3 Introduction Power-aware systems  Low power  High performance as required Use components with multiple power modes  Power modes: full-on, doze, nap, sleep, deep sleep, shutdown, …  voltage and frequency settings  Peripheral devices with diff. bus transfer rate, encodings Mode selection  Choose combinations of power modes over time  Satisfy power performance constraints

4 4 Mode Selection Choosing mode combinations  Many power modes are available  Few modes are considered Current limitations  OS/API limitations  Difficult to track the details Select modes in isolation  e.g., processor only  Lack of system-level view Satisfying constraints  Power  Timing

5 5 Related Work Dynamic Power Management (DPM)  Low power, low-latency as a design goal (rather than a constraint)  [Benini99], [Hwang97], [Qiu00], …  Lack of real time guarantees  Not considering inter-component dependency Dynamic voltage scaling (DVS)  Slow down processor greedily  [Yao95], [Hong98], [Shin99], [Quan01]  Limited to single processor  Can have counter-intuitive effects at system-level

6 6 Example: tasks on multiple components Component R1 is voltage scalable R2, R3 are NOT voltage scalable R3 co-active with R1 (R1 on => R3 on) original schedule original power profile R1 R2 R3 P max A B C C A B Time view Power viewdeadline

7 7 Example -- applying DVS Greedily slow down R1, stretch A all the way to deadline Co-activation => stretch C by same amount as A Problems: Max violation (overlap B), plus higher energy! DVS schedule DVS power profile R1 R2 R3 P max C' A' B B Time view Power viewdeadline C' A'

8 8 Example: optimal solution Slow down R1 partially to eliminate power spike Reduces co-active energy due to task C No overlap with B => eliminates max power violation Feasible time schedule Optimal power profile R1 R2 R3 P max A'' B B C'' Time view Power viewdeadline

9 9 Our approach Constraint-driven  Power, performance as hard constraints Mode change overhead  Timing, power  Will not change mode if overhead cannot be amortized System-level modeling  Co-activation  Selection dependency across components Exponential search space  Pruning required

10 10 Outline Introduction Related work Mode dependency modeling  Mode dependency graph (MDG)  Legal configurations Mode selection Experimental results Conclusions

11 11 System modeling Resource R  M = {m1, m2, … } mutually exclusive modes notation: R.m1, R.m2, …  H = subset of M x Mset of overhead functions (power, time) on changing mode Component  = container of one or more resources System  Set of resources { R 1, R 2, R 3, …}  Set of dependencies between modes  Configuration = member of M R1 x M R2 x M R3 x …  Workload  Constraints

12 12 Mode dependency across resources Necessary condition:  m1 is necessary for m2  !m2 is sufficient for !m1 Operators  AND, OR, XOR Mode dependency graph  Vertices: set of modes set of operators  Edges:direction of dependency Purpose: generate set of “legal” configurations  Assignments that satisfy all mode dependencies  Independent of workload and timing/power constraints m1 m2 m1 ANDOR m2 R1 R2

13 13 Example: Sensor Node (MIT) Components:Modes  processor Aactive, idle, sleep  memory Mon, off  radio Rrx_tx, rx, tx, off  sensor Son, off # of possible configurations  3 x 2 x 4 x 2 = 48 (grows multiplicatively) # of legal configurations  5 as given by MIT group (closer to linearly)  Manually generated  Want to automate this

14 14 Mode dependencies in sensor node Betw. CPU and {sensor, radio}  CPU may sleep if both radio and sensor are off  CPU may sleep or idle if either sensor or radio is “working” Betw. Memory and CPU  CPU co-activation with memory (asymmetric) Betw. sensor and radio  Radio ON only if sensor ON S.off R.off AND A.sleep S.on R.rx_tx R.rx XOR A.sleep A.idle A.activeM.on A.idle A.sleep M.off R.onS.on

15 15 Generating legal configurations Idea: one “counter” per resource  Binary encoding for modes in a resource Interresource dependency graph  Dependency between counters  An edge (R1.m1, R2.m2) in MDG => add edge (R1, R2) Linearize the counters  Topological sort  break cycle if necessary Run the counters  Count next digit only if there is an edge in original MDG radio sensor CPU mem CPU radio sensor off sleepoffonoffsleepoffidleoffonidleoffactiveon

16 16 Outline Introduction Related work Mode dependency modeling Mode selection  Legal vs. feasible configurations  Mode schedule Experimental results Conclusions

17 17 Mode Selection: input Mode dependency graph A schedule of workload  Independent of power/energy, timing Component library  Maps workload into power, timing  Maps mode change into power/timing overhead Constraints  Timing:min/max separation  Power:min/max power levels

18 18 Output: feasible mode schedule Feasibility  All configurations are “legal” (satisfy MDG)  All timing & power constraints are satisfied Mode schedule  Original workload mapped to configuration (selected modes) over time  Overhead tasks inserted between changed modes  Idle power also considered Solutions  Dynamic programming  Backtracking

19 19 Example – Mars Pathfinder Rover Component-based system  Power sources: solar panel, non-rechargeable batteries  Power consumers Digital: computer, wireless, camera, hazard detector Mechanical: driving motors, steering motors Thermal: heaters Design constraints:  Power consumption Max/min power constraints  Timing Hard real-time Pair-wise precedence  Mode dependency Co-activation Enabling/disabling

20 20 Application Example: Mars Rover Behaviors and tasks  Moving around on Mars surface  Communicating with the Lander  Taking pictures (IMP)  Performing scientific experiments (APXS, ASI/MET) Components in the entire system  Hazard detector (HAZ),  Driving motor (DRV)  Steer motor (STR)  Radio frequency modem (RF)  Camera (CAM)  Microprocessor (PPC),  Micro-controller (MC)

21 21 Example: Mars Rover Components:  hazard detector, driving motor, steering motor Constraints:  hazard detector and motors should not be working at the same time Legal configurations str.on drv.o n OR str.off str: steering motor drv: driving motor haz: hazard detector hazard detectordriving motorsteering motor off onoff on offon off m0 m1 m2 m3 m4

22 22 Results Base line  Only: on/off modes  Relaxed constraints  Mode change overhead  No max power constraint Mode selection  Energy saving: 3.7% to 11.9% 8.7% average  Meets max power  More general timing

23 23 Results: Min power Free energy source  e.g., solar panel  Thermal battery Cost:  above min power Saving:  From 6.9% to 49.3%  average 26.5%

24 24 Exploring Different Working Scenarios Explore different working scenarios and compare results  Three mission tasks Moving around (MOV) Taking picture (CAM) Scientific experiment (SCI)  Three scenarios A: MOV, CAM, SCI B: CAM, MOV, SCI C: CAM, SCI, MOV

25 25 Result III Different working scenarios have different energy consumption  Scenario C consumes 12% more energy than scenario A (by mode selection) Mode selection always does better than simply on/off modes

26 26 Conclusions Mode selection problem  Choosing modes of component  Minimize energy at system level, satisfy timing constraints  Handles mode-change overhead Mode dependency modeling  Enabling relationship between modes of diff resources  Helps prune out illegal configurations Mode selection algorithm  Iterate over legal config’s to find feasible mode schedule  Satisfies power & timing constraints  Improve existing solution by 8-25% in energy cost  Give designers confidence in power-aware systems Tool available from http://www.ece.uci.edu/~impacct/

27 27 Mode Selection Algorithm (sketch) Exploration techniques  Backtracking  Cutting exploration space with multi-dimensional constraints Two steps in design exploration:  Find feasible mode selection for operating tasks Timing constraints Dependency between tasks  Find feasible mode selections for idle intervals System power/energy constraints: min, max, or power profile Mode change overhead, both time and power overheads Speedup techniques  Sorting component modes with power numbers

28 28 Legal configurations Sensor Node example  Mode combinations given by MIT group: 5 combinations  Mode combination generated from dependency graph  Add constraint When sensor is off, all other component should be off (proactive)  Automatically obtain same results as MIT group conf SRAM s0 ontx_rxon s1 onrxidleoff s2 onrxsleepoff s3 onoffsleepoff s4 offtx_rxon s5 off rxidleoff s6 offrxsleepoff s7 off sleepoff Not given by MIT group

29 29 Bibliography [Benini99] L. Benini, G. Paleologo, A. Bogliolo, and G. De Micheli. Policy optimization for dynamic power management. IEEE Trans. Computer-Aided Design, 18:813–833, June 1999. [Hwang97] C.-H. Hwang and A. Wu. A predictive system shutdown method for energy saving of event-driven computation. In Proc. of DAC, November 1997. [Qiu00] Q. Qiu, Q.Wu, and M. Pedram. Dynamic power management of complex systems using Generalized Stochastic Petri Nets. In Proc. of DAC, pages 352–356, 2000. [Hong98] I. Hong, D. Kirovski, G. Qi, M. Potkonjak, and M. B. Srivastava. Power optimization of variable voltage core-based systems. In Proc. of DAC, pages 176–181, 1998. [Quan01] G. Quan and X. S. Hu. Energy efficient fixed-priority scheduling for real-time systems on variable voltage processors. In Proc. of DAC, pages 828–833, 2001. [Shin99], Y. Shin and K. Choi. Power conscious fixed priority scheduling for hard real-time systems. In Proc. of DAC, pages 134–139, 1999. [Yao95] F. Yao, A. Demers, and S. Shenker. A scheduling model for reduced CPU energy. IEEE Annual Foundation of Computer Science, pages 374–382, 1995.

30 30 Acknowledgements DARPA PACC F33615-00-1-1719 NASA/Cal-Tech/JPL:  N. Aranki  M. Mojarradi  J. U. Patel  N. Toomarian

31 31 Tool Prototype Language  Python, Tkinter Graphical User Interface  Time window and power window  View tasks, overheads, power profile  Interactive command line  Incorporate with the scheduler (to be completed)  On-line help (to be completed)

32 32 Scenario A

33 33 Scenario B

34 34 Scenario C

35 35 System Power Representation Schedule  Gantt Chart Time view Power view Mode selection  Gantt chart Tasks marked with mode settings  Added non-operating tasks Idle intervals mode change overheads  Power profile view

36 36 Mode Selection: Problem Statement Input  A schedule  MDG  Constraints (power, timing) Output  a mode schedule Problem statement  Find feasible mode selection for the tasks/idle intervals for the components that meets system power and timing constraints Mode selector schedule Component library System constraints Mode selections

37 37 Comparison of three scenarios OriginalDVSOptimal No Timing Violations NoYesNo Power Violations 300320288 Energy Cost Original  Does not apply dynamic voltage scaling technique DVS  Ignores mode dependency between R1 and R3 Optimal solution  Must consider mode dependency  Energy saving due to dynamic voltage scaling


Download ppt "Mode Selection and Mode Dependency Modeling for Power-Aware Embedded Systems Dexin Li, Pai H. Chou, Nader Bagherzadeh University of California, Irvine."

Similar presentations


Ads by Google