Uncertainty Based Scheduling: Energy

Download Report

Transcript Uncertainty Based Scheduling: Energy

Uncertainty Based Scheduling: Energy-Efficient Ordering for Tasks with Variable Execution Time

Flavius Gruian and Krzysztof Kuchcinski Embedded Systems Design Laboratory Lund Institute of Technology Sweden

Presentation Outline

• Problem Set-up • A Motivation • Uncertainty Based Scheduling • Experiments – comparison to FullSearch – measurements on EVB80200 platform • Summary & Conclusions 30/04/2020 ISLPED 2003 -- Uncertainty Based Scheduling… 2(11)

Problem Set-up

• tasks: period=deadline, variable execution • off-line (static) ordering but • run-time speed selection – speed for the

k

th task – energy for a period (clock energy

e(s)=Ks

 )

s

(  1 , , 

k

 1 )  

N i

 1

WCE Af ref

 

k

 1

j

 1

i X j

30/04/2020 – average energy 1, 

E

(

X

 )   

x

1 ISLPED 2003 ,

N

) 

X

1

K

1

s

0  ---

x N

  

N i

 2

X i K i s

(  1 ,

E

(

x

 )  (

x

1 )  (

x N

)

dx

1 Uncertainty Based Scheduling… , 

i

 1 )

dx N

3(11) 

A Motivational Example

Task Set: 3 tasks, uniform distribution (BCE,WCE) = {  1 :(12,20),  2 :(10,30),  3 :(24,40)} A = 100, K=1, f ref =1,  =2 Execution Type <1, 3, 2> <2, 3, 1> Offline WCE 30/04/2020 [

X

] 42.094

E

[

X

] 41.839

37.482

36.978

  55.080 (speed 0.90) [

X

]%

Ideal

134% 119% 100% 175% ISLPED 2003 -- Uncertainty Based Scheduling… 4(11)

UBS in a Nutshell

• Main ideas: – achieve a low speed ASAP by ordering tasks wisely – approximate by

E

[

X

] • Priority: [

X

]

p ubs

( 

k

) 

K k X k s

 

s k

 – prioritize short tasks – prioritize tasks with large variation in execution – algorithmic complexity O(N 2 ) for ordering N tasks 30/04/2020 ISLPED 2003 -- Uncertainty Based Scheduling… 5(11)

6(11)

UBS vs. Full Search

0.95

1 % of N o Scaling A vg. Energy 0.9

0.85

0.8

0.75

0.7

0.65

0.6

0.55

0.5

2 3 30/04/2020 UBS Full Sear ch • 300 sets of each size (3,4,5,6 tasks) • used the “real” E formula (4) • under 2% difference 4 Task se t siz e 5 ISLPED 2003 -- 6 7 Uncertainty Based Scheduling…

The Test Platform: EVB80200

•Intel i80200 (XScale) •MAX1855 voltage regulator •32MB SDRAM, 4MB Flash •RS232, JTAG, 7segLED 7(11) 30/04/2020 ISLPED 2003 -- Uncertainty Based Scheduling…

8(11) 0.9

UBS example on i80200: m6

Po wer (W) 0.8

0.7

UBS (21.11mJ) Reverse UBS (2 4.3 4mJ) Random (22.78mJ) WCE-stre tch (28.58mJ) M AX (37.5 7mJ) 0.6

0.5

0.4

0.3

0.2

• 6 tasks 2 LZ (K=770mW) 2 QS (K=840mW) 2 FOR (K=800mW) •max speed time 49ms •variation 17ms •runtime rescheduling after every 5 x H 0.1

0 0 30/04/2020 0.0 1 0.02

0.03

Time (s) 0.0 4 0.05

0.06

0.0 7 0.08

0.09

ISLPED 2003 -- Uncertainty Based Scheduling…

More Experimental Results: m6

Max WCE-S R-UBS Rand UBS 45 40 35 30 25 20 15 10 5 0 0% 25% 50% Deadline extension 75% 30/04/2020 ISLPED 2003 -- Uncertainty Based Scheduling… 9(11)

Experimental Results: m15

Max WCE-S R-UBS Rand UBS 15 10 5 0 45 40 35 30 25 20 30/04/2020 0% 25% 50% Deadline extension 75% ISLPED 2003 -- Uncertainty Based Scheduling… 5x LZ 5x QS 5x FOR 10(11)

Summary & Conclusions

• use more information to derive better methods • UBS: runtime, non-intrusive ordering for tasks with variable execution time • measurements on – a real platform: EVB80200 – realistic tasks: Lempel-Ziv codec & Quicksort • execution order matters!

• random reordering: OK • UBS strategy: BEST 30/04/2020 ISLPED 2003 -- Uncertainty Based Scheduling… 11(11)

Thank You!

30/04/2020 ISLPED 2003 -- Uncertainty Based Scheduling…

Measuring the core Power

Icc Vreg 0. 1  Vcc CPU GN D 10k  Vin = 1 0/1 1 V reg 1k  1k  2 + 3 + 4 4.3k

 7 1 LF351 5 of fset trim 470nF dif f trim U = Icc x 1  to Oscilloscope + 9V + 5. 1k  470nF 9V 1k  30/04/2020 ISLPED 2003 -- Uncertainty Based Scheduling… 13(11)

i80200 I/O Power

B us Speed vs. Po wer (M od erat e Bus Uti li zatio n) 0.60

Pin Pow er (Watts) 100MHz bus 0.50

0.40

0.30

0.20

66 MHz bus 0.10

0.00

3. 00 3. 10 3. 20 3. 30 Vccp (Volts) 3. 40 3.50

3.60

1. Assume sys tem driving one PC-100 DIMM and a companio n chip with 10pF/pin capacitance.

30/04/2020 ISLPED 2003 -- Uncertainty Based Scheduling… 14(11)

i80200 Core Power

C or e P o w er ( on D h r y st o n e 2 .1: h ig h c o r e a c t iv it y ) 0.700

0.600

0.500

Core Po w er (Watts) 600 MHz 0.400

0.300

0.200

0.100

0.000

0.6

0.7

0.8

0.9

1 1.1

Vcc (Volts) 1.2

400 MHz 1.3

1.4

1.5

1.6

15(11) 30/04/2020 ISLPED 2003 -- Uncertainty Based Scheduling…

UBO extension to EDF

• • • Use preemption to extract regions Push forward uncertain regions Algorithm: 1. Start from the latest deadline 2. Between two consecutive deadlines order the regions according to the already given priorities 3. Preempt the task which does not fit entirely 4. Proceed with the next consecutive deadlines 16(11) 30/04/2020 ISLPED 2003 -- Uncertainty Based Scheduling…

An Example of UBO EDF

T=16 WCE=10 D=15 Task 1 mean=9 WCE=6 Task 2 m=3 D=16 10 6 Classic EDF 30/04/2020 5 + Preemption for Reduced Energy 10 1 Reordering In the long run: 18% less energy than for the classic EDF!

ISLPED 2003 -- Uncertainty Based Scheduling… 17(11)