Performance Analysis of Reo Circuits Chrtien Verhoef Center for - - PowerPoint PPT Presentation

performance analysis of reo circuits
SMART_READER_LITE
LIVE PREVIEW

Performance Analysis of Reo Circuits Chrtien Verhoef Center for - - PowerPoint PPT Presentation

Performance Analysis of Reo Circuits Chrtien Verhoef Center for Mathematics and Computer Science (CWI) CIC 2007 Research Workshop on Coinduction, Interaction and Composition Amsterdam 2007-10-23 Overview Introduction / motivation


slide-1
SLIDE 1

Performance Analysis of Reo Circuits

Chrétien Verhoef

Center for Mathematics and Computer Science (CWI)

CIC 2007

Research Workshop on Coinduction, Interaction and Composition

Amsterdam 2007-10-23

slide-2
SLIDE 2

Performance Analysis of Reo Circuits 2

  • Introduction / motivation
  • Continuous Time Markov Chains
  • Reo Coordination Language
  • Quantitative Reo
  • Performance Analysis of Reo Circuits
  • Performance Analysis Example
  • Future Research / To Do

Overview

slide-3
SLIDE 3

Performance Analysis of Reo Circuits 3

  • Quantify performance of complex coordination systems
  • Communication networks, Web based services, etc.
  • Typical questions:
  • Recognize bottlenecks?
  • Expected delay of the network?
  • Expected throughput?
  • Availability, blocking?
  • Take into account:
  • Complex stochastic behaviour
  • Component dependencies of such systems
  • Quantitative behaviour environment

Introduction

slide-4
SLIDE 4

Performance Analysis of Reo Circuits 4

  • Introduction / motivation
  • Continuous Time Markov Chains
  • Reo Coordination Language
  • Quantitative Reo
  • Performance Analysis of Reo Circuits
  • Performance Analysis Example
  • Future Research / To Do

Overview

slide-5
SLIDE 5

Performance Analysis of Reo Circuits 5

Continuous Time Markov Chains

  • Model coordination system as CTMC, then
  • Quantify performance by using CTMC
  • Markov Chain:

– System can be in one of several states: state space – Transitions from one state to another

1 2 3 4

slide-6
SLIDE 6

Performance Analysis of Reo Circuits 6

Continuous Time Markov Chains

  • CTMC more concrete: Stochastic process { X(t) : t ≥ 0 }
  • Process satisfies:
  • Markov property
  • X(t) S (finite state-space)
  • Continuous: process defined for every time unit t ≥ 0
  • Markov property: Only present state needed to determine

transitions to next states  transitions with certain exponential transition rates (average # transitions per time unit)

1 2 3 4 1.1 0.5 0.25 0.25 0.75 0.25 0.1

slide-7
SLIDE 7

Performance Analysis of Reo Circuits 7

Continuous Time Markov Chains

  • Use CTMC to model complex coordination systems, and

quantify performance

  • Interested in long run behaviour CTMC
  • Calculate steady-state probability vector:

Probability CTMC is in a certain state at a random moment

  • From steady-state probability vector 

Calculate expected blocking probability, throughput, delay.

slide-8
SLIDE 8

Performance Analysis of Reo Circuits 8

Continuous Time Markov Chains

  • If we use CTMC to model system: find and define

appropriate state description:

– Finite state-space – Satisfies Markov property

Problems:

  • Construction appropriate CTMC is complex
  • Often leads to state-space explosion
  • Idea:

– Use Reo Coordination Language to model complex coordination systems – “Translate” Reo  CTMC – CTMC Performance Evaluation

slide-9
SLIDE 9

Performance Analysis of Reo Circuits 9

Use the advantages of Reo:

  • State-space reduction: strong synchronizing properties Reo
  • Atomic state transitions
  • Compositionally building
  • f models :

Car Rental System

Holiday Reservation Service Front End

Flight Reservation System Hotel Reservation System

slide-10
SLIDE 10

Performance Analysis of Reo Circuits 10

  • Introduction / motivation
  • Continuous Time Markov Chains
  • Reo Coordination Language
  • Quantitative Reo
  • Performance Analysis of Reo Circuits
  • Performance Analysis Example
  • Future Research / To Do

Overview

slide-11
SLIDE 11

Performance Analysis of Reo Circuits 11

  • Powerful means to model complex coordination systems
  • Channel based coordination model, with synchronising / a-

synchronising properties

  • Compositional construction of models using architecturally

meaningful primitives  Complex coordinators (connectors) compositionally build out of simpler ones

  • Arbitrary set of simple connector types available, with well-

defined behaviour

  • Loose coupling of components
  • Supports heterogeneous components
  • Strong formal semantics

Reo Coordination Language

slide-12
SLIDE 12

Performance Analysis of Reo Circuits 12

  • Reo components connected through connectors (composition
  • f simpler connectors)
  • Most primitive connector is a channel (well defined behaviour):

Reo Coordination Language

FIFO1

Synchronous Channel A B LossySync Channel A B A B A B FIFO Channel SyncDrain Channel Etc.

slide-13
SLIDE 13

Performance Analysis of Reo Circuits 13

Reo Nodes:

  • Logical construct representing topological properties of a

set of channels

  • Regulates flow of data among channel ends

Reo Coordination Language

Sink Node Source Node Mixed Node Arrival take actions (data dispersion)) Arrival write actions (data acceptance) Arrival write/take actions

