21
Quantifying the Sub-optimality of Non-preemptive Real-time Scheduling Abhilash Thekkilakattil , Radu Dobrin and Sasikumar Punnekkat

Quantifying the Sub-optimality of Non-preemptive Real-time Scheduling Abhilash Thekkilakattil, Radu Dobrin and Sasikumar Punnekkat

Embed Size (px)

Citation preview

Page 1: Quantifying the Sub-optimality of Non-preemptive Real-time Scheduling Abhilash Thekkilakattil, Radu Dobrin and Sasikumar Punnekkat

Quantifying the Sub-optimality of Non-preemptive Real-time Scheduling

Abhilash Thekkilakattil, Radu Dobrinand Sasikumar Punnekkat

Page 2: Quantifying the Sub-optimality of Non-preemptive Real-time Scheduling Abhilash Thekkilakattil, Radu Dobrin and Sasikumar Punnekkat

Research Agenda

Quantify the goodness of non-preemptive scheduling

●Preemption behavior vs. processor speed

●Derive processor speed-up bound to enable non-preemptive feasibility

Minimize preemption overheads using processor speed-up

●Preemption analysis for limited preemption schedulers

●Derive minimum processor speed that minimizes scheduler specific overheads

Page 3: Quantifying the Sub-optimality of Non-preemptive Real-time Scheduling Abhilash Thekkilakattil, Radu Dobrin and Sasikumar Punnekkat

Preemptive vs. Non-preemptive Scheduling

• Preemptive EDF is uniprocessor optimal

• Strict domination of preemptive scheduling paradigm

• Fairly well investigated

• No algorithm is uniprocessor optimal under non-idling paradigm

• No online non-preemptive scheduler with inserted idle times exists

• Less investigated compared to preemptive scheduling

Feasibility: Does a schedule exists that guarantees no deadline misses for a given real-time task set?

Preemptive Scheduling Non-preemptive Scheduling

Page 4: Quantifying the Sub-optimality of Non-preemptive Real-time Scheduling Abhilash Thekkilakattil, Radu Dobrin and Sasikumar Punnekkat

Set of uniprocessor feasible task sets

Set of non-idling non-preemptive feasible task sets

Set of limited preemptive feasible task sets

Non-preemptive EDF

Preemptive EDF

Limited preemptive EDF

Question: How good is non-preemptive scheduling when compared to uniprocessor optimal (preemptive) scheduling algorithms?

Preemptive vs. Non-preemptive Scheduling

Page 5: Quantifying the Sub-optimality of Non-preemptive Real-time Scheduling Abhilash Thekkilakattil, Radu Dobrin and Sasikumar Punnekkat

?

State of the Art

The efficiency of a scheduler is commonly measured by resource augmentation how much extra resources (CPU) are required to reach optimality?

Task model Preemptive(EDF vs. FPS)

Non-preemptive(EDF vs. FPS)

Implicit deadline 1.44269

1.76322 - 2Constrained deadline

1.76322

Arbitrary deadline

1.76322 - 2

Davis et al

?

EDF feasibility FPS feasibility

Preemptive EDF feasibility

Non-preemptive EDF feasibility

Page 6: Quantifying the Sub-optimality of Non-preemptive Real-time Scheduling Abhilash Thekkilakattil, Radu Dobrin and Sasikumar Punnekkat

System Model

● Constrained deadline sporadic task sets (deadline ≤ period)

● Worst Case Execution Time scales linearly with processor speed

● Limited-preemptive scheduler

- Floating non-preemptive region (f-NPR) scheduler

max. length of f-NPR = Li

Task j (high priority)

Task i (low priority)

Page 7: Quantifying the Sub-optimality of Non-preemptive Real-time Scheduling Abhilash Thekkilakattil, Radu Dobrin and Sasikumar Punnekkat

Limited-Preemption Feasibility Analysis

Task i

Task j

Task k

Li

Feasibility condition:

Dk

Dj

S.Baruah, The limited-preemption uniprocessor scheduling of sporadic task systems, ECRTS’05

Li + DBF(Dk) ≤ Dk

DBF(Dk) Li + DBF(Dj) ≤ Dj

DBF(Dj)

Di

Page 8: Quantifying the Sub-optimality of Non-preemptive Real-time Scheduling Abhilash Thekkilakattil, Radu Dobrin and Sasikumar Punnekkat

Limited-Preemption Feasibility Analysis

Task i

Task j

Task k

Li

Feasibility condition:

Dk

Dj

S.Baruah, The limited-preemption uniprocessor scheduling of sporadic task systems, ECRTS’05

DBF(Dj) Li + DBF(Dk) ≤ Dk

Di

Page 9: Quantifying the Sub-optimality of Non-preemptive Real-time Scheduling Abhilash Thekkilakattil, Radu Dobrin and Sasikumar Punnekkat

Task i

Task j

Task k

Li

Feasibility condition:

Dk

Dj

DBF(Dj)

speed-up

Di

Limited-Preemption Feasibility Analysis

Page 10: Quantifying the Sub-optimality of Non-preemptive Real-time Scheduling Abhilash Thekkilakattil, Radu Dobrin and Sasikumar Punnekkat

Processor Speed-up Bound

Proof in the paper

?

Speed (S)

The maximum S

Page 11: Quantifying the Sub-optimality of Non-preemptive Real-time Scheduling Abhilash Thekkilakattil, Radu Dobrin and Sasikumar Punnekkat

