Top Banner
Software Dynamics: New Method of Evaluating Real-Tim Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University Ft. Myers, FL 33965-6565 http://www.fgcu.edu/zalewski/ FALSE2002, Nashville, Nov. 14- 15, 2002
52

Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

Jan 02, 2016

Download

Documents

Kerry Goodman
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

Software Dynamics:A New Method of Evaluating Real-Time

Performance of Distributed Systems

Janusz Zalewski Computer Science

Florida Gulf Coast University

Ft. Myers, FL 33965-6565

http://www.fgcu.edu/zalewski/

FALSE2002, Nashville, Nov. 14-15, 2002

Page 2: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

Talk Outline• RT Software Architecture

• Evaluating S/W Architectures

• Timeliness & S/W Dynamics

• Conclusion

FALSE2002, Nashville, Nov. 14-15, 2002

Page 3: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

Feedback Control System

FALSE2002, Nashville, Nov. 14-15, 2002

Page 4: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

Generic Real-Time

Software Architecture

FALSE2002, Nashville, Nov. 14-15, 2002

Page 5: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

• Sensor/Actuator component

• User Interface component• Communication Link component• Database component• Processing component• Timing component.

Basic Components of Real-TimeBasic Components of Real-TimeSoftware ArchitectureSoftware Architecture

FALSE2002, Nashville, Nov. 14-15, 2002

Page 6: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

Air-Traffic Control System

Physical Diagram

FALSE2002, Nashville, Nov. 14-15, 2002

Page 7: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

Air-Traffic Control System

Context Diagram

FALSE2002, Nashville, Nov. 14-15, 2002

Page 8: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

The idea of grouping I/O information into different categories, which later determine the software architecture follows the fundamental software engineering principle of separation of concerns (Parnas, 1970s).

FALSE2002, Nashville, Nov. 14-15, 2002

Page 9: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

Model of a Distributed

Embedded Simulation

FALSE2002, Nashville, Nov. 14-15, 2002

Page 10: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

We are missing good (any) measures to characterize Behavioral Properties of a software module (its dynamics).

FALSE2002, Nashville, Nov. 14-15, 2002

Page 11: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

Interrupt Latency

The time interval between the occurrence of an external event and start of the first instruction of the interrupt service routine.

FALSE2002, Nashville, Nov. 14-15, 2002

Page 12: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

• H/W logic processing

• Interrupt disable time

• Handling higher H/W priorities

• Switching to handler code.

Interrupt Latency Involves

FALSE2002, Nashville, Nov. 14-15, 2002

Page 13: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

Real-Time System

Responsiveness

FALSE2002, Nashville, Nov. 14-15, 2002

Page 14: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

Dispatch Latency

The time interval between the end of the interrupt handler code and the first instruction of the process activated (made runnable) by this interrupt.

FALSE2002, Nashville, Nov. 14-15, 2002

Page 15: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

Dispatch Latency Involves• OS decision time to reschedule (non-preemptive kernel state)

• context switch time

• return from OS call.

FALSE2002, Nashville, Nov. 14-15, 2002

Page 16: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

Real-Time Properties

* Responsiveness

* Timeliness

* Schedulability

* Predictability

FALSE2002, Nashville, Nov. 14-15, 2002

Page 17: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

How to measure these properties?* Responsiveness - just outlined* Timeliness - proposed below* Schedulability - rate monotonic and deadline monotonic analyses.

FALSE2002, Nashville, Nov. 14-15, 2002

Page 18: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

Two measures of timeliness:* Overall time deadlines are missed (by a task)* Number of times deadlines are missed by X percent

FALSE2002, Nashville, Nov. 14-15, 2002

Page 19: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

5-task Benchmark

FALSE2002, Nashville, Nov. 14-15, 2002

Page 20: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

Overall time the deadlines are missed for 100 experiments.

FALSE2002, Nashville, Nov. 14-15, 2002

Page 21: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

The number of times the deadlines are missed by 2%.

Page 22: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

Overall time the deadlines are missed for 100 experiments (CORBA).

FALSE2002, Nashville, Nov. 14-15, 2002

Page 23: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

The number of times the deadlines are missed by 2% (CORBA).

FALSE2002, Nashville, Nov. 14-15, 2002

Page 24: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

ATCS: Software Components

Communicating via CORBA

FALSE2002, Nashville, Nov. 14-15, 2002

Page 25: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

Overall time (in milliseconds) deadlines are missed for 20 aircraft (in 100 experiments).

FALSE2002, Nashville, Nov. 14-15, 2002

Page 26: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

Number of times deadlines are missed by more than 20% for 20 aircraft (in 100 experiments).

FALSE2002, Nashville, Nov. 14-15, 2002

Page 27: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

FALSE2002, Nashville, Nov. 14-15, 2002

Page 28: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

FALSE2002, Nashville, Nov. 14-15, 2002

Page 29: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

FSI TLM Dish MicrodyneCombiner

3200

MicrodyneRx'er 1200

Internet Gateway

WorkstationWorkstation

DB Server

MUX/DEMUX

Workstation

SGI Origin 2000

Workstation Workstation

FutureExpansion

IEEE 1394 Splitter

Bit Sync

VME Bus

Analog I/O(AIO) Subsystem

Frontend(FEP) Subsystem

Realtime Processing(RTP) Subsystem

Satellite Ground Control Station

FALSE2002, Nashville, Nov. 14-15, 2002

Page 30: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

SGCS Implementation

FALSE2002, Nashville, Nov. 14-15, 2002

Page 31: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

SGCS Physical Architecture

FALSE2002, Nashville, Nov. 14-15, 2002

Page 32: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