slide-14
SLIDE 14

Performance Analysis of Reo Circuits 14

Reo Coordination Language

  • Compositional building of models using architecturally

meaningful primitives

slide-15
SLIDE 15

Performance Analysis of Reo Circuits 15

  • Introduction / motivation
  • Continuous Time Markov Chains
  • Reo Coordination Language
  • Quantitative Reo
  • Performance Analysis of Reo Circuits
  • Performance Analysis Example
  • Future Research / To Do

Overview

slide-16
SLIDE 16

Performance Analysis of Reo Circuits 16

  • No quantitative stochastic behaviour in Reo circuits
  • Ad performance properties to functional primitives:
  • Channels with delays
  • Ports with interarrival times between arriving read and write

actions

Quantitative Reo

slide-17
SLIDE 17

Performance Analysis of Reo Circuits 17

  • Time it takes for a channel to synchronise with corresponding

nodes

Quantitative Reo: Channel Delays

FIFO1

Synchronous Channel A B LossySync Channel A B dABL dAB dAB dAF dFB A B A B FIFO Channel SyncDrain Channel dAB1 dAB2

slide-18
SLIDE 18

Performance Analysis of Reo Circuits 18

Ports: source and sink nodes whereby circuit interacts with surrounding Assumptions:

  • Interarrival times of arriving read and write actions at ports can

be specified

  • Actions stay pending at ports until accepted
  • At most one action can wait for acceptance at each port

Quantitative Reo: Ports

  • Blocking
  • Denial write actions
slide-19
SLIDE 19

Performance Analysis of Reo Circuits 19

  • Introduction / motivation
  • Continuous Time Markov Chains
  • Reo Coordination Language
  • Quantitative Reo
  • Performance Analysis of Reo Circuits
  • Performance Analysis Example
  • Future Research / To Do

Overview

slide-20
SLIDE 20

Performance Analysis of Reo Circuits 20

A. Construct quantitative Reo model B. Use a special quantitative operational semantics for Reo language: Quantitative Intentional Automata (QIA) C. Translate into CTMC:

  • CTMC State-space: all possible states of the Reo circuit

Take into account:

  • State of ports
  • State of individual connectors (delay, buffers)
  • Channel delays: independent exponentially distributed
  • Interarrival times of arriving read and write actions at ports:

independent exponentially distributed

Performance Analysis of Reo Circuits

slide-21
SLIDE 21

Performance Analysis of Reo Circuits 21

D: Given steady-state distribution vector of CTMC:

  • Insight in essential states, sensitivity analysis
  • Approximate, e.g.:
  • Expected Blocking probabilities
  • Expected Delay: delay (sojourn time) after arrival at an

arrival accepting port until arrival leaves the system

  • Expected Throughput: expected number of write

requests on a certain port a circuit is able to handle per time unit

Performance Analysis of Reo Circuits

