Scheduling Tool Extended Gantt-chart in real-time scheduling for single processor Extended...

19
Scheduling Tool Extended Gantt-chart in real-time scheduling for single processor Event – bins Timing – horizontal size Power – vertical size Energy – area of the bin Power surge – compacting bins downward Power Time Starting time Ending time Power level Energy consumption Demo
  • date post

    20-Dec-2015
  • Category

    Documents

  • view

    218
  • download

    1

Transcript of Scheduling Tool Extended Gantt-chart in real-time scheduling for single processor Extended...

Page 1: Scheduling Tool Extended Gantt-chart in real-time scheduling for single processor Extended Gantt-chart in real-time scheduling for single processor  Event.

Scheduling Tool

Extended Gantt-chart in real-time scheduling for single processor Event – bins

Timing – horizontal size Power – vertical size Energy – area of the bin

Power surge – compacting bins downward

Power

TimeStarting time Ending time

Power level Energy consumption

Demo

Page 2: Scheduling Tool Extended Gantt-chart in real-time scheduling for single processor Extended Gantt-chart in real-time scheduling for single processor  Event.

Scheduling Tool

Scheduling chart for multi-processor and multiple power consumers Events can overlap vertically

Multi-processor Multiple power consumer – electronics, mechanical, thermal

Power awareness – min and max power supply

A

B B B B

C C C C C

D D D

Constant task A

Periodic task B

Periodic task C

Task D follows B

Power

Time

Demo

Page 3: Scheduling Tool Extended Gantt-chart in real-time scheduling for single processor Extended Gantt-chart in real-time scheduling for single processor  Event.

Scheduling Tool

Timing constraints – bin packing problem to satisfy horizontal constraints Independent tasks – moving bins horizontally Dependent tasks – moving grouped bins horizontally Power/voltage/clock scaling – extending/squeezing bins

A

B

C

DPower

Time

B

C

Deadline of B (scheduling space) Deadline of B

Min timing constraint of D

Max timing constraint of D

Deadline of C (scheduling space)

Deadline of C

Scheduling space of D

Slide bin within timing space

Squeeze/extend bin to available time slot

C

C

Demo

Page 4: Scheduling Tool Extended Gantt-chart in real-time scheduling for single processor Extended Gantt-chart in real-time scheduling for single processor  Event.

Scheduling Tool

Power constraints – bin packing problem to satisfy vertical constraints Automatic optimization – let the tool do everything Manual optimization – visualizing power in manual scheduling

A

B

C DPower

Time

B

Manual scheduling while monitoring power surge C

A

B

C

D

Power

Time

B

Attack spike

Automated global scheduling to meet min-max power

CC

Max

Min

Improve utilization

Demo

Page 5: Scheduling Tool Extended Gantt-chart in real-time scheduling for single processor Extended Gantt-chart in real-time scheduling for single processor  Event.

Example – Mars Rover

System specification 6 wheel motors 4 steering motors System health check Hazard detection

Power supply Battery (non-rechargeable) Solar panel

Power consumption Digital

computation, imaging, communication, control Mechanical

driving, steering Thermal

motors must be heated in low-temperature environment

Page 6: Scheduling Tool Extended Gantt-chart in real-time scheduling for single processor Extended Gantt-chart in real-time scheduling for single processor  Event.

Scheduling Example – Mars Rover

Operation Duration Timing constrainsHealth check 10 s Once in every 10-minute intervalHeating steering motors 5 sHeating wheel motors 5 sHazard detection 10 s Before steering

Steering 5 s

Before driving ALL four steering motors must be heated during the 50-second period prior to steering.

Driving 10 sALL six wheel motors must be heated during the 50-second period prior to driving.

Timing constraints

Page 7: Scheduling Tool Extended Gantt-chart in real-time scheduling for single processor Extended Gantt-chart in real-time scheduling for single processor  Event.

Scheduling Method

Constraint graph construction Nodes: operations Edges: precedence relationship between operations

Resource specification Resource: an executing unit that can perform operations

independently Six thermal resources for wheel heating Four thermal resources for steer motor heating One mechanical resource for driving One mechanical resource for steering One computation resource for control

Operations on one resource must be serialized

Scheduling Primary resource selection Schedule primary resource by applying graph algorithms Auxiliary resources and power requirement are considered as

scheduling constraints

Page 8: Scheduling Tool Extended Gantt-chart in real-time scheduling for single processor Extended Gantt-chart in real-time scheduling for single processor  Event.

Constraint Graph

System health check /

Thc

System health check /

Thc

thc -(thc + Thc)

Heat wheel 1 / Thw

Heat wheel 2 / Thw

Heat wheel 3 / Thw

Heat wheel 4 / Thw

Heat wheel 5 / Thw

Heat wheel 6 / Thw

Heat steer 2 / Ths

Heat steer 3 / Ths

