Upload
mavis-holmes
View
216
Download
0
Tags:
Embed Size (px)
Citation preview
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
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