efficient admission control for enforcing arbitrary real-time demand-curve interfaces farhana dewan...

27
Efficient Admission Control for Enforcing Arbitrary Real- Time Demand-Curve Interfaces Farhana Dewan and Nathan Fisher RTSS, December 6 th , 2012 CoPaRTS Sponsors:

Upload: mavis-holmes

Post on 01-Jan-2016

216 views

Category:

Documents


0 download

TRANSCRIPT

Efficient Admission Control for Enforcing Arbitrary Real-Time

Demand-Curve Interfaces

Farhana Dewan and Nathan Fisher

RTSS, December 6th, 2012

CoPaRTS

Sponsors:

Outline 2

Background: Compositional Real-Time System Real-Time Interfaces

Problem: Enforcing Interfaces Setting:

Aperiodic Jobs Demand-Curve Interfaces

Solution: Admission Control for MAD Jobs Simulation

Future Work: Admission Control for Arbitrary Jobs

3

Compositional Real-Time System

Component C Workload W Component-level Scheduling Algorithm A Real-time Interface I

A

𝝉n𝝉2 𝝉1I

C

W

Global Scheduler

A1

𝝉1

I1

C1

W1𝝉2

𝝉n

A2

I2

C2

W2

𝝉1

𝝉2

𝝉n

A3

I3

C3

W3

𝝉1

𝝉2

𝝉n

Background Problem Setting Solution Future Work

4

Real-Time Interfaces

Ai

Ii

Ci

Wiτ2 τni

Interface Selection (using parameters)

Server

Global Scheduler

τ1

Background Problem Setting Solution Future Work

Server-based interface model

Demand-curveinterface model

Ak

Ik

Ck

Wkτ2 τnk

τ1

Interface Selection (using functions)Ex- periodic

resource model,

bounded-delay

resource model

Ex- Real-Time

Calculus, demand-

bound server

5

Real-Time Interfaces

Simple Schedulabiltiy analysis

explicit Interfaces over-

allocates processing resource

Servers enforce strict temporal isolation

Complex Schedulabiltiy analysis

implicit Interfaces precisely

model resource demand

Temporal isolation is not guaranteed

Server-Based Interface Demand-Curve Interface

Background Problem Setting Solution Future Work

6

This Work

For demand-based models, achieving efficient resource allocation as well as strict temporal isolation among components is challenging

There is no known “policing” protocol to ensure that a system does not violate its demand-curve interface [Sanjoy Baruah, CRTS2008]

Background Problem Setting Solution Future Work

Goal: Design Efficient and near-optimal admission controllers for arbitrary demand-curve interface with aperiodic component workload

7

This Work

Ai

Ii

Ci

Wiτ2 τn

Interface Selection (using parameters)

Server

Global Scheduler

τ1

Background Problem Setting Solution Future Work

Server-based interface model

Demand-curveinterface model

Interface Enforcement(Admission

Control)

Ak

Ik

Ck

Wkτ2 τn

τ1

Interface Selection (using functions)

Ak

Ik

Ck

Wkτ2 τnτ1

Interface Selection (using functions)

8

Setting: Aperiodic Jobs

Set of Aperiodic Jobs J = {j1 … jN} Aperiodic job ji =(Ai , Di , Ei) Arrival time Ai Relative deadline Di; absolute deadline di = Ai

+Di