slide-22
SLIDE 22

Performance Analysis of Reo Circuits 22

2: Reo Modeling 3: QIA Translation 4: Combine QIAs 5: Generate MC 6: Analyze MC 1: Decompose system

Overview: Performance Analysis of Reo Circuits

slide-23
SLIDE 23

Performance Analysis of Reo Circuits 23

  • Introduction / motivation
  • Continuous Time Markov Chains
  • Reo Coordination Language
  • Quantitative Reo
  • Performance Analysis of Reo Circuits
  • Performance Analysis Example
  • Future Research / To Do

Overview

slide-24
SLIDE 24

Performance Analysis of Reo Circuits 24

  • Alternator:
  • Input ports: A, B
  • Output port: C
  • Delivers through port C, alternating what is available through A,B
  • Reo Model:
  • Data only accepted to flow from A into buffer:

buffer empty, write pending at port B, read pending at port C

Performance Analysis Example

1 A B C DAC1 DAC2 DBC DAB

slide-25
SLIDE 25

Performance Analysis of Reo Circuits 25

  • Construct CTMC with:
  • Exponential connector delays: DAC1, DAC2, DAB, DBC
  • Exponential write action arrival rate at ports A, B
  • Exponential read action arrival rate at port C

Performance Analysis Example

1 A B C DAC1 DAC2 DBC DAB

slide-26
SLIDE 26

Performance Analysis of Reo Circuits 26

  • Two examples:
  • Sensitivity analysis port A  vary mean arrival rate

(=1/inter arrival time)

  • Sensitivity analysis delay BC vary mean delay
  • What will happen with: delays, blocking probabilities, steady-state

distribution, throughput?

Performance Analysis Example

slide-27
SLIDE 27

Performance Analysis of Reo Circuits 27

Sensitivity analysis port A: vary mean arrival rate (=1/inter arrival time)

Performance Analysis Example

1 A B C DAC1 DAC2 DBC DAB

slide-28
SLIDE 28

Performance Analysis of Reo Circuits 28

Performance Analysis Example: Port A

0.0 0.5 1.0 1.5 2.0 2.5 10 20 30 40

Arrival Rate Port A A B C FIFO Delay TP

TP (write requests / time unit) Delay (time unit)

Blocking Probability

slide-29
SLIDE 29

Performance Analysis of Reo Circuits 29

Performance Analysis Example: Port A

Steady-state probabilities Stationary distribution

slide-30
SLIDE 30

Performance Analysis of Reo Circuits 30

Sensitivity analysis delay BC: vary mean delay

Performance Analysis Example

1 A B C DAC1 DAC2 DBC DAB

slide-31
SLIDE 31

Performance Analysis of Reo Circuits 31

Performance Analysis Example: Delay BC

Blocking Probability

Blocking Probability

TP (write requests / time unit) Delay (time unit) A = B

slide-32
SLIDE 32

Performance Analysis of Reo Circuits 32

Performance Analysis Example: Delay BC

Steady-state probabilities Stationary distribution

slide-33
SLIDE 33

Performance Analysis of Reo Circuits 33

  • Introduction / motivation
  • Continuous Time Markov Chains
  • Reo Coordination Language
  • Quantitative Reo
  • Performance Analysis of Reo Circuits
  • Performance Analysis Example
  • Future Research / To Do

Overview

slide-34
SLIDE 34

Performance Analysis of Reo Circuits 34

  • Finish “automated” Reo-CTMC algorithm (QIA, QIA to CTMC)

 Current status: next presentation Young-Joo Moon

  • Handle non-exponential distributed arrivals and delays?
  • Introduce Reo nodes with delay? Now only delay on channels
  • Calculate optimal policies for the behaviour of mixed nodes?

Instead of completely randomized mixed node behaviour

  • Recognize important states of Reo sub circuits and simplify

CTMC by making approximations for those subsystems?

Further Research / “To Do”:

slide-35
SLIDE 35

Performance Analysis of Reo Circuits

Chrétien Verhoef

Center for Mathematics and Computer Science (CWI)

CIC 2007

Research Workshop on Coinduction, Interaction and Composition

Amsterdam 2007-10-23