on the joint utility accrual model ‡ the mitre corporation bedford, ma 01730, usa e-mail:...

16
On the Joint Utility Accrual Model The MITRE Corporation Bedford, MA 01730, USA E-mail: [email protected] Haisang Wu , Binoy Ravindran , and E. Douglas Jensen Real-Time Systems Laboratory ECE Dept., Virginia Tech Blacksburg, VA, USA E-mail: {hswu02, binoy}@vt.edu April 26, 2004, Santa Fe, NM

Upload: dominick-wiggins

Post on 13-Jan-2016

221 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: On the Joint Utility Accrual Model ‡ The MITRE Corporation Bedford, MA 01730, USA E-mail: jensen@mitre.org jensen@mitre.org Haisang Wu †, Binoy Ravindran

On the Joint Utility Accrual Model

‡The MITRE Corporation

Bedford, MA 01730, USA

E-mail: [email protected]

Haisang Wu†, Binoy Ravindran†, and E. Douglas Jensen‡

†Real-Time Systems Laboratory

ECE Dept., Virginia Tech

Blacksburg, VA, USA

E-mail: {hswu02, binoy}@vt.edu

April 26, 2004, Santa Fe, NM

Page 2: On the Joint Utility Accrual Model ‡ The MITRE Corporation Bedford, MA 01730, USA E-mail: jensen@mitre.org jensen@mitre.org Haisang Wu †, Binoy Ravindran

11/04/2001 2

Research Objective: extend TUFs with JUFs, and maximize system utilities

Multi-dimensional QoS

The Joint Utility Functions Other timing constraints and

optimality

The CUA algorithm Experimental results

Conclusions, future work

Background andIntroduction

Motivations and Models

The Algorithm andEvaluation

Page 3: On the Joint Utility Accrual Model ‡ The MITRE Corporation Bedford, MA 01730, USA E-mail: jensen@mitre.org jensen@mitre.org Haisang Wu †, Binoy Ravindran

11/04/2001 3

QoS of next-generation dynamic RT systems is often multi-dimensional

QoS often depends on When the service is performed The accuracy of the computational results When other services are completed and the accuracy

of the services’ computational results Service requests often cause resource

contentions Mission-oriented, and dynamic and adaptive resolution polices

Page 4: On the Joint Utility Accrual Model ‡ The MITRE Corporation Bedford, MA 01730, USA E-mail: jensen@mitre.org jensen@mitre.org Haisang Wu †, Binoy Ravindran

11/04/2001 4

Jensen’s time/utility functions specify soft time constraints

A TUF specifies the utility resulting from the completion of an activity as a function of its completion time, i.e., Uc

Examples AWACS Tracker Coastal Air Defense

Utility Accrual (UA) scheduling typically seeks to schedule activities according to optimality criteria based on accruing utility

action completion time

(MITRE/TOG AWACS Tracker)

U1

U2

U3

Utility

tc

action completion time

Utility

MaintainLaunch

Mid-course InterceptCorrelate

TUFs of GD/CMU Coastal Air

Defense

Page 5: On the Joint Utility Accrual Model ‡ The MITRE Corporation Bedford, MA 01730, USA E-mail: jensen@mitre.org jensen@mitre.org Haisang Wu †, Binoy Ravindran

11/04/2001 5

Joint utility describes utility depending

on Uc and progress of other activities

The sensor platform of an air target engagement system

Tracker activities: track hostile targets and launched interceptors

Guidance activity: monitors interceptors and provide course updates to it

Source: DARPA

Page 6: On the Joint Utility Accrual Model ‡ The MITRE Corporation Bedford, MA 01730, USA E-mail: jensen@mitre.org jensen@mitre.org Haisang Wu †, Binoy Ravindran

11/04/2001 6

Joint utility describes utility depending

on Uc and progress of other activities

Tracker activities Produce location estimates used by

guidance for course update The accuracy of location estimates

is a function of their execution times

Guidance activity Utility is a function of when course

updates are provided Low utility from tracker activities’

Highly accurate, but late location estimates Low accuracy, but early location estimates

Page 7: On the Joint Utility Accrual Model ‡ The MITRE Corporation Bedford, MA 01730, USA E-mail: jensen@mitre.org jensen@mitre.org Haisang Wu †, Binoy Ravindran

11/04/2001 7

Definition of PUFs and JUFs

Progressive utility functions (or PUFs)

x-axis: the thread's cumulative execution time,

y-axis: progressive utility ej: changing points

Joint utility of an activity A function (JUF) of the Uc and

Up of a set of activities, excluding those of itself

Example shows guidance G’s joint utility w.r.t. two tracker activities T1 and T2

( )pjU e

thread execution timee1e0 em-1 em

u1

-ve

u2 u3

jGU

2

1

T c pc i p ii TU U

Page 8: On the Joint Utility Accrual Model ‡ The MITRE Corporation Bedford, MA 01730, USA E-mail: jensen@mitre.org jensen@mitre.org Haisang Wu †, Binoy Ravindran

11/04/2001 8

Two methods describe precedence dependency between T1/T2 and G

A TUFs-Only Scale up G’s TUF if T1 and/or T2 execute too late The scheduler may spend more cycles on G to compensate TUF of G not available to the scheduler until T1 and T2 complete

their preceding repetitions

B TUFs with JUFs Joint dependency characterized using JUF JUF embodies time dimension---when to start producer TUF/JUF of G available before T complete each repetition

Will B increase the likelihood for G to complete at acceptable times, increasing the chances for successful interception?

Page 9: On the Joint Utility Accrual Model ‡ The MITRE Corporation Bedford, MA 01730, USA E-mail: jensen@mitre.org jensen@mitre.org Haisang Wu †, Binoy Ravindran