Worst-case execution Ei during interval [Ai, Ai+Di)

)()(

21

21

.),,(

tdtAJj

i

ii

i

EttJdemand

j1

j2j3

j4j5

tA1 A2A3 A4 A5 d4d5d3d1 d2

t1 t2

Background Problem Setting Solution Future Work

Monotonic absolute deadline

(MAD) jobs

A

I

C

Wj1 j2

9

Demand-Curve Interfaces

Single-Step Demand Interface

Arbitrary Demand Interface

α∆ t

σ

db

i

α1

∆1 t

σ1

σ2

σ3

σ4

∆2

∆3

∆4

α2

α3

α4

db

i

),(),,( 1221 ttdbittJdemand

Background Problem Setting Solution Future Work

Example: Periodic Demand-Curve Interface

10

dbi can be generated from dbf Consider τ contains 3 tasks:

τ1(1,3,3)

τ2(2,5,5)

τ3(2,8,8)

3

4

8

6 9 12 15 18 21 24 27

12

16

20

24

28

t

DB

F

Cumulative Demand Bound Function, DBF(τ,t)2d 22 2pd 22 pd 22 3pd

2e

22e

23e

24e

dbf(τ 2

,t)

t 3d 33 2pd 33 pd

3e

32e

33e

34e

dbf(τ 3

,t)

t

1d 11 pd 11 3pd

1e12e13e14e15e16e

11 5pd

dbf(τ 1

,t)

t

Background Problem Setting Solution Future Work

11

Exact admission control Approximate admission control

Admission Control

Background Problem Setting Solution Future Work

12

Admission Control Background Problem Setting Solution Future Work

t

dbi

Interval

demand

Demand-point: In the XY-plane, a demand-point P(x,y) is represented by any interval length (x) and demand (y) over that interval

P(x,y)

13

Step 1Store demand-points corresponding to admitted jobs in a list

Step 2Insert demand-point corre-sponding to new job

Exact Admission Control Background Problem Setting Solution Future Work

t

j1

A1d1

j2

A2 d2A3

j3

d3

E2

E1 + E2

E1

E3

E1 + E2 + E3

t

dbi

E2 + E3

Step 3Update existing demand-points w.r.t new interval

Step 4ACCEPT the job if no demand-point violates dbi

Infeasible for long running online

system!

Challenges No assumption on interface Store all demand-points with interval of all accepted job’s arrival and most recently accepted job’s deadline Complexity linear in number of accepted jobs

14

Approximate Admission Control

t

db

i

1

1+ϵ(1+ϵ)2

(1+ϵ)3

Step 1Approximation regions

Step 2Merge points within regionto get approximate points

Step 3Remove redundant points

Step 4Merge approximate points

Background Problem Setting Solution Future Work

15

Approximate Admission Control

t

db

i

1

1+ϵ(1+ϵ)2

(1+ϵ)3

Step 1Approximation regions

Step 2Merge points within regionto get approximate points

Step 3Remove redundant points

Step 4Merge approximate points

Background Problem Setting Solution Future Work

Polynomial complexity in number of bits

to represent max dbi and ϵ

16

Approximate Admission Control

Theorem [Correctness]Given a demand-curve interface Λ, ϵ, and set of previously-admitted jobs J, when new job jk arrives in the system, if APPROXIMATEAC returns “Accept”, then jk may be admitted without violating ΛTheorem [Approximation Ratio]Given a demand-curve interface Λ, ϵ, and set of previously-admitted jobs J, if APPROXIMATEAC returns “Reject” for a new job jk, then EXACTAC also returns “Reject” for a demand-curve (1/1+ϵ)dbi(Λ, ・ ) on the same previously-admitted job set

17

Reducing Demand Points for Periodic Demand-Curve Interface

DBI-WrapCheck

Background Problem Setting Solution Future Work

t

db

i

H 2H 4H3H

uH

2uH

3uH

𝙸 𝙸𝙸 𝙸𝚅 𝚅𝙸𝙸

𝙸𝙸𝙸 𝚅 𝚅𝙸𝙸𝙸

𝚅𝙸 𝙸𝚇

𝚇

2uH

4H

Observation 1 Any demand-point in the XY-plane with demand (y-value) greater 2u.H can be mapped to previous region

Observation 2 Any demand-point in the XY-plane with interval length (x-value) greater 4H can be discarded

18

Enforcing Temporal Isolation

Component-level temporal isolation Lightweight server to execute each admitted job The server will discontinue executing a job jk

when it has executed upto its Ek Enforce temporal isolation in component level

Reclaim unused execution Keep a buffer of active jobs Instead of updating the demand-points in the list

at the time of job arrival, update after a job has finished execution

Background Problem Setting Solution Future Work

19

Simulation: Exact Vs Approximate

Demand-curve interface (periodic dbi): 8 periodic tasks with randomly generated parameters are used

to generate periodic dbi Workload:

For MAD jobs, inter-arrival time, deadline and execution time are generated from uniform distribution

Approximation parameter: ϵ = 0.01, 0.1, 0.2 Simulation process:

A 2.33 GHz Intel Core 2 Duo E6550 machine with 2.0GB RAM is used

The simulation runs until Ai ≥ 4H

Metrics: Execution time trace Number of accepted jobs

Background Problem Setting Solution Future Work

20

Simulation: Exact Vs ApproximateExecution Time Trace

Background Problem Setting Solution Future Work

Observation Approximate algorithm significantly reduces runtime as it does not depend on number of jobs in the system After 0.9s, exact algorithm takes 19ms, approximate algorithm (ϵ=0.01) takes 0.5ms

21

Simulation: Exact Vs ApproximateAccepted Jobs Vs Execution Time

Background Problem Setting Solution Future Work

Observation Number of accepted jobs for ϵ=0.01 is very close to the number of accepted jobs by the exact algorithm

22

Admission Control for Arbitrary Jobs

A simple extension to arbitrary aperiodic jobs is given in [Dewan and Fisher, WSU-CS-TR 2012]

Keep a buffer to store active jobs Insert demand-point corresponding to the

newly admitted job in the list in absolute deadline order

Other operations are modified accordingly Currently working on improving

space/time complexity

Background Problem Setting Solution Future Work

23

Summary

Focused on: Enforcing demand-curve interfaces for compositional real-time systems

Developed: Exact and approximate AC for arbitrary demand-interface

Proved: Given an accuracy parameter ϵ, the approximate AC runs in polynomial in terms of the dbi representation and ϵ

Verified: Simulation results show significant improvement of performance of the approximate AC with respect to the exact AC

Background Problem Setting Solution Future Work

24

Future Work

Uniprocessor: Admission control for arbitrary demand-curve

interface with arbitrary job arrival Reduce space/time complexity

Implementation of admission controller in operating system Verify practicality of admission controller

Multiprocessor: Enforcing demand-curve interface for

multiprocessor

Background Problem Setting Solution Future Work

THANK YOU!25

[email protected]

26

Resetting Admission Controller Not possible to reset at arbitrary subsystem

idle point Requires global system knowledge Example

S with interface dbi(Λ,t)=0.9t j1 = (0,0.9,1), j2 = (0.91,0.9,1) If j1 is contiguously executed at its release time by

the processor, S will be idle at time 0.9 If S is reset at 0.9, j2 will be admitted at time 0.91 However, j1+ j2 together violates S (1.91x0.9 =

1.719<0.9+0.9=1.8)

Background Problem Setting Solution Future Work

27

Simulation: Exact Vs Approximate

Demand-curve interface (periodic dbi): 8 periodic tasks with total utilization = 0.5 Periods in the range [5,40] Task utilizations using UUniFast [Bini and Buttazzo,

ECRTS’2004] Hyperperiod H = 197505

Workload: Uniform distribution is used to generate random parameters Inter-arrival time in the range [0,20] Relative-deadline in the range [0,50] Execution-time in the range [0, Di]

Approximation parameter: ϵ = 0.01, 0.1, 0.2

Background Problem Setting Solution Future Work

p 7 15 9 19 21 27 35 11

e 0.1 1.1 0.18

0.4 0.22

5.2 4 1.7