Rate-Harmonized Scheduling Rate-Harmonized Scheduling for Saving - - PowerPoint PPT Presentation

rate harmonized scheduling rate harmonized scheduling for
SMART_READER_LITE
LIVE PREVIEW

Rate-Harmonized Scheduling Rate-Harmonized Scheduling for Saving - - PowerPoint PPT Presentation

Rate-Harmonized Scheduling Rate-Harmonized Scheduling for Saving Energy Anthony Rowe, Karthik Lakshmanan, Haifeng Zhu, Raj Rajkumar Real-Time and Multimedia Lab ECE Department Carnegie Mellon University Outline Energy-Saving RHS


slide-1
SLIDE 1

Rate-Harmonized Scheduling Rate-Harmonized Scheduling for Saving Energy

Anthony Rowe, Karthik Lakshmanan, Haifeng Zhu, Raj Rajkumar

Real-Time and Multimedia Lab ECE Department Carnegie Mellon University

slide-2
SLIDE 2

Outline

  • Motivation
  • Basic RHS

Basic RHS

  • Energy-Saving RHS

E l ti

  • Evaluation
slide-3
SLIDE 3

Sensor Andrew Project

  • Community Sensing and Sharing Infrastructure
  • XML based publish / subscribe model

1500 S i t d l d

  • 1500 Sensor points deployed across campus
  • Battery operated subnets (7+months uptime)
slide-4
SLIDE 4

Monitoring and Control

BACnet Power Monitoring and Control

slide-5
SLIDE 5

Campus Intelligent Workspace Campus Intelligent Workspace

slide-6
SLIDE 6

Energy Management Energy Management

  • Save energy on networking
  • Save energy on networking

– Build a good MAC protocol

Energy lost in collisions retries overhearing etc

  • Energy lost in collisions, retries, overhearing etc…

S t ti

  • Save energy on computation

– Build a good energy scheduler

  • Where is energy lost here?
slide-7
SLIDE 7

Problem Statement Problem Statement

  • Modern processors have support for different sleep modes

A ti (M t f ll i ) – Active (Most energy, full processing) – Idle (Low energy, but no processing) – Sleep (Lowest energy, oscillator off)

  • These states have a transition time penalty

– Active <-> Idle (quite fast) – Idle <-> Sleep (quite slow due to oscillator spin-up)

  • Sometimes we can’t sleep because the transition time

would be too long

– Can we batch task execution together to reduce transition Can we batch task execution together to reduce transition

  • verhead?
slide-8
SLIDE 8

Simple Example Simple Example

5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95 100 105 110

{ c, t } τ1 {5,35} τ2 {5,50} Idle Sleep Csleep = 15

slide-9
SLIDE 9

Example CPU parameters

Processor Freq. (MHz) Power Sleep (uW) Power Idle (mW) Power Active (mW) Sleep to Idle (ms) Idle to Active (us) ATmega1281 8 16 6.6 23 12 6 g Hitachi H8 8 .05 60 90 100 8 MSP430F5418 8 0.33 0.0085 4 10 5 ST Cortex M3 20 5.6 18.5 85 2 2 LPC2106 60 1 10 108 10 4 BF531 600 15 30 616 5 2

slide-10
SLIDE 10

Rate-Harmonizing Schedulers

  • Use a Harmonizing Base Period for the

release of tasks

– Cluster task execution together whenever possible p – Maintain analyzable utilization bounds

slide-11
SLIDE 11

5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95 100 105 110

τ1 τ {1,10} {1 15} τ2 τ3 Idle {1,15} {2,26} Sleep RMS (Csleep =5) {1,10} {1,15} {2,26} τ1 τ2 τ3 { } Idle Sleep RHS (Csleep =5)

Base Harmonizing Period = 10

slide-12
SLIDE 12

What about the schedulability?

  • We show that the task sets are still feasible

under basic rate harmonized scheduling if:

  • We show the exact schedulability condition:

y

slide-13
SLIDE 13

All idles are gone we win right? All idles are gone… we win right?

5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95 100 105 110

{1,10} {1,15} τ1 τ2

5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95 100 105 110

τ1 τ2

5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95 100 105 110

{1,10} {1,15} {2,26} τ3 Idle Sleep τ3 Idle Sleep {2,26} Sleep RHS (Csleep =5)

Base Harmonizing Period = 10

RHS (Csleep =7) Sleep

No, identical task set with Csleep = 7 ,

sleep

slide-14
SLIDE 14

Energy Saving RHS

τ1

5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95 100 105 110

{1,10}

gy g

τ2 τ3 Idle {1,15} {2,26} RHS (Csleep =7) Sleep τ1 τ2 τ3 {1,10} {1,15} {2,26} Idle E S i RHS (C 7) Sleep Energy Saver Task Energy-Saving RHS (Csleep =7)

slide-15
SLIDE 15

Properties of Energy Saving RHS p gy g

  • All Idle task slots become sleep!

All Idle task slots become sleep! We might not need all three CPU states

  • We might not need all three CPU states
  • Energy Consumption is now very regular

– We can nicely estimate lifetimes y

slide-16
SLIDE 16

What about schedulability?

  • We show the exact case condition
slide-17
SLIDE 17

Nano-RK Features Nano-RK Features

  • C GNU tool-chain

C GNU tool chain

  • Classical Preemptive Operating System Multitasking

Abstractions

  • Real-Time Priority-Based Scheduling

– Rate Monotonic Scheduling

  • Built-in Fault Handling
  • Resource Reservations

CPU Net ork Transd cer Reso rce Control – CPU, Network, Transducer Resource Control – Forms Virtual Energy Budget

http://www.nano-rk.org

slide-18
SLIDE 18

How much energy can we save? gy

Task C T U 1 1 20 .050 2 1 25 .040

Csleep = 10 ms T

sleep = 20 ms

CPU AT 1281

3 1 26 .038 4 1 28 .035 5 1 32 031

CPU = ATmega1281 (FireFly and IRIS motes)

5 1 32 .031 6 2 50 .04 7 2 67 .029

RMS = 9.83 mW S S

8 3 91 .033 9 9 100 .090

ES-RHS = 6.5 mW RHS saves 33%

slide-19
SLIDE 19

How much do we save in a real system? How much do we save in a real system?

Task C T U Task C T U Link Layer 1 20 .050 Network Layer 1 25 .040 HF Sensor Sampling 1 26 .038 Mobile Node Service 1 28 .035 Di ti 1 32 031 Diagnostic 1 32 .031

RMS = 2.38mW RHS = 2.00 mW During the most active states we see a 16% savings on CPU energy

slide-20
SLIDE 20

Conclusions Conclusions

  • We introduce and analyze Rate-Harmonized

S h d li f l t i t k Scheduling as a means of clustering task execution

  • We show RHS can save energy by reducing

unnecessary CPU Idle time y

  • We introduce Energy-Saving RHS

gy g

– Converts ALL Idle time into deep sleep

slide-21
SLIDE 21

Questions?