Page 1

Aggregation and Numerical Techniques for Passage

Time Calculations in Large semi-Markov Models

Marcel Christoph G¨ unther

mcg05@doc.ic.ac.uk

June 18, 2009

Marker: Dr. Jeremy Bradley

Second marker: Dr. William Knottenbelt

Department of Computing

Imperial College London

Page 2

2

Abstract

First-passage time densities and quantiles are important metrics in performance analysis. They

are used in the analysis of mobile communication systems, web servers, manufacturing systems

as well as for the analysis of the quality of service of hospitals and government organisations.

In this report we look at computational techniques for the first-passage time analysis on high-

level models that translate to Markov and semi-Markov processes. In particular we study exact

first-passage time analysis on semi-Markov processes. Previous studies have shown that it is

possible to analytically determine passage times by solving a large set of linear equations in

Laplace space. The set of linear equations arises from the state transition graph of the Markov

or semi-Markov process, which is usually derived from high-level models such as process algebras

or stochastic Petri nets. The difficulty in passage time analysis is that even simple high-level

models can produce large state transition graphs with several million states and transitions.

These are difficult to analyse on modern hardware, because of limitations in the size of main

memory. Whilst for Markov processes there exist several efficient techniques that allow the

analysis of large chains with more than 100 million states, in the semi-Markov domain such

techniques are still less developed. Consequently parallel passage time analyser tools currently

only work on semi-Markov models with fewer than 50 million states. This study extends existing

techniques and presents new approaches for state space reduction and faster first-passage time

computation on large semi-Markov processes. We show that intelligent state space partitioning

methods can reduce the amount of main memory needed for the evaluation of first-passage time

distributions in large semi-Markov processes by up to 99% and decrease the runtime by a factor

of up to 5 compared to existing semi-Markov passage time analyser tools. Finally we outline a

new passage time analysis tool chain that has the potential to solve semi-Markov processes with

more than 1 billion states on contemporary computer hardware.

Page 3

3

Acknowledgements

I would like to thank my supervisor Jeremy Bradley for all the support and guidance he has

given me throughout the project as well as for his enthusiam about my research which always

motivated me to carry on.

I would also like to thank Nicholas Dingle for giving me feedback on my experiments, provid-

ing SMARTA and helping me to overcome various technical problems I encountered during the

project. Likewise I would like to thank William Knottenbelt for his support and his feedback

on my written work.

Finally I would like to thank my friends and family, especially my parents, Netta, Marco, Steve

and Daniel whose birthday I forgot because of the write-up.

Page 4

4

Computers process what they are being fed. When rubbish goes in, rubbish comes out.

Trans.: EDV-Systeme verarbeiten, womit sie gef¨ uttert werden. Kommt Mist rein, kommt Mist raus.

—

Andr´ e Kostolany

Page 5

CONTENTS5

Contents

1Introduction

1.1Motivation

1.1.1

1.2Current state of research . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.3Project aim . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.4Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.5Publications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

8

8

8

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Application of passage times in performance analysis . . . . . . . . . . . .

10

10

11

12

2Background

2.1Semi-Markov Processes (SMPs) . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.2High-level modelling formalism for SMPs

2.2.1Petri nets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.2.2Generalised stochastic Petri nets . . . . . . . . . . . . . . . . . . . . . . .

2.2.3Semi-Markov stochastic Petri nets . . . . . . . . . . . . . . . . . . . . . .

2.2.4 SM-SPN models used in this study . . . . . . . . . . . . . . . . . . . . . .

2.3 Laplace transforms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.4 Laplace transform inversion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.4.1Numerical Laplace transform inversion . . . . . . . . . . . . . . . . . . . .

2.5 Measures in SMP analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.5.1 Transient and steady-state distribution

2.5.2Passage time analysis in semi-Markov models . . . . . . . . . . . . . . . .

2.6Numerical methods for first-passage time analysis . . . . . . . . . . . . . . . . . .

2.6.1Iterative approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.7Exact state aggregation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.8Graph partitioning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.8.1Graph Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.8.2Partitioning metrics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.8.3 Recursive bi-partitioning vs. k-way partitioning . . . . . . . . . . . . . . .

2.8.4 Objective functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.8.5 Flat vs. Multilevel hypergraph partitioning . . . . . . . . . . . . . . . . .

2.8.6Multilevel hypergraph partitioning . . . . . . . . . . . . . . . . . . . . . .

13

13

14

14

15

16

17

17

19

19

21

21

21

22

22

24

26

26

28

29

29

29

29

. . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . .

3Partitioning the SMP state space

3.1 SMP transition matrix partitioners . . . . . . . . . . . . . . . . . . . . . . . . . .

3.1.1Row striping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3.1.2 Graph partitioner. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3.1.3 Hypergraph partitioner. . . . . . . . . . . . . . . . . . . . . . . . . . . .

32

33

33

33

34