Presentation is loading. Please wait.

Presentation is loading. Please wait.

Minimizing Expected Energy Consumption in Real-Time Systems through Dynamic Voltage Scaling Ruibin Xu, Daniel Mosse’, and Rami Melhem.

Similar presentations


Presentation on theme: "Minimizing Expected Energy Consumption in Real-Time Systems through Dynamic Voltage Scaling Ruibin Xu, Daniel Mosse’, and Rami Melhem."— Presentation transcript:

1 Minimizing Expected Energy Consumption in Real-Time Systems through Dynamic Voltage Scaling Ruibin Xu, Daniel Mosse’, and Rami Melhem

2 Problems Theme Context: Frame-based hard real time systems Given one or more tasks with – Same period – deadline = period – Order of execution of tasks Probability distribution of execution cycles of each task One processor with DVS support Goal: Schedule tasks (time allocation, speed) to minimize expected energy consumption

3 Problems & System Models Problems Intra-Task DVSInter-Task DVSHybrid System Model IdealRealistic

4 Problems Intra-Task DVS – Only one task – Compute speed of each cycle or group of consecutive cycles. Inter-Task DVS – Multiple Tasks and their order of execution – Compute fraction of remaining time to allot to each task – At run time, speed changes only at the boundary of a task Hybrid – Combine Intra and Inter-task DVS

5 System Models Ideal Model – Unrestricted continuous speed – No time or energy overhead for changing speed – Well defined power-frequency relation. p(f) = c 0 +c 1 f α Realistic Model – Predefined set of discrete speeds – Changing speed costs time and energy overhead – No assumption on power-frequency relation

6 Intra-Task DVS + Ideal System Minimize, where Subject to Optimal solution is Algorithms: PACE, GRACE.

7 Intra-Task DVS + Realistic System First approach: patch solution obtained under ideal system GRACE: round speed up to closest discrete frequency PACE: round speed up or down to closest discrete frequency Problems? – Can miss deadline – Ignore speed change overhead PACE: scan all phases and adjust speed, subtract maximum time penalty from allotted time

8 Intra-Task DVS + Realistic System Second Approach: Design DVS considering the realistic system model (PPACE). Change speed time penalty Change speed energy penalty Given r transition points, partition the range of execution cycles [1, W] into r+1 phases: [b 0, b 1 -1], [b 1, b 2 -1],…, [b r, b r+1 -1], where b 0 =1, b r+1 =W+1 Not necessarily the optimal partitioning!

9 Intra-Task DVS + Realistic System 1 0 b 0 =1b1b1 b2b2 b3b3 brbr cdf(x) X f0f0 f1f1 f2f2 frfr …… *Graph borrowed from presentation by Ruibin Xu

10 Intra-Task DVS + Realistic System Minimize Subject to Where

11 Intra-Task DVS + Realistic System An energy-time label l is a 2-tuple (e,t), where e and t denote energy and time, respectively *Graph borrowed from presentation by Ruibin Xu

12 Intra-Task DVS + Realistic System v0v0 v1v1 v2v2 v3v3 |LABEL(0)|=1|LABEL(1)|=M |LABEL(2)|=M 2 |LABEL(3)|=M 3 Exponential growth ! *Animation borrowed from presentation by Ruibin Xu

13 Intra-Task DVS + Realistic System Use Approximation – Approximations that preserve optimality but do not guarantee polynomial running time – Approximation based on factor є so that solution is within (1+є) of optimal, and we get a polynomial running time.

14 Intra-Task DVS + Realistic System v0v0 v1v1 v2v2 v3v3 |LABEL(0)|=1|LABEL(1)|=M |LABEL(2)|=M 2 |LABEL(3)|=M 3 |LABEL(1)|<<M, Hopefully! |LABEL(2)|<<M 2 Hopefully! *Animation borrowed from presentation by Ruibin Xu

15 Intra-Task DVS + Realistic System

16

17

18 Inter-Task DVS + Ideal System Algorithm: OITDVS slack β1Dβ1D (1-β 1 )D D β1β1 *Animation borrowed from presentation by Ruibin Xu