11/04/2001 9

Task Model and Time Constraints Model

R1Schedulingsegment 1

Schedulingsegment 2

R2

R5R3

Time constraints of a thread TUF (arbitrary shape) PUF (non-deceasing) JUF (non-deceasing, if possible)

Associated with scopes, called “scheduling segments”

Scheduling segments can be disjoined or nested

Ii Xi

ciU

Page 10: On the Joint Utility Accrual Model ‡ The MITRE Corporation Bedford, MA 01730, USA E-mail: jensen@mitre.org jensen@mitre.org Haisang Wu †, Binoy Ravindran

11/04/2001 10

Resource Model and Optimization Criterion

A thread can request access to shared resources

Single-unit resource model

Resources can be shared and can be subject to mutual exclusion constraints.

Objective: maximize the weighted sum of Uc , Up , and Uj.

Scheduling dependent threads with step-shaped TUFs is NP-hard (Clark’s Ph.D. Dissertation)

Problem subsumes this

Page 11: On the Joint Utility Accrual Model ‡ The MITRE Corporation Bedford, MA 01730, USA E-mail: jensen@mitre.org jensen@mitre.org Haisang Wu †, Binoy Ravindran

11/04/2001 11

Key Heuristics of CUA: Combined Utility Density (CUD)

Return on investment of executing a thread CUD measures the utility that can be accrued per unit time by

executing the thread and the thread(s) that it depends upon : the minimal value yielding the highest .T ExecTime

R1

R2

T1 T2

T3T1 T2 T3

Resource graphDependency chain

.

.

[ ( ) ( ) ].

j

c jT T Dep

c p jc T

c

t T ExecTime

U t t U ExecTime UT CUD

t

( )pTU ExecTime

Page 12: On the Joint Utility Accrual Model ‡ The MITRE Corporation Bedford, MA 01730, USA E-mail: jensen@mitre.org jensen@mitre.org Haisang Wu †, Binoy Ravindran

11/04/2001 12

High Level Description of CUA

WHILE (task ready queue is not empty) Calculate CUD for each task at the current position APPEND the highest CUD task Tk and its dependent tasks into

the tentative schedule APPEND: optimize the tentative schedule

From Tk ’s farthest predecessor to Tk itself

Reduce the ExecTime of Tk and its dependents One time unit reduction each time Until no increase in the total utility

t

Uto

tal

Uto

tal

A B

ExeTA = 6, ExeTB = 5

ExeTA = 4, ExeTB = 5

PUFA PUFB

Page 13: On the Joint Utility Accrual Model ‡ The MITRE Corporation Bedford, MA 01730, USA E-mail: jensen@mitre.org jensen@mitre.org Haisang Wu †, Binoy Ravindran

11/04/2001 13

Implementation Platform: Meta Scheduler on top of COTS RTOSes

Scheduling algorithm can be plugged into the framework without modifying the OS kernel

Only requires four distinct priorities that can be satisfied by all POSIX RTOS

Reasonably low overhead and small footprint

“A Formally Verified Application-Level Framework for Utility Accrual Real-Time Scheduling On POSIX Real-Time Operating Systems”, P. Li et al., TSE (2004, 2nd revision)

Experiments conducted on a Pentium platform (with a CPU of 450 MHz) running QNX Neutrino 6.2 RTOS

Meta Scheduler

POSIX OS

thread code RTSL

app. prog.app. prog.

link

thread code RTSL

app. prog.app. prog.

link

Page 14: On the Joint Utility Accrual Model ‡ The MITRE Corporation Bedford, MA 01730, USA E-mail: jensen@mitre.org jensen@mitre.org Haisang Wu †, Binoy Ravindran

11/04/2001 14

Experimental studies verify the effectiveness of JUF model

40

50

60

70

80

90

100

0.2 0.4 0.6 0.9 1.2 1.5Average Load

AU

R o

f T1,

T2

and

G (

%)

JUFs and TUFs

TUFs only

40

50

60

70

80

90

100

0.2 0.4 0.6 0.9 1.2 1.5Average Load

XM

R o

f T1,

T2

and

G (

%)

JUFs and TUFs

TUFs only

XMR = # satisfied term. times

# total_triggersX100%

AUR = Accrued utility

Total utility of triggersX100%

Page 15: On the Joint Utility Accrual Model ‡ The MITRE Corporation Bedford, MA 01730, USA E-mail: jensen@mitre.org jensen@mitre.org Haisang Wu †, Binoy Ravindran

11/04/2001 15

Experimental studies confirm CUA’s effectiveness of utility accrual

0

20

40

60

80

100

0.2 0.4 0.6 0.9 1.2 1.5Average Load

AUR %

CUA

LBESA

UPA

Dover

FP

EDF

0

20

40

60

80

100

0.2 0.4 0.6 0.9 1.2 1.5Average Load

XMR %CUA

LBESA

UPA

Dover

FP

EDF

Step TUFs, no PUFs and JUFsFP: the higher utility, the higher priority

DASA, GUS and CUA perform close; they out-perform others during overloads. EDF suffers domino effect during overloads.

Page 16: On the Joint Utility Accrual Model ‡ The MITRE Corporation Bedford, MA 01730, USA E-mail: jensen@mitre.org jensen@mitre.org Haisang Wu †, Binoy Ravindran

11/04/2001 16

The major contribution is the notion of JUFs, and the CUA Algorithm

Notion of JUFs

The CUA algorithm

Schedules the joint-dependent threads early

Increases their aggregate completion time utility

Future work

Consider multi-unit resource models

Consider energy constraints

Consider stochastic UA criteria