Top Banner
Proceedings of the 29th Annual Hawaii International Conference on System Sciences - 1996 Integrating Behavioural and Performance Analysis with Topoplogy Information Corrado Priami Dipartimento di Informatica, UniversitA di Pisa Corso Italia, 40, I-56125 Pisa, Italy [email protected] Abstract We consider a-calculus, a model of concurrent processes based on the notion of naming, extended with probabilistic information. The new language is an evolution of CSP- like stochastic process algebra that we call stochastic x- calculus. Furthermore, we integrate the semantic descrip- tion of the language with topology information expressed through axioms. The new formalism is suitable to study behavioural and performance property of distributed sys- tems. In particular, we can compare different allocations of systems on a fuced network architecture with respect to expected performance. 1 Introduction The design and development of concurrent distributed systemsis a difficult task due to the large number of param- eters that designersmust take into account. Hence, the use of formal methods during all the life-cycle of thesesystems is becoming well-accepted. Particular interest is devoted to process algebras such as CCS Ml, CSP 1131,Meije [2]. Only few operators (sequential and parallel composi- tion, nondeterministic choice, scope restriction) constitute these languages. Their algebraic nature makes their un- derlying theory easy and appealing. This is a main rca- son of their success. The semantics of process algebras is usually given in SOS style [18]. Processesare com- pared according to some equivalences based on the notion of observabilty: they are equivalent if an external observer cannot distinguish between them. The nature of obser- vational equivalencesallows one to study only qualitative aspectsof systems or to check properties such as determi- nation of deadlocks. Hereafter, we refer to theseaspects as behavioural. The growing interest in mobile distributed systems(i.e., *Work partially supported by ESPRIT Basic Research Action n.8130 - LOMAPS and by PROGEl COORDINAM of CNR “Strumenti per la Specifica e la Vetifica di Proptieti Critiche di Sistemi Concorrenti e Distribuiti” systems whose interconnection network can vary dynami- cally or equivalently whose processes can migrate dynam- ically) leads to the definition of process algebras for their description. A typical example of these new formalisms is n-calculus [163. It is a language for the description of concurrent processes based on the notion of naming. What processes exchangein communications are names that can representeither values or channels. Instantiation of names may change the potential behaviour of the residual process. For instance,consider the process (m)(~z Im [ z(y).[y = %]P) where (VZ) means that the name z is private in its body and thus it may be used only as a private communication channel between the parallel components. Similarly to classical process algebras, zz @a) denotes the output of name z (a) along channel t. while z(y) is the input from channel z of a name that is assigned to the placeholder y and substituted for all free occurrences of y in the scope of the input ([y = ZIP). Finally, [y = z]P represents an if-then operator: the process P is activated only if y = z. Thus, the behaviour of the process above is influenced by the value assignedto y. Also quantitative information is relevant to develop a concurrent distributed system. Assume that we are im- plementing a distributed system for air-seats reservation. If the implementation meets all bchavioural requirements (i.e., it is equivalent to its specification), but a reservation takes hours, the system must be rejected. The analysis of quantitative information (hereafter, performance analy- sis) is often delayed until the system is completely imple- mented. However such a delay may causehigh extra-costs. To avoid waste of time and resources, performance analysis should be closely integrated in a design methodology with behavioural analysis [l 11. Stochastic process algebras [lo, 12,3,53 aim at main- taining the peculiar features of classical process algebras while extending them to deal with performance measures. Recently, a stochastic extension of ?r-calculus has been proposed as well [191. The language obtained is called stochastic r-calculus (hereafter ST). 1060-3425/96 $5.00 0 1996 IEEE 508 Proceedings of the 1996 Hawaii International Conference on System Sciences (HICSS-29) 1060-3425/96 $10.00 © 1996 IEEE
9

Integrating Behavioural and Performance Analysis with ... · PDF fileIntegrating Behavioural and Performance Analysis with Topoplogy Information ... like stochastic process algebra

Mar 12, 2018

Download

Documents

vucong
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: Integrating Behavioural and Performance Analysis with ... · PDF fileIntegrating Behavioural and Performance Analysis with Topoplogy Information ... like stochastic process algebra

Proceedings of the 29th Annual Hawaii International Conference on System Sciences - 1996

Integrating Behavioural and Performance Analysis with Topoplogy Information

Corrado Priami Dipartimento di Informatica, UniversitA di Pisa

Corso Italia, 40, I-56125 Pisa, Italy [email protected]

Abstract

We consider a-calculus, a model of concurrent processes based on the notion of naming, extended with probabilistic information. The new language is an evolution of CSP- like stochastic process algebra that we call stochastic x- calculus. Furthermore, we integrate the semantic descrip- tion of the language with topology information expressed through axioms. The new formalism is suitable to study behavioural and performance property of distributed sys- tems. In particular, we can compare different allocations of systems on a fuced network architecture with respect to expected performance.

1 Introduction

The design and development of concurrent distributed systems is a difficult task due to the large number of param- eters that designers must take into account. Hence, the use of formal methods during all the life-cycle of these systems is becoming well-accepted. Particular interest is devoted to process algebras such as CCS Ml, CSP 1131, Meije [2]. Only few operators (sequential and parallel composi- tion, nondeterministic choice, scope restriction) constitute these languages. Their algebraic nature makes their un- derlying theory easy and appealing. This is a main rca- son of their success. The semantics of process algebras is usually given in SOS style [18]. Processes are com- pared according to some equivalences based on the notion of observabilty: they are equivalent if an external observer cannot distinguish between them. The nature of obser- vational equivalences allows one to study only qualitative aspects of systems or to check properties such as determi- nation of deadlocks. Hereafter, we refer to these aspects as behavioural.

The growing interest in mobile distributed systems (i.e., *Work partially supported by ESPRIT Basic Research Action n.8130

- LOMAPS and by PROGEl COORDINAM of CNR “Strumenti per la Specifica e la Vetifica di Proptieti Critiche di Sistemi Concorrenti e Distribuiti”

systems whose interconnection network can vary dynami- cally or equivalently whose processes can migrate dynam- ically) leads to the definition of process algebras for their description. A typical example of these new formalisms is n-calculus [163. It is a language for the description of concurrent processes based on the notion of naming. What processes exchange in communications are names that can represent either values or channels. Instantiation of names may change the potential behaviour of the residual process. For instance, consider the process

(m)(~z Im [ z(y).[y = %]P)

where (VZ) means that the name z is private in its body and thus it may be used only as a private communication channel between the parallel components. Similarly to classical process algebras, zz @a) denotes the output of name z (a) along channel t. while z(y) is the input from channel z of a name that is assigned to the placeholder y and substituted for all free occurrences of y in the scope of the input ([y = ZIP). Finally, [y = z]P represents an if-then operator: the process P is activated only if y = z. Thus, the behaviour of the process above is influenced by the value assigned to y.

Also quantitative information is relevant to develop a concurrent distributed system. Assume that we are im- plementing a distributed system for air-seats reservation. If the implementation meets all bchavioural requirements (i.e., it is equivalent to its specification), but a reservation takes hours, the system must be rejected. The analysis of quantitative information (hereafter, performance analy- sis) is often delayed until the system is completely imple- mented. However such a delay may cause high extra-costs. To avoid waste of time and resources, performance analysis should be closely integrated in a design methodology with behavioural analysis [l 11.

Stochastic process algebras [lo, 12,3,53 aim at main- taining the peculiar features of classical process algebras while extending them to deal with performance measures. Recently, a stochastic extension of ?r-calculus has been proposed as well [191. The language obtained is called stochastic r-calculus (hereafter ST).

1060-3425/96 $5.00 0 1996 IEEE 508

Proceedings of the 1996 Hawaii International Conference on System Sciences (HICSS-29) 1060-3425/96 $10.00 © 1996 IEEE

Page 2: Integrating Behavioural and Performance Analysis with ... · PDF fileIntegrating Behavioural and Performance Analysis with Topoplogy Information ... like stochastic process algebra

Proceedings oj the 29th Annual Hawaii International Conference on System Sciences - 1996

The prefixes of S?r are enriched with probabilistic dis- tributions. Intuitively, the actual firing of a prefix occurs after a delay At drawn from the distribution associated to that prefix. An alternative interpretation of At may be the duration of the action described by the prefix. For in- stance, the intuitive stochastic semantics of a process that performs an a followed by b and then stops says that the process performs an a action after a delay At, then wait At’ and subsequently performs 1. The semantics of stochastic process algebras is usually given in SOS style. Only some bookkeeping in the rules of synchronization is needed to correctly update the probabilistic distributions. The speed of the synchronization must :reflect that of the slower com- ponent.

processes contains all the information needed to study be- havioural and performance properties. Roughly speaking, all instantiations of names that lead to equivalent processes are collected into a single one.

A topology is a labelled graph whose nodes are the pro- cessors of the architecture and whose arcs are the available phisycal links. Labels express information on the commu- nication along the link like the expected duration for the transmission of a unitary size datum, the frequency of con- flicts in accessing a given link and so on. To merge all the needed information together we use random variables taken from a suitable probabilistic distribution as labels.

All stochastic extensions of classical process algebras suffer from alimitation. Thelperformance measures derived from the stochastic model associated with the specification of a system is insensible to the physical architecture on which the system runs. Essentially, all these approaches to performance modelling assume that the network on which systems run is completely interconnected and that a sys- tem may acquire as many resources as needed. It suffices thinking of Internet to see that this assumption is irrealistic.

We label the nodes Np of a topology with proof terms. We then describe the arcs of the graph through axioms between proof terms. Finally, the arcs are labelled by prob- abilistic distributions. This allows us to define a transition system of S?r that takes network information into account.

In this paper we do not assume a completely intercon- nected network, but we merge topology information with semantic descriptions of systems. The main tool we use to carry out this programme is the proved transition sys- tem 14, 8,9]. The semantics of Ss is given in SOS style [18]. Systems are represented by graphs (transition sys- tems) whose nodes are terms of the language (processes) and whose arcs (transitions) represent the activities which make states change. Trans:itions are labelled by (portion of) encodings of their deduction trees. These extended la- bels we call proof terms. Essentially, the applications of the rules for parallel and nondeterministiccompositions are recorded. For instance, consider the process

A system specified in ST ispartitionedinto its sequential components individuated by the syntactic parallel structure of the specification. To each component is associated a virtual node. Assuming that tag Ilo (111) means the left (right) component of a parallel composition, we uniquely represent virtual nodes NV by strings over the alphabet {II07 111~.

The allocation of the system is given by a function M : NV + Np. Since we record the parallel structure of specification also in the labels of transitions, we can define an auxiliary function f that determines for each action on which phisycal node occurred. This information is used in the rules of communication to tune performance measures with respect to topologies.

The resulting transition system is transformed into a continuous time Markov chain (which can also be directly generated through inference rules from the syntax of the specification) and performance analysis is performed with standard nurical techniques.

Its a-transition is labelled +#D ]]0( a, ~0). The intuitive mean- ing is that a choice has been resolved in favour of its left part, and that the left component of a parallel composi- tion has then fired the transition. In this way, process (a, r).O + (a, r).O originates two transitions: one labeled +~(a, r) and the other +r (a, 7). Therefore, it cannot be confused with process (a, T’).O. Actually, the first process appears twice faster than the second one to an external observer.

We recall here that process algebras approach to perfor- mance analysis is not the only one reported in the litera- ture. In fact, many works on timed and stochastic Petri nets that attemp to integrate behavioural and performance fea- tures have been presented. Among the others, we mention 114,61.

The semantics of Sn is finite branching in correspon- dence of free input and b’ound output actions, unlike it happens in the standard xmantics of x-calculus. How- ever, the compact (no infinite branching) representation of

The paper is organized as follows. In the next section we recall the basic notions of ST from [ 191. The extension of Srr with topology information is defined in Section 3. Section 4 deals with performance measures of distributed systems. The last section report some ideas for future work.

509

Proceedings of the 1996 Hawaii International Conference on System Sciences (HICSS-29) 1060-3425/96 $10.00 © 1996 IEEE

Page 3: Integrating Behavioural and Performance Analysis with ... · PDF fileIntegrating Behavioural and Performance Analysis with Topoplogy Information ... like stochastic process algebra

Proceedings of the 29th Annual Hawaii InternationaL Conference on System Sciences - 1996

2 Stochastic n-calculus

In this section we briefly recall stochastic a-calculus El91.

Definition 2.1 (syntax) Let N be a countable infinite sef ofnamesrungedoverbya,b ,..., z,y ,... withNn{r}= 0. Moreover, let r E R+. Processes (denoted by P, Q, R,. . . E P) ore built from names according to the

different on successive attempts as durations are expressed by random variables. The continuity of probabilistic distti- butions ensures that the probability of two activities ending simultaneously is zero. Furthermore, exponential distribu- tions enjoy the memoryless property. Roughly speaking, the time at which a transition occurs is independent of the time at which the last transition occurred. Thus, the elapsed time of an activity in a state in which another one is the fastest is useless.

syntax

P ::= 0 I (T, T).P I (VX)P 1 [z = y]P ( PIPI P+PIP(Yl,...,Yn)

where r is the activity rate and is the uniqueparameter that describes an exponential distribution. Moreover, A may be either x(y) for input, or fy for output (where z is the subject and y the object) or r for silent moves. The order of precedence among the operators is the one listed above (from left to right). Hereafter, the trailing 0 will be omitted.

The probability of a transition P (ti P’ is the ratio between its rate and the exit rate of P (written r(P)), i.e. the sum of the rates of all activities enabled in P. For example, the probability that process (a, 3).0 $ (b,4).0 completes activity a is 3/7.

The prefix (r, Y) is the first activity that the process (z, r). P can perform. The activity (P, r) has to wait a delay At taken from the exponential distribution described by r before its actual completion. In other words, At is the time needed to complete the activity. The input prefix binds the name y in the prefixed process. Intuitively, some name y is received along the link named 2. The output prefix does not bind the name y which is sent along 2. The silent prefix r denotes an action which is invisible to an external observer of the system. Operator (VZ) acts as a static binder for the name 2 in the process P that it prefixes. Thus z is a unique name in P which is different from all external names. Matching [CC = y] P is an if -then operator: process P is activated if x = y. Process &I R either can execute asynchronously activities either from Q or from R or can perform invisible transitions when the two components communicate. The rate of a communication reflects the one of the slower par- ticipant. Process Q + R may behave either as Q or as R. The first action completed determines the component se- lected and the other will be discarded. The difference with the same operator of classical process algebras is that the selection mechanism makes + a probabilistic choice rather than a nondeterministic one (see below the discussion on the race condition). Finally, P(yl , . . . , yn) is the definition of constants (hereafter 5 denotes the sequence gl, . . , yn).

To compute r(P), we assign to synchronizations a rate that reflects the speed of their slower component. Follow- ing 1123, we need the apparent rate of an action a in a given process P, ra (P). It is the sum of rates of all actions a that are enabled in P. For instance, the apparent rate of a in (a, 3) + (Q, 4) is 7. Note that this is the rate captured by an external observer of the system, that can only register actions and their occurrence frequency. Since the appar- ent rate of a synchronization between two activities (a, ro) in P and (E, ri) in Q must reflect the one of the slower participant, we define it as min(r,(P), m(Q)).

Apparent rate allows us to compute conditionalprob- abilities, as well. In fact, the probability of a transition P (3 P’, given that an action a occurs, is r/ra(P). For example, the probability of transition

(a> 3) I (a, 2) + (4 1) (3 0 1 (a, 2) + (b, 1),

given that an a occurs, is 3/5. Therefore, the activity rate of a transition is its occurrence probability times its apparent rate.

As usual, assume that parallel processes independently decide which actions fire. Therefore, if a synchronization between (a, ro) and (Z, ri) is performed by PI&, theprob- ability that the two activities originate a communication is ro/r,(P) x rr/c(Q). Therefore the rate of synchroniza- tions is

R(J’,a,Q,~,ro,n) = roba x n/e(Q) x m;n(*a(Jq, %A&))

(1)

The first component of the activity is denoted by ,u, is called action and can be 7 for silent moves, z(y) for input, Ty for free output, and Z(y) for bound output. Note that ,u is distinct from 7r, the metavariable for prefixes.

The dynamic behaviour of processes is determined by a race condition. All enabled activities attempt to proceed, but only the fastest one succeeds. The fastest activity is

The early operational semantics of Sn is defined in SOS style and the labels of transitions (proof terms) [8,9] con- tains encodings of (portions of) their deduction trees.

Definition 2.2 (Proof terms) Let 29 E {Ilo, III, +o, +I)*, Proof terms (with metavariable 0) are defined as

6 ::= 0, r> I (~(110~0~0, Il19-h), r)

510

Proceedings of the 1996 Hawaii International Conference on System Sciences (HICSS-29) 1060-3425/96 $10.00 © 1996 IEEE

Page 4: Integrating Behavioural and Performance Analysis with ... · PDF fileIntegrating Behavioural and Performance Analysis with Topoplogy Information ... like stochastic process algebra

with po = X(%) if/Al is E(y) (Ty), or vice versu. Function 1 is dejined us e( S(p) r)) = p and J(~(llo~o(po, PO), ~II~I(PI, rl))) = 7. Function a is de- fmedas4W ~1) = rand4(Nldw0, II~QI), r)) = T.

Free names fn(p), bound names bn(,~), and names n(p) =fn(p) U bn(p) of a Isabel p are defined in the stan- dard way. Below, we assume that the structural congruence zz on processes defined as the least congruence satisfying the following clauses:

l P and & a-equivalent ((they only differ in the choice of bound names) + P z Q,

0 [x= x]P G P,

l (VX)(VY>P

(vy)(vx)P s (YZ, y)P, (vx)(RI S) E (vx)R,Z

if z $!fn(S), and (vz)P z P if 2 @fn(P).

Note that + and I are not commutative to avoid multitran- sition systems as in [12].

We call a variant of P @d Q, a transition which only differs in that P and & have been replaced by structurally congruent processes, and ,U Ihas been a-converted, where a name bound in p includes G! in its scope.

To have a finite branching semantics, we need the notion of routed substitution [7].

Definition 2.3 (routed subs;titution) Let c denote the empty string, let i = 0, 1, and let P, Q, R be processes. Then, a routed substitution P[w/y]@29 is inductively de- fined us follows.

l 6 = e or P is either ~$0, R.Q, Q + R, (KC)&, [x = YIQ, Q(yl, . . ., Y,), then P[w/Y]@~~ = P[w/Y];

l a~# 6 * (PlQ)bl~l@~ =

{

(PIQ)[w/yl@~’ 29 = +i@ (pblYl@w2) 29 = IW (PlQbl~lW) 19 = Ill@

The proof part of actions identify the position of the se- quential component that fired the transition.

We report the finite branching early transition system of ST taken from [19] in Tab. 1. Note that the actual transi- tion relation is I-+, while ---) is an auxiliary one. The rate of synchronizations is computed according to equation (1). The transition in the conclusion of each rule, as well as in the axiom, stands for all its variants. Note that routed sub- stitutions allow us to delay the instantiation of names to the actual relation I-+. Thus, we have collected all the context in which the input occurs, and we can identify all names (called active) that might imodify the future behaviour of

the process. We now characterize the set of active names in terms of the transition relation. Some notation could help. We write Pi A* Pj for a derivation

e,+1 ej-I Pi A Pi+1 -+ . . .Pj-1 --3 Pj

with (j - i) = TI > 0 and Bi . . .ej -1 = S. Note that n = 0 implies Pi = Pj. Formally, -* is the reflexive and transitive closure of -.

Theorem 2.4 Let P be a process. Then,

P+(Vz)P *

2 E fn(P) A P 2* P’ ‘3 P” A

x!ws) A 2 E n(P)

PROOF. G) Since 2 E fn( P), rule Open alone can discard (vz). Since x$%(s), no rule Open that extrudes x is applied in P -2* P’. For the same reason, (V x)P L*

(V x)P’. But (V x)P’ (# and hence P $ (V z)P. 3) The first conjunct is mandatory. In fact, if z e fn(P), we have the structural congruence P s (V z) P. We assume that the transitions which distinguish the two processes directly exit from P and (V x)P. Thus, let P (9 P’ and (~x)P’j@. ActionpcanbeeitheraborBbor?@)(p # 7 because restriction does not act on invisible transitions). Since all prefixes enabled in P are present in (V z)P as well, the only possibility for the two processes of having different transitions is z E n(p). In fact, assume z = a. In this case, (V x)P cannot perform the transition as the link is restricted. The same happens if x = b and ,U is an input. Instead, if 3: = b and ,U is an output, (V z)P Eres a bound output, while P a free output. This concludes the proof. c1

According to [171, two processes are early bisimilar if their transition systems originated with the new convention on names are CCS-like bisimilar. Thus, our construction preserves qualitative properties. Hereafter, we denote with d(x) the right-hand part of the axiom in Theorem 2.4. Since these names are finite, the resulting semantics is finite branching.

Finally, note that predicate new(P) originates a new name for process P.

3 Topologies

Stochastic process algebras are insensible to the archi- tecture on which a system is mapped. Indeed, the ran- dom variables that model the probabilistic and temporal

Proceedings of the 29th Annual Hawaii International Conference on System Sciences - 1996

511

Proceedings of the 1996 Hawaii International Conference on System Sciences (HICSS-29) 1060-3425/96 $10.00 © 1996 IEEE

Page 5: Integrating Behavioural and Performance Analysis with ... · PDF fileIntegrating Behavioural and Performance Analysis with Topoplogy Information ... like stochastic process algebra

Proceedings of the 29th Annual Hawaii International Conference on System Sciences - 1996

behaviour of processes are Exed at the specification level. This solution corresponds to the the following assumptions:

1. architecture completely interconnected,

2. as many processors as needed,

3. constant cost of inter-processors communications, and

4. conflict freeness.

Assumption 2 means that any process of the system at hand may be allocated on a different processor. Assumption 4 means that any process may access shared resources as soon as it need with no delay.

The above assumptions limit the quality of the perfor- mance measure and the comparison of these measures with respect to different allocations. In this section we release the above assumptions by slightly modifying the SOS se- mantics of Sa.

In order to have a uniform framework to specify sys- tems and to study the impact of their allocation on a given architecture, we describe topologies in the same formalism used for the description of systems. Since the behaviour of processes is described by transition systems in SOS style, we describe topologies by a set of axioms, and we include them in the semantic description of ST.

A topology is a labelled graph whose nodes are the pro- cessors of the architecture and whose arcs are the available phisycal links. Labels express information on the commu- nication along the link such as the expected duration for the transmission of a unitary size datum, the frequency of conflicts in accessing a given link and so on. We use as labels random variables taken from a suitable probabilistic distribution (for simplicity, we assume in this section the exponential distribution).

The next step is the allocution of processes on the nodes of the architecture. For the sake of simplicity, we assume a static allocation of sequential components of the system on different nodes (if available). Moreover, we aSsume that all concurrent sub-processes of a sequential component allocated on a node TX run on n.

The number of sequential components of a system is given by function SC : P --t m defined by structural induction as follows

SC(O) = Sc((r, r).Q) = Sc(& + 9) = Sc((vx)Q) = Sc([x = y]Q) = 1

W&(YI 1. . . , yn)) = SC(Q) (2) W&I I Q2) = W&l) + W&2)

Note that the number of sequential components can be computed syntactically because it depends on the parallel structure of processes.

A system Q E P needs as many virtual nodes as the number of its sequential components SC(&). Recall that the parallel structure of processes is recorded by proof terms on the labels of transitions. Therefore, assuming that the parallel composition is left associative, we can uniquely identify the virtual nodes of a process Q as follows (when SC(&) 1 1)

NV = {lid u {(IIo>~-~II~ 11 I i < SC(Q)&’

ullo>Sc’Q’~ (3)

where (I 10)’ stands for the string originated by the concate- nation of i 1 10’s.

Consider the process

Q = ((C&l I Q2) I Q3) I Q4) (4)

with Sc(Qi) = 1, i E { 1,. . . ,4}. The virtual nodes of Q are identified through the strings ll~lloll~ for &I, ll~ll~llt for Q2, /lo/l1 for Q3, 111 for Q4. The string associated to Qi corresponds to the proof term of actions enabled in Qi derived through the rules of ST, once fi constructors are erased.

WewriteNp= {l,..., n} for the phisycal nodes of an architecture. Then, the mapping is expressed by a function M : NV --f Np such that

l (NV I >_ INp ( + M is surjective

l INv( 5 INpI + M isinjective

where ISI denotes the cardinality of set S. The above characterization implies that M is bijective if and only if l&l = INPI.

If a network is not completely interconnected, it is neces- sary a routing. Consider the topology in Fig. 1, and assume that process Q in (4) has been mapped onto the topology as follows

M (lld = 4 M M ld = 5

M (llolloll~) = 2 M (llollollo) = 1 Roughly, Ql is allocated on node 1, Qz on 2, Q3 on 5, and Q4 is mapped onto node 4. A communication between Ql and Q4 needs a routing through the nodes 2 and 3, thus slowing the communication. The routing information can be associated to any node n of the network through a further random variable TRn: it gives the expected time for the routing of a message at node n.

In order to merge the information on the topology with the operational semantics of ST, we need to trans- form the topology graph G into a completely intercon- nected graph G’ with a suitable labelling. Therefore, given G = (N, -k N x N, f?), where P : N -+ R+ provides the routing information, we build G’ as follows.

512

Proceedings of the 1996 Hawaii International Conference on System Sciences (HICSS-29) 1060-3425/96 $10.00 © 1996 IEEE

Page 6: Integrating Behavioural and Performance Analysis with ... · PDF fileIntegrating Behavioural and Performance Analysis with Topoplogy Information ... like stochastic process algebra

Figure 1: A network architecture

Let >* be the reflexive and transitive closure of 2 with the label s such that

noan1 z... nk--1 ‘(C-l)k

- nk +

* no -* nk A

k-l

s= n Ti(i+l)

iso i=l

Finally, G’ = (N, 2~ N :< N) where

Note that the above condition is effective as the topology is a finite graph and the only paths that can originate minm I are the acyclic ones.

We are left to deal with the case of two communicating processes which are allocated on the same phisycal node. For instance, the processes Q1 and 92 of cr.(Ql 1 Q2).

Since we are considering distributedarchitectures, intra- node communications are much less expensive than inter- node ones. Thus, the expected time of intra-node commu- nications must be smaller than that of inter-node communi- cations. To this purpose, we assume that each node of the topology graph has a self-loop labelled with P = 00. This labelling is reminescent of immediate actions of sthocastic process algebras 1ikeMPA [3]: the duration of such actions is neglectable with respect to the duration of the others.

All the information we. need to take the allocation of processes into account during the performance evaluation is contained in the extended topology graph. The only change to the operational semantics of Sn is the substitution of the rules for communications with those in Tab. 2. There we use an auxiliary function ? to determine the node on which are allocated the partners of the communication. In order to define ? we need to erase +i tags from proof terms as node identifiers are strings over the alphabet { j]o,j II}. To this purpose we use the function P+ defined as

F+(+iS) = F+(d) F+(IW) = IliF+(4.

Now we define

Proceedings of the 29th Annual Hawaii International Conference on System Sciences - I996

?(9) = M(t9’)

where 19’ is the longest prefix of F+ (29) such that 29’ c-), i.e., 9’ is a node identifier of the considered topology. Note that such a 19’ always exists due to the way in which proof terms are built. In fact, the proof term identifying a sequential component (a node identifier) is a prefix of the proof terms of all transitions originated by its sub-components (once +i have been removed).

We only need to modify equation (1) which computes the duration of synchronizations to consider the new parameter r. For example, we can choose

Assume that processes Q1 and Q4 in (refese) are defined as

&1 = (a, 112) + lb, 113) I (a,2/3)

and Q4 = (a, l/3) I (c, l/4).

Furthermore, let T-ICL = 2/3, TR3 = l/2 and ~12 = 2, r~ = 2/3, r3 = 3/2. We compute the rate of the synchroniza- tion 0 between the first a in Q1 and B in Q4 assuming the topology in Fig. 1 and the mapping M described above.

The apparent rate of a in Q1 is 7/6 and the apparent rate of E in Q4 is l/3. Therefore, the apparent rate of the synchronization is n&(7/6,1/3) = l/3. The occurrence probability of t beta is 3/7. Without considering topology information, the rate of 0 would be l/7.

The probability information attached to physical links originates the factor l/2 = r12 x r23 x r%. The factor originated by routing is l/3 = rm x rR3.

Finally, the rate of the synchronization considered is 2/21. Note that the rate is influenced by the mapping. In fact, assume that 94 is allocated on node 3. The factor due to topology is changed to 8/63. This example shows that topology information can be used to compare different allocation of processes with respect to efficiency of syn- chronizations.

4 Performance measures

We briefly recall stochastic processes and continuous time Markov chains [l]. Then, we instantiate them to our framework.

A family of random variables {X(t), t E T} is a stochastic process with index set T. The set T is usuaIly called time parameter and t time. The process is discrete time or continuous time if T is a discrete or a continuous

513

Proceedings of the 1996 Hawaii International Conference on System Sciences (HICSS-29) 1060-3425/96 $10.00 © 1996 IEEE

Page 7: Integrating Behavioural and Performance Analysis with ... · PDF fileIntegrating Behavioural and Performance Analysis with Topoplogy Information ... like stochastic process algebra

Proceedings of the 29th Annual Hawaii International Conference on System Sciences - 1996

set, respectively. The state space of the process is the set of possible values that X(t) can assume. Intuitively, X(t) is the state of the process at time t. Examples of stochastic processes are the waiting time of an arriving request until processing is begun by a server, the average time to run a program on a computer, the occurrence probability of a hardware or a software failure.

Many systems arising in practice have the property that, given the present state, the past states have no influence on the future. This is the memoryless or Markov property and the stochastic processes satisfying it are called Markov chains or Murkov processes depending whether their state space is discrete or continuous, respectively.

Definition 4.1 Thefamily of random variables {X(t), t > 0) is a continuous time Markov chain (CTMC) iffor any setofn+lvaIuestl < . . . < I,,+1 in the index set, and anyset(xl,..., x,+1} of n + 1 states we have

P(X(k+l> = x,+1 I X(b) = 21,. . . ,X(&a) = 2,) =

P(X(Lt1) = G&+1 I X(&J) = 2,) with p(Al B) the conditionalprobability of A given B.

The one-step transition probability

P(X(t7l+1> = 2nt1 I X(L) = 2,)

of Def. 4.1 is usually dependent on the index n. When it is independent of n, it is written p,(,+r), and the corrcspond- ing CTMC is said homogeneous in time or to have stationary transition probabilities. We are mainly interested in these CTMC as their transition probabilities can be arranged in a square matrix (transition matrix) and performance analysis can be performed by standard numerical techniques.

The following theorem suggests how to turn an ST pro- cess into a CTMC. Since we have a finite branching se- mantics, Theorem 4.2 is a straightforward adaptation of a corresponding statement given for PEPA in [ 123. Its proof follows the same pattern as well.

Theorem 4.2 Let P be a fmite control Sx process and let d(P) = {Pi I P A* Pi} be the set of all derivatives of P. Then, the stochastic process {X(t),t 2 0) where X(ti) = Pj means that process P at time ti behaves as process Pi, is a continuous time Markov chain with state space d(P) and with stationary transition probabilities.

We now define the one-step transition probability at the level of transition system. Recall that the transitions en- abled in a process cannot be disabled by flow of time. Hence, the CTMC associated with ST processes are homo- geneous in time. Therefore, the one-step transition proba- bility from P; to Pj is the exit rate of Pi given that state Pj is reached. More formally, we have the following proposi- tion.

Proposition 4.3 Let TSfb(P) = (P, 0, -, P) be thej- nite state transition system originated by P. Let Pi, Pj states of TSfb(P) and let n be the number of states reach- able from P. Then, the transition matrix of the CTMC associated to TSfb (P) is a square matrix n x n Pij whose elements pij are dejned as

Pij = c 4@n)/ c Z(4) (5) Pi+%Pja-s(P;) P&q ETs(P;)

Note that the second summation in equation (5) coincides with r(Pi).

Since equation (5) defines the one-step transition prob- ability from Pi to Pi in terms of the transitions of Pi, and since our semantics is finite branching, we can define in SOS style the CTMC associated with a system. More precisely, we define a stratified transition system whose transition relation -M is defined in terms of ~3. We let the CTMC of an ST process Pi (written CTMC(Pi)) be the minimal transition graph defined by rule

Pi k-5 Pj CTMC:

pi EM Pj

where pij is defined according to equation (5). Performance analysis of process P can be performed on

the transition matrix Pij of CTMC(P).

We conclude this section with a remark. Since the transition relation - include probabilistic information on topologies, the same happens for -M. Furthermore, the transition matrix that we derive from an Sn process can be analyzed with standard techniques. Therefore, the in- troduction of topology information makes the performance measures more accurate, but not more complex to be carried out.

5 Conclusions and further work

We integrated behavioural and performance analysis into a single framework suitable to describe distributedsystems. We enriched the expressibility of existing stochastic process algebras by allowing mobility and asynchronous moves of synchronizingparteners (CCS vs. CSP parallel operator). Moreover, our framework is parametric. It is possible to relabel the transition graph of a system for obtaining differ- ent models of concurrent systems presented in the literature [9], thus allowing a large number of behavioural analysis.

The extension of the type of labels with proof terms (in particular with the parallel structure of processes) can be used to tune the performance measure of a system on a

514

Proceedings of the 1996 Hawaii International Conference on System Sciences (HICSS-29) 1060-3425/96 $10.00 © 1996 IEEE

Page 8: Integrating Behavioural and Performance Analysis with ... · PDF fileIntegrating Behavioural and Performance Analysis with Topoplogy Information ... like stochastic process algebra

Proceedings of the 29th Annual Hawaii International Conference on System Sciences - 1996

particular distributed architecture. Indeed, the interconnec- tion topology are expressed through a graph whose nodes are strings over { I[e,I II}, and whose arcs are labelled by the costs of communications between the source and tar- get node. We added this information to the premises of the communication rules of Tab. 1. Then, we modified the function R which computes lthe duration of shared activities by taking the communication cost into account. A possible application of such an approach is the evaluation of a fixed algorithm on different architectures.

We briefly discuss some further work. An ortogonal fea- ture to the description of topologies at the semantic level is the insertion of the data size in the specification of sys- tems. This could permit to estimate the complexity of an algorithm with respect to the size of data manipulated. In- terpolation techniques could be used starting from a set of temporal costs obtained by varying the size of data and to evaluate the performance of systems.

The information on the size of data may be used to increase the accuracy of performance measures in presence of shared activity. Indeed, we may define the labelling of topologies for unitary siz:e transmission data and then to tune it according to the size of the actual data communicated along the links.

References

[l] A.A. Allen. Probability, Statistics, and Queueing Theory with Computer Science Applications. Academic Press, 1978.

[2] D. Austty and G. Boudo:l. Alg6bre de processus et synchro- nization. Theoretical Computer Science, 30:91-131,1984.

[3] M. Bemardo, L. Donatiello, and R. Gorrieri. MPA: a stochastic process algebra.Technical Report UBLCS-94-10, University of Bologna, Laboratory for Computer Science, 1994.

[4] G. Boudol and I. Castellani. A non-interleaving semantics for CCS based on proved transitions. Foundamenta Infor- maticae, XI(4):433-452,1988.

[5] P. Buchholz. On a msrkovian process algebra. Technical report, Informatik IV, University of Dortmund, 1994.

[6] G. Ciardo, J. Muppala, and KS. Trivedi. SPNP: Stochastic petri net package. In Workshop on Petri Nets and Perfor- mance Models, pages 142-151. IEEE, 1989.

[7] R. Cleaveland and D. Yankelevich. An operational frame- work for value-passing processes. In Proceedings of POPL’94, pages 326-338.1994.

[8] P. Degano and C. Priami. Proved trees. In Proceedings of ICALP’92, LNCS 62.1. pages 629-640. Springer-Verlag, 1992.

[9] P. Degano and C. Priami. Causality for mobile processes. In Proceedings of ICALP’92, LNCS 944, pages 660-671. Springer-Verlag, 1995.

[lo] N. Giitz, U. Herzog, and M. Rettelbach. TIPP- a laneage for timed processes and performance evaluation. Technical Report 4/92, IMMD VII, University of Erlangen-Numberg. 1992.

[ 111 C. Harvey. Performance engineering as an integral part of systemdesign. BTTechnologyJournaI, 4(3):143-147.1986.

[ 121 J. Hillston. A Compositional Approach to Performance Mod- elling. PhD thesis, University of Edinburgh, Department of Computer Science, 1994.

[13] C.A.R. Hoare. Communicating Sequential Processes. Prentice-Hall, 1985.

[14] K.M. Kavi, ET. Sheldon. B. Shirazi, and A.R. Hurson. Re- liability analysis of CSP specifications using Petri nets and Markov processes. In In Proceedings of HICSS95, pages 516-524. IEEE, 1995.

[ 151 R. Milner. Communication and Concurrency. Prentice-Hall, London, 1989.

[16] R. Milner, J. Parrow, and D. Walker. A calculus of mo- bile processes (I and II). Information and Computation, lOO(l):l-77.1992.

[17] U. Montanari and M. Pistore. Checking biiimilarity for finitary x-calculus. Jn Proceedings of CONCUR’95, LNCS. Springer-Verlag, 1995. To appear.

[18] G. Plotkii. A structural approach to operational seman- tics. Technical Report DAIMI FN-19, Aarhus University, Denmark, 1981.

[19] C. Priami. Stochastic *-calculus. The Computer Journal, 1995. To appear.

515

Proceedings of the 1996 Hawaii International Conference on System Sciences (HICSS-29) 1060-3425/96 $10.00 © 1996 IEEE

Page 9: Integrating Behavioural and Performance Analysis with ... · PDF fileIntegrating Behavioural and Performance Analysis with Topoplogy Information ... like stochastic process algebra

Proceedings of the 29th Annual Hawaii International Conference on System Sciences - 1996

Table 1: Early proved transition system of S?r.

Act : (p, r). P (9 P IQ P{qz} 2 P’

e: Q(G) 2 P’

, W) = p

P z P’ P z P’ Par0 :

PIQ x P’lQ , b+(e)) n fn(Q) = 0 ParI :

QIP lee. Q/P’ , WW) n

P z P’ Sum0 : toe P+Q-+P’

Pw e P’

Res : (ux)P 5 (YX)Pl’ x e f@(e))

P 5 P’ Suml :

Q+P+‘f!P’

p -j(3) p’ Open : m~sr) p, ’ y #x

(UYP

P Corn; :

@(liy,r,) p,, Q e(Z),%) Q’

PIQ ((1109fY.lllB’t(r)),~,PY,Q,stz),rp,~9)) P’lQ’i~l4

fn(Q) = 0

P Close0 :

v(=zP) p,, Q *‘w&d q

PjQ ((llosmY,ll lB’r(z)),~,=(Y).Q,ry,rp,~9)) u p, , I z&fn(Q)

p Wy!,r) p, FbrO : d(w) V w = new(P)

P TY) P’[w/y]@8’

p f i(%&b9 P’ Fbrl :

p Tw) P’[w/y]@79 ’ w = new(P)

P 2 P’ Fbq : 7, e(e) is neither an input nor a bound output

PW P’

Table 2: Stochastic x-calculus with topologies

P Corn :

‘(%I p,, Q v’(r(t!,rd Q ’, ?(fi) ,I*?(&)

p,Q ((IIOB=Y,lll~‘t(~)),IYP,~Y,Q,r(~),rp,~~,r)) P’lQ’iyl4

P Close :

‘(%) p’, Q v’(z(z!,rd Q ’, ?(p9) A?(#)

PIQ ((llo~~~,ll~~‘t(~)).R(P,~v,Q,r(z),r~,r.,r)) (~Y)(P’IQ’[Y/~) ’ YEHQ)

516

Proceedings of the 1996 Hawaii International Conference on System Sciences (HICSS-29) 1060-3425/96 $10.00 © 1996 IEEE