Title: Optimal Integration of InterTask and IntraTask Dynamic Voltage Scaling Techniques for Hard RealTime
1Optimal Integration ofInter-Task and Intra-Task
Dynamic Voltage Scaling Techniques for Hard
Real-Time Applications
- Jaewon Seo, Samsung Electronics
- Taewhan Kim, Seoul National University
- Nikil D. Dutt, University of California, Irvine
2OUTLINE
- INTRODUCTION AND RELATED WORK
- DEFINITIONS AND PROBLEM FORMULATION
- THE COMBINED DVS TECHNIQUE
- EXPERIMENTAL RESULTS
- CONCLUSIONS
3INTRODUCTION
- Minimizing energy consumption
- Important concern in system design
- Energy consumption in CMOS circuits
- Energy ? VDD2
- Lowering VDD - most effective technique for
reducing energy - Dynamic Voltage Scaling (DVS)
- Dynamic adjustment of supply voltage
- Energy saving vs. Increased execution time
- VDD ? clock freq. ( operating speed)
4INTRODUCTION (contd)
- Inter-task DVS vs. Intra-task DVS
Inter-task DVS Task 1 1 Specified by
WCET Reclaimed by other tasks
Intra-task DVS Basic block 1 1 CFG No slack
Scaling unit of tasks of Vs/task Task
model Slack handling
5- Control Flow Graph (CFG) for a Task
statements // b0 if (cond) then
statements // b1 else statements // b2
b0 n0200
p1 0.1
p2 0.9
b1 n1 800
b2 n2 100
6Task set with dependency and/or deadlines
t1 10
t3 40
t2 5
t4 75
t5 20
deadline300
7Related Work
- D. Shin, J. Kim, L. Lee, Intra-task voltage
scheduling for low-energy , IEEE Design Test
of Computers, 2001 - J. Seo, T. Kim, K. Chung, Profile-based optimal
intra-task voltage scheduling for hard real-time
, DAC 2004 - F. Yao, A. Demer, S. Shenker, A scheduling model
for reduced CPU energy, FOCS 1995 - Y. Zhang, X. Hu, D. Chen, Task scheduling and
voltage selection for energy minimization, DAC
2002 - W. Kwon, T. Kim, Optimal voltage allocation
techniques for dynamically variable voltage
processors, DAC 2003 - M. Schmitz, B. Al-Hashimi, P. Eles,
Energy-efficient mapping distributed embedded
system, DATE 2002 - G. Varatkar, R. Rarculescu, Communication-aware
task scheduling and voltage selection for total
, ICCAD 2003 - A. Andrei, et al., Overhead-conscious voltage
selection for dynamic and leakage energy
reduction , DATE 2004 -
8ENERGY MODEL
- Energy consumption
- Clock frequency ( speed)
- Average energy consumption
Supply voltage
Total of inst. cycles executed
- Energy (speed)2 x distance
Velocity saturation index
Threshold voltage
Energy consumption for p
Probability that execution follows p
9PROBLEM FORMULATION
- Application model
- N communicating tasks Tt1, t2, , tN
represented by a DAG - Arc (ti, tj) ti must be executed before tj
- Local deadline
- Sink (global deadline)
- Task parameters
- si starting time
- ei ending time (ei si),
- ti execution time (ti ei - si)
- di deadline
10PROBLEM FORMULATION (contd)
- Combined Inter- and Intra-task DVS problem
- Given an instance of tasks
- Find
- Inter-task schedule
- Intra-task voltage scaling
- With
- Feasible schedule for every possible exec. path
of tasks - Minimum total average energy consumption
11OPTIMAL INTRA-TASK DVS
bi basic block ni of execution cycles pi
probability that execution follows the edge
statements // b0 if (cond) then
statements // b1 else statements // b2
b0 n0200
p1 0.1
p2 0.9
b1 n1 800
b2 n2 100
12OPTIMAL INTRA-TASK DVS (CONTD)
- For unknown initial speed x
x MHz
b0 n0200
p1 0.1
p2 0.9
b1 n1 800
b2 n2 100
13(No Transcript)
14OPTIMAL INTRA-TASK DVS (CONTD)
- Find x that minimizes ( find the inflection
point) - We have
Energy consumptions for b0, b1 and b2
Length of ROEP
x speed of b0 ni length of bi pi prob. of
bi T deadline
15OPTIMAL INTRA-TASK DVS (CONTD)
- In general,
- di Length of ROEP for bi
- Optimal speed for bi
- Resultant minimum energy
If bi has no successor in CFG
, otherwise
16(No Transcript)
17PROPOSED TECHNIQUE (IntraDVS)
- Before executing the task
- Compute length of ROEP (say di) for each basic
block bi - Insert change_f_V(di/remaining_time()) at the
beginning of bi
18Speed 2.93 ? 3.24 ? 3.14 ? 3.14 ? 2.26 ? 2.26
B0 B2 B3 B5
B6 B8
19COMBINED DVS TECHNIQUE
- Two-step method
- Determine si and ei for each task ti
- Considering future use of intra-task scaling
- Execute ti within si , ei while varying
processor speed - Using optimal intra-task DVS scheme
20(No Transcript)
21CASE 1 TASKS WITH A GLOBAL DEADLINE ONLY
- Each task has no deadline other than sink
- Can be solved easily by properly distributing the
permitted execution time ( dsink) - Lemma 1
- Minimum energy consumption is achieved when each
task is assigned the execution time proportional
to its energy-optimal execution path length - ti dsink
?i
?1 ?N
22CASE 1 (CONTD)
- Without loss of generality assume sequence (t1,
t2, , tN) does not violate precedence
relations - Starting and ending time are determined
- si and ei si ti
0 for i 0 ei-1, for i 1
23(No Transcript)
24CASE2 TASKS WITH ARBITRARY DEADLINES
- Divide the problem into a collection of
subproblems of Case 1 - E.g.,
- Let (t1, t2, , tN)
- Obtained by EDF (Earliest Deadline First)
scheduling - Only two tasks ti, tj (iltj) have deadlines
- Partition into three groups
- (t1, , ti, , tj, , tN)
- gt (t1, , ti) (ti1, , tj) (tj1,
, tN) - Then, apply the method of Case 1
25t1 5
t3 65
t2 15
t5 5
t4 15
t6 20
deadline40
deadline120
t7 35
sink
deadline200
26AN IMPROVED INTER-TASK DVS TECHNIQUE
- Previous method is not optimal
- Yao et als algorithm
- Well-known optimal inter-task scheduling
algorithm with academic task model - No dependency between tasks
- Each task always takes its WCEP
- Task parameters
- (ai, di, ri) arrival time, deadline, req. of
cycles - Resultant energy consumption
Assigned execution time for minimum energy
27AN IMPROVED INTER-TASK DVS TECHNIQUE (CONTD)
- Transforming original problem
- Supertask
- t1 t1, , ti
- t2 ti1, , tj
- t3 tj1, , tN
- Arrival time
- a1 0
- a2 0
- a3 0
- Deadline
- d1 di
- d2 dj
- d3 dN
- Req. of cycles
- r1 ?1 ?i
- r2 ?i1 ?j
- r3 ?j1 ?N
(?i d0 value of task ti)
28AN IMPROVED INTER-TASK DVS TECHNIQUE (CONTD)
- After applying the optimal intraDVS, resultant
energy consumption becomes
Minimum energy consumption (by Theorem 2 in
section 4.3.2)
29t1 5
t3 65
t2 15
t5 5
t4 15
t6 20
deadline40
deadline120
t7 35
sink
deadline200
30(No Transcript)
31EXPERIMENTAL RESULTS
- Task sets are generated by TGFF v3.0 2
- Used the example input files (tgffopt)
- Each task is generated randomly
- 1 branches 100
- Branch probability is drawn from random normal
dist. (s1.0, µ0.5) - Length of the longest basic block
- Length of the shortest basic block
- Slack factor 0.2
- Compared to ILP based approach (Zhang 11)
100
32(No Transcript)
33CONCLUSIONS
- To deal with the combined inter- and intra-task
DVS problem - We devised the method setting energy-optimal
execution time to each task - Divided the task set into several task groups
s.t. each task group can be scheduled optimally
within the group boundary - Determined the group boundaries using existing
inter-task DVS technique - Then applied our optimal intra-task DVS technique
- Experimental results show 10.6 reduction of
energy consumption over the previous approach