19 Inter-Task DVS + Ideal System β 4 =100% β 3 =xx% vs. T1T1 T2T2 T3T3 T4T4 β 2 =xx% vs. β 1 =xx% *Animation borrowed from presentation by Ruibin Xu

20 Inter-Task DVS + Realistic System Use the ideal system to compute allotted fractions of system time to each task Patch the solution to work on the realistic system: – Before computing the speed of a task, subtract from remaining time the maximum possible time penalty for all remaining speed changes. – Make sure a task runs at one of the discrete speed steps Algorithms PITDVS, PITDVS2

21 Hybrid (Intra + Inter-Task DVS) + Ideal System Combine intra and inter-task DVS. Compute fractions per cycle per task, instead of just per task. Algorithm: GOPDVS

22 Hybrid (Intra + Inter-Task DVS) + Realistic System Two approaches First (PGOPDVS): – Compute time allocation fraction per phase (instead of cycle) per task. – From the above fractions, compute fraction per task. – At run time, use task fractions to allot time to each task. – Compute task speed by applying patches as in inter-task DVS

23 Hybrid (Intra + Inter-Task DVS) + Realistic System Second (PIT-PPACE): – Compute time allocation fraction per task (inter- task DVS). – At run time, use intra-task DVS to compute speed schedule of each task according to allotted time. – Because the above step is time consuming, we can compute a set of solutions of intra-task DVS for each task and apply the best one at run time.

24 Hybrid (Intra + Inter-Task DVS) + Realistic System

25

26 Questions?

27 Energy-Aware Scheduling for Streaming Applications on Chip Multiprocessors Ruibin Xu, Rami Melhem, Daniel Mosse’

28 Problem Streaming applications operate on streams of data and are compute intensive. Examples: video streaming, automatic target recognition A stream of data can be abstracted as a sequence of requests. Thus a streaming application can be modeled as a periodic task in real-time systems. QoS: Throughput (T), and Deadline (D)

29 Problem Streaming applications are highly parallelizable and thus we can use CMPs to run them. CMPs support: – Turning off cores to reduce leakage – DVS to reduce dynamic energy consumption Goal: Schedule tasks so as to minimize energy consumption and meet QoS requirements.

30 Models Application is modeled as a DAG where nodes represent tasks, and edges represent precedence relations and communication requirements. Communication cost of transferring B bits – Delay is – Energy is Each processor has M discrete frequency steps

31 Decompose the Problem

32 Effect of Static Power Power function of a processor core Consider Y-oriented load only Assume job consists of c cycles, and we use y cores, then each is assigned cycles, and runs with speed Energy consumption is To minimize energy consumption Similar result for X-oriented load

33 Scheduling for Y-Oriented Load Solution has recursive nature Let denote optimal scheduling of tasks i through n, with end-to-end delay = t Computes single Value of i,i+1,..,j dt-d q WCEC Running time Energy

34 Scheduling for Y-Oriented Load We need to consider all M frequencies and all possible n-i+1 mappings of consecutive tasks i through n to first stage.

35 Scheduling for X-Oriented Load Use List scheduling to map tasks to cores in the same stage. Perform speed computation for tasks of the stage. Use hill-climbing to improve solution.

36 Scheduleing2D

37 Simulation Results Comparing Schedling2D against baseline. Baseline Algorithm – Period = deadline – Try all possible number of cores to find minimum energy consumption. – Use ETF heuristic to perform task mapping. – Uses convex programming approach to obtain execution speed of each task given task mapping.

38 Simulation Results Percentage of static power in total power: – 70nm: 22% – 50nm: 44% – 35nm: 67% As static power increases, energy savings obtained by Scheduling2D decreases

39 Simulation Results

40 As period increases, energy savings decrease For a given period, increasing deadline will initially result in increased energy savings

41 Thanks!


Download ppt "Minimizing Expected Energy Consumption in Real-Time Systems through Dynamic Voltage Scaling Ruibin Xu, Daniel Mosse’, and Rami Melhem."

Similar presentations


Ads by Google