1

4Cmax/Dmin

4L/Dmin

Preemption Behavior vs. Processor Speed

All feasible task sets are guaranteed a non-preemptive execution for L units

All feasible task sets are guaranteed a fully non-preemptive schedule

Slower

Processor Speed

Faster

Set of uniprocessor feasible task sets

Set of non-idling non-preemptive feasible task sets on a uniprocessor

Set of limited-preemption feasible task sets

Feasibility Bucket

Page 12: Quantifying the Sub-optimality of Non-preemptive Real-time Scheduling Abhilash Thekkilakattil, Radu Dobrin and Sasikumar Punnekkat

Research Agenda

Quantify the goodness of non-preemptive scheduling

●Preemption behavior vs. processor speed

●Derive processor speed-up bound to enable non-preemptive feasibility

Minimize preemption overheads using processor speed-up

●Preemption analysis for limited preemption schedulers

●Derive minimum processor speed that minimizes scheduler specific overheads

Page 13: Quantifying the Sub-optimality of Non-preemptive Real-time Scheduling Abhilash Thekkilakattil, Radu Dobrin and Sasikumar Punnekkat

Research Agenda

Quantify the goodness of non-preemptive scheduling

●Preemption behavior vs. processor speed

●Derive processor speed-up bound to enable non-preemptive feasibility

Minimize preemption overheads using processor speed-up

●Preemption analysis for limited preemption schedulers

●Derive minimum processor speed that minimizes scheduler specific overheads

Page 14: Quantifying the Sub-optimality of Non-preemptive Real-time Scheduling Abhilash Thekkilakattil, Radu Dobrin and Sasikumar Punnekkat

Scheduler Specific Overheads

Non-preemptive Scheduling

Low runtime overhead: zero preemption costs

Mutual exclusion by construction Increased blocking: low utilization

Preemptive Scheduling

Zero blocking: high utilization High runtime overhead: preemption

costs Need for costly synchronization

protocols

high priority

low priority

preemption costhigh priority

low priority

blocking

Limited-Preemption Scheduling

Best of preemptive and non-preemptive: preempt only when necessary

high priority

low priority

Bounded non-preemptive region

preemption cost

Page 15: Quantifying the Sub-optimality of Non-preemptive Real-time Scheduling Abhilash Thekkilakattil, Radu Dobrin and Sasikumar Punnekkat

Scheduler Specific Overheads

high priority

low priority

Bounded max. length of f-NPRLimited-preemptionscheduler

Vary the bound onthe max length of f-NPR

No control on the bound on number of preemptions

Control the bound on the number of preemptions

Limited control on the preemption points

Full control on the preemption points: possibility to minimize preemption overheads

Bounded max. length of f-NPR

high priority

low priority

Our method:

Page 16: Quantifying the Sub-optimality of Non-preemptive Real-time Scheduling Abhilash Thekkilakattil, Radu Dobrin and Sasikumar Punnekkat

Minimizing Preemption Related Overheads

Task attributes

Largest non-preemptive regions

Sensitivity analysis

Minimum processor speed that guarantees feasibility

Max. no. of preemptionsPreferred preemption

points

Derivation of non-preemptive

regionsStep 1

Step 2

Page 17: Quantifying the Sub-optimality of Non-preemptive Real-time Scheduling Abhilash Thekkilakattil, Radu Dobrin and Sasikumar Punnekkat

Step 1: Deriving f-NPRs

Preferred preemption points ( )Req. 1: Bound the number of preemptions

Req. 2: Enable preemptions at optimal points

Default max. length of f-NPR

Max. length of the desirable f-NPR

We use processor speed-up

Task level requirements:

Task i

Page 18: Quantifying the Sub-optimality of Non-preemptive Real-time Scheduling Abhilash Thekkilakattil, Radu Dobrin and Sasikumar Punnekkat

Step 2: Sensitivity Analysis

min = 1 optimal

speed speed speed speed speed speed

max =

1

4Cmax/Dmin

4L/Dmin

Slower

Processor Speed

Faster

Default max. length of f-NPR

Max. length of the desirable f-NPR

Page 19: Quantifying the Sub-optimality of Non-preemptive Real-time Scheduling Abhilash Thekkilakattil, Radu Dobrin and Sasikumar Punnekkat

Tightening the Augmentation BoundSpeed

(S)Less pessimistic

unified result:

Page 20: Quantifying the Sub-optimality of Non-preemptive Real-time Scheduling Abhilash Thekkilakattil, Radu Dobrin and Sasikumar Punnekkat

Conclusions

● Quantification of the sub-optimality of non-preemptive scheduling- Non-preemptive scheduling is not uniprocessor optimal under the work conserving

paradigm

- Optimal online non-preemptive scheduler with inserted idle times cannot exist

- Our contribution allows to use processor speed-up to enable non-preemptive feasibility for arbitrary task sets

● Analysis of preemption behavior vs. processor speed: the feasibility bucket

● Method to minimize preemption overheads

- Derivation of non-preemption requirements

- Sensitivity analysis to calculate the optimal speed-up

● Future work: extension to multiprocessor scheduling

Page 21: Quantifying the Sub-optimality of Non-preemptive Real-time Scheduling Abhilash Thekkilakattil, Radu Dobrin and Sasikumar Punnekkat

Thank you !

Questions ?