First Paper Review

advertisement
RT Reading Group Meeting
06/27/2002
Veljko Krunic
Agenda
Introduction
 Motivation of system
 System components

– Gryphon
– RT-PCIP and EPA
– DQM
Real-Time and OO
 Q&A

Introduction

Motivation for presenting this papers
– To understand integrated system
– To understand components on high level

Papers
– Are survey of all individual work
– Present “Big picture”
This presentation is continuation of Sam’s
presentation
 Discussion of OO in context of Real Time

Motivation

Multiperson distributed virtual environment
– Supports multiperson communication
– Plus domain specific tools

World consists of
– Objects
– Avatars

Form of telepresence
Motivation (Cont)

Presents challenges
–
–
–
–
–
–
–

Graphics rendering
Continues media
Distributed objects
Movement of large amount of data
Applications
Thread schedulability and resource management
Dynamic negotiations
Integrates all previous work of all team members
Gryphon

Distributed object manager
– Caching
– Cache coherence
– Works in cooperation with applications

Object types
–
–
–
–
Private-local
Shared-local
Shared-nonlocal
Global
Object Location
Constrained by access times
 Caching policy

– Refreshment frequency
– Bandwidth requirements
Known best by application
 Application negotiates

– Consistency update policy
– Object location
Gryphon and CORBA

CORBA
– Distributed object access & RPC
– Parameter marshalling
– ORB implements coordination

Gryphon compared to
– Centralized object manager
– ORB centralized CORBA
– ORB distributed CORBA

Gryphon provides significant improvements
RT-PCIP

Device-to-device pipeline architecture
– Standardized source and sink
– Filters could be inserted

EPA
– Dynamic priority computation in overloaded system

EPA is based on DM tests
– Uses expected time with probability distribution
– WCET is statistical problem here
Dynamic QoS Manager


Framework for QoS guarantees among processes
Process info are based on triples
– Execution level
– Resource
– Benefit

Plus
– Maximum benefit
– Maximum CPU usage
– Number of execution levels
Resource Allocation Policies

Distributed
– Missing deadline changes execution level of
that process

Fair
– Missing deadline reduces level of application
using most of CPU (even) or that has lowest
benefit/CPU ratio (proportional)
Resource Allocation Policies

Distributed
– Missing deadline changes execution level of
that process

Fair
– Missing deadline reduces level of
» Application using most of CPU (even)
» Application that has lowest benefit/CPU ratio
(proportional)
Resource Allocation Policies
(Cont)

Optimal
–
–
–
–

Maximize overall user benefit
Good for initial allocations
Causes a lot of fluctuation
Artificial parameter added to tame fluctuations
Hybrid
– Optimal for initial allocations
– Different algorithms from that point on
DQM Limitations

User space implementation
– Based on cooperation from applications
– Could not control rogue applications

What if application estimates are wrong
– Fluctuations and resonance

Requires dynamic refinement
– Based on weight factor
– What about more complicated models of load?
OO and Hard Real Time
Subject of personal interest
 Discussion of OO

– Design by contract
– Preconditions, postconditions and invariance
– Combination with Hard Real Time

Based on some discussions and article in
DDJ
Design by Contract
OO technique invented by Bertrand Meyer
 Eiffel
 Each method operates with guarantees

– Precondition – this must be guranteed before I
am called
– Postcondition – if preconditions are met, this is
my guarantee
– Invariance – object of this class always has this
Design by Contract (Cont)

Example: y = sqrt(x)
– Precondition x > 0
– Postcondition: x == y*y

Exception is thrown if precondition or
postcondition is violated
Design by Contract and RT






Based on the article in DDJ
Extend preconditions and postcondition on
timings
Automatic watchdog per thread
Could be done in C/C++
Similar work done by Adam
Limited timer resolution unless on scheduler level
– Testing paradigm, not RT concept
– Are there benefits in allowing thread to address
exception in its context?
Some Techniques for
Multiprogramming
Quick summary
 Presentation I made in the JD Edwards

Summary
High level system description
 Summary of individual works
 Some OO and distributed programming mix

Q&A
Download