FALSE2002, Nashville, Nov. 14-15, 2002

Page 33: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

One DB Client - 100 requests

0

100

200

300

400

500

600

700

800

0 20 40 60 80 100

Request Number

Tim

e t

o p

roc

es

s r

eq

ue

st

(ms

ec

)

Single DB Client Request Processing Time.

FALSE2002, Nashville, Nov. 14-15, 2002

Page 34: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

% Deadlines Missed (one DB Client)

0

20

40

60

80

100

120

0 100 200 300 400 500 600 700 800 900

Deadline set (msec)

% D

ead

lin

es m

isse

d

Percent of deadlines missed for one DB Client.

FALSE2002, Nashville, Nov. 14-15, 2002

Page 35: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

5 DB Clients - 100 requests

600

800

1000

1200

1400

1600

1800

2000

0 20 40 60 80 100

Request Number

Tim

e to

pro

cess

req

ues

t (m

sec)

Client #1

Client #2

Client #3

Client #4

Client #5

Five DB Clients Request Processing Time.

FALSE2002, Nashville, Nov. 14-15, 2002

Page 36: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

% Deadlines Missed (5 DB Clients)

0

20

40

60

80

100

120

700 900 1100 1300 1500 1700 1900

Deadline set (msec)

% D

ead

lin

es M

isse

d

Client #1

Client #2

Client #3

Client #4

Client #5

Percent of deadlines missed for five DB Clients.

FALSE2002, Nashville, Nov. 14-15, 2002

Page 37: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

Sensitivity:a measure of the magnitude of system’s response to changes.

FALSE2002, Nashville, Nov. 14-15, 2002

Page 38: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

Sensitivity: (y1 – y0)/[(y1 + y0)/2] (x1 – x0)/[(x1 + x0)/2]

FALSE2002, Nashville, Nov. 14-15, 2002

Page 39: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

Sensitivity (Database)

0

20

40

60

80

100

120

0 100 200 300 400 500 600 700 800 900

Deadline set (msec)

% D

ead

lin

es m

isse

dSensitivity = 1.73

FALSE2002, Nashville, Nov. 14-15, 2002

Page 40: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

Sensitivity (Telemetry)

0

20

40

60

80

100

120

0 50 100 150 200 250 300 350 400 450

Deadline Set (msec)

% D

ead

lin

es M

isse

dSensitivity = 1.00

FALSE2002, Nashville, Nov. 14-15, 2002

Page 41: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

Sensitivity (GPS)

0

20

40

60

80

100

120

0 20 40 60 80 100

Deadline Set (msec)

% D

ead

lines

Mis

sed

Sensitivity = 1.64

FALSE2002, Nashville, Nov. 14-15, 2002

Page 42: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

First Order Dynamics

G(s) = K / (*s + 1)

FALSE2002, Nashville, Nov. 14-15, 2002

Page 43: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

Time constant - :a measure of the speed of system’s response to changes.

FALSE2002, Nashville, Nov. 14-15, 2002

Page 44: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

• Settling Time:

time when curve reaches 2% max

• Time Constant = 0.25 * Settling Time

FALSE2002, Nashville, Nov. 14-15, 2002

Page 45: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

% Deadlines Missed (Database)

0

20

40

60

80

100

120

0 200 400 600 800 1000

Deadline Set (msec)

% D

ead

lin

es M

isse

d

Time Constant

Original

= 165 ms

FALSE2002, Nashville, Nov. 14-15, 2002

Page 46: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

% Deadlines Missed (TDA)

0

20

40

60

80

100

120

0 100 200 300 400 500

Deadline Set (msec)

% D

ead

lin

es M

isse

d

Time Constant

Original

= 87.5 ms

FALSE2002, Nashville, Nov. 14-15, 2002

Page 47: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

% Deadlines Missed (GPS)

0

20

40

60

80

100

120

0 20 40 60 80 100

Deadline set (msec)

% D

ea

dlin

es

Mis

se

d

Time Constant

Original

= 15 ms

FALSE2002, Nashville, Nov. 14-15, 2002

Page 48: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

Applet Interface

IGVxWorks I

ITSVxWorks II

SMCSES/workbench

CGFObjecTime

Distributed Embedded Simulation Architecture

FALSE2002, Nashville, Nov. 14-15, 2002

Page 49: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

Statistical measures of timeliness: * Round-trip time stability * Service time effect

FALSE2002, Nashville, Nov. 14-15, 2002

Page 50: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

0100020003000400050006000700080009000

10000

0.01 0.1 1 10

Mean Service Time

Qu

eue

Len

gth

Queue Length for NonPeriodic Traffic with Inter-Arrival Time = 0.1

Queue Length for NonPeriodic Traffic with Inter-Arrival Time = 1.75

Queue Length for PeriodicTraffic Only

Service time effect for a specific architecture

FALSE2002, Nashville, Nov. 14-15, 2002

Page 51: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

0

0.5

1

1.5

2

2.5

3

0 500 1000 1500 2000 2500 3000

Time Units to run simulation

Tim

e U

nit

s

Sending to SES fromVxWorks 1

Sending to SES fromVxWorks 2

Sending to ObjecTime fromSES

Round-trip message time for 5-task simulation

FALSE2002, Nashville, Nov. 14-15, 2002

Page 52: Software Dynamics: A New Method of Evaluating Real-Time Performance of Distributed Systems Janusz Zalewski Computer Science Florida Gulf Coast University.

Conclusion• Behavioral Properties are crucial for successful software development

• Sensitivity is one important property

• Software Dynamics seems to be a measurable property as well

FALSE2002, Nashville, Nov. 14-15, 2002