Download presentation
Presentation is loading. Please wait.
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
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.