Heat steer 4 / Ths

Hazard detection / Thd

Steer / Ts

Drive / Td

- thw

-ths

Heat steer 1 / Ths

Page 9: Scheduling Tool Extended Gantt-chart in real-time scheduling for single processor Extended Gantt-chart in real-time scheduling for single processor  Event.

-ths + Ths_E

-thw + Thw_E

thc -(thc + Thc)

Resource Specification

Hazard detection (C) /

Thc / Phc_CHealth check (C) /

Thc / Phc_C

Heat steer i (C) / Ths_C /

Phs_C

Heat steer i

(T) / Ths_T /

Phs_T

Heat wheel j

(C) / Thw_C

/ Phw_CHeat

wheel j (T) / Thw_T /

Phw_T

Steer (C) / Ts_C /

Ps_CSteer

(M) / Ts_M /

Ps_M

Drive (C) / Td_C /

Pd_C

Drive (M) / Td_M /

Pd_M

Health check (C) /

Thc / Phc_C

Computation

Mechanical

Thermal

Heat steer i

Heat wheel j

Health check

Health check

Steer

Drive

Hazard detection

Page 10: Scheduling Tool Extended Gantt-chart in real-time scheduling for single processor Extended Gantt-chart in real-time scheduling for single processor  Event.

Scheduling

Hazard detection (C) /

Thc / Phc_C

Heat steer i (C) / Ths_E /

Phs_E

Heat steer i

(T) / Ths_T /

Phs_T

Heat wheel j

(C) / Thw_E

/ Phw_E

Heat wheel j

(T) / Thw_T /

Phw_T

Steer (C) / Ts_C /

Ps_CSteer

(M) / Ts_M /

Ps_M

Drive (C) / Td_C /

Pd_CDrive

(M) / Td_M /

Pd_M

-ths + Ths_E

-thw

Primary resource: Computation

Auxiliary resource: Mechanical

Auxiliary resource: Thermal

Health check (C) /

Thc / Phc_C

thc -(thc + Thc)

-ths

-thw + Thw_E

-Ts_C + Ts_M

Page 11: Scheduling Tool Extended Gantt-chart in real-time scheduling for single processor Extended Gantt-chart in real-time scheduling for single processor  Event.

Scheduling Example – Mars Rover

Power constraintsDifferent solar power supply over

timeDifferent power consumption over

temperature/time

-40 degC -60 degC -80 degC

Solar power 14.9 12 9Battery 10 max 10 max 10 max

Heat one motor 5 5.1 6.2 7.5

Heat two motors 5 7.6 9.5 11.3

Drive 10 7.5 10.9 13.8

Steer 5 4.3 6.5 8.1

Hazard detection 10 5.1 6.7 7.3

Health check 10 4.7 5.7 6.3CPU Constant 2.5 3.5 3.7

PowerResource Duration

Solar Power Chart on Mars

0

2

4

6

8

10

12

14

16

Time

So

lar

Po

we

r

Page 12: Scheduling Tool Extended Gantt-chart in real-time scheduling for single processor Extended Gantt-chart in real-time scheduling for single processor  Event.

JPL Solution - High Solar Power (a)

0

5

10

15

20

25

5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85

Time

Po

we

r

Heat steer

Heat wheel

Drive

Steer

Hazard detection

Health check

CPU

Previous Solution by JPL

Over-constrained, conservative Serialize every operation to satisfy

power constraint Longer execution time and under-

utilization of solar power No scheduling tool is used –

manual scheduling

Not power-aware Scheduling without considering

power sources and consumers

JPL Solution - High Solar Power (b)

0

5

10

15

20

25

5 10 15 20 25 30 35 40 45 50 55 60 65 70 75

Time

Pow

er

Heat steer

Heat wheel

Drive

Steer

Hazard detection

CPU

System heart-beat - moving two steps

(a) Begin with health check (b) no health check

Page 13: Scheduling Tool Extended Gantt-chart in real-time scheduling for single processor Extended Gantt-chart in real-time scheduling for single processor  Event.

Solution 1: High Solar Power (14.9W)

Max solar power: 14.9W at noon Improved utilization of solar

power Automated scheduling – use

scheduling tools

Aggressive – do as much as possible heating motors while doing other

operations Fastest moving speed – no

waiting on heating

Our Solution - High Solar Power (a)

0

5

10

15

20

25

5 10 15 20 25 30 35 40 45 50 55 60

Time

Po

we

r

Heat steer

Heat wheel

Drive

Steer

Hazard detection

Health check

CPU

Our Solution - High Solar Power (b)

0

5

10

15

20

25

5 10 15 20 25 30 35 40 45 50

Time

Po

we

r

Heat steer

Heat wheel

Drive

Steer

Hazard detection

CPU

System heart-beat - moving two steps

(a) Begin with health check (b) no health check

Page 14: Scheduling Tool Extended Gantt-chart in real-time scheduling for single processor Extended Gantt-chart in real-time scheduling for single processor  Event.

Solution 2: Typical Solar Power (12W)

Moderate solar power output – 12W Improved utilization of solar

power Automated scheduling – use

scheduling tools

Moderately aggressive – avoid exceeding power limit Relaxed constraint –heating

motors while doing other operations

Faster moving speed – some waiting time on heating

Our Solution - Typical Solar Power (a)

0

2

4

6

8

10

12

14

16

18

20

22

5 10 15 20 25 30 35 40 45 50 55 60 65 70

Time

Po

we

r

Heat steer

Heat wheel

Drive

Steer

Hazard detection

Health check

CPU

Our Solution - Typical Solar Power (b)

02468

10121416182022

5 10 15 20 25 30 35 40 45 50 55 60

Time

Pow

er

Heat steer

Heat wheel

Drive

Steer

Hazard detection

CPU

System heart-beat - moving two steps

(a) Begin with health check (b) no health check

Page 15: Scheduling Tool Extended Gantt-chart in real-time scheduling for single processor Extended Gantt-chart in real-time scheduling for single processor  Event.

Solution 3: Low Solar Power (9W)

Minimum solar power output – 9W Restricted constraint – serialize

operations Automated scheduling – use

scheduling tools

Conservative – same as JPL solution Slow moving speed Full utilization of low solar power

Our Solution - Low Solar Power (a)

0

4

8

12

16

20

5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85

Time

Po

we

r

Heat steer

Heat wheel

Drive

Steer

Hazard detection

Health check

CPU

Our Solution - Low Solar Power (b)

0

4

8

12

16

20

5 10 15 20 25 30 35 40 45 50 55 60 65 70 75

Time

Pow

er

Heat steer

Heat wheel

Drive

Steer

Hazard detection

CPU

System heart-beat - moving two steps

(a) Begin with health check (b) no health check

Page 16: Scheduling Tool Extended Gantt-chart in real-time scheduling for single processor Extended Gantt-chart in real-time scheduling for single processor  Event.

Comparison

Existing solution Conservative – long execution time, low solar power utilization Not power aware – same schedule for all cases Not intend to use battery energy

Solar power output Battery energy Solar energy % of solar energy Time Moving distance14.9 0 672.5 60% 75 2 steps - 14cm12 55 817 91% 75 2 steps - 14cm9 388 675 100% 75 2 steps - 14cm

Solar power output Battery energy Solar energy % of solar energy Time Moving distance14.9 6 604 81% 50 2 steps - 14cm12 149 720 100% 60 2 steps - 14cm9 388 675 100% 75 2 steps - 14cm

Our solution Adaptive – speedup when solar power supply is high Power-aware – smart scheduling on different power supply/consumption Use battery energy when necessary

Page 17: Scheduling Tool Extended Gantt-chart in real-time scheduling for single processor Extended Gantt-chart in real-time scheduling for single processor  Event.

Evaluation

What is the value of our tool?Shorter execution time

Is this valuable?More energy consumption from battery

Is this bad?

How to evaluate the tool?Application level evaluation

Heart-beat is not the correct level to evaluateMap schedules to applications

Power related scenarioVarious power constraint (supply/consumption) over

different stages of applicationPower-aware adaptive scheduling for different stagesEvaluate overall performance of the whole mission

Page 18: Scheduling Tool Extended Gantt-chart in real-time scheduling for single processor Extended Gantt-chart in real-time scheduling for single processor  Event.

Application-level Evaluation

Mission description Target location – 48 steps from current location

Power condition 14.9W for first 10 minutes, 12W for next 10 minutes, 9W

thereafter

Performance metrics Execution time Total energy drown from battery

Travel Distance

TimeEnergy

CostTravel

DistanceTime

Energy Cost

0-610 14.9 16 610 0 24 610 72611-1220 12 16 610 440 20 610 1569.5

1221- 9 16 610 3114 4 160 786Total 48 1830 3554 48 1380 2427.5

Improvement

24.6% 31.7%

IMPACCTJPLTime frame Solar Power

Page 19: Scheduling Tool Extended Gantt-chart in real-time scheduling for single processor Extended Gantt-chart in real-time scheduling for single processor  Event.

Application-level Evaluation

Power-awarenessExecution speed scales with

power condition adaptively

Smart scheduleMaximize best caseAvoid worst case

Tradeoff: cost vs. efficiencyUse energy wisely

Application-specificApplication-level knowledgeWorking mode parameters of

components

Adaptive Scheduling by IMPACCT

6

8

10

12

14

16

10 20 30Time

Power

SolarPow er

SpeedJPL

SpeedIMPACCT

0

4

8

12

16

10 20 30Time

Power

SolarPower

BatteryPower -JPL

BatteryPower -IMPACCT