Edinburgh Research Archive

Stochastic abstraction of programs: towards performance-driven development

dc.contributor.advisor
Hillston, Jane
en
dc.contributor.advisor
Stark, Ian
en
dc.contributor.author
Smith, Michael James Andrew
en
dc.contributor.sponsor
Engineering and Physical Sciences Research Council (EPSRC)
en
dc.contributor.sponsor
Microsoft Research
en
dc.date.accessioned
2011-02-08T15:20:45Z
dc.date.available
2011-02-08T15:20:45Z
dc.date.issued
2010
dc.description.abstract
Distributed computer systems are becoming increasingly prevalent, thanks to modern technology, and this leads to significant challenges for the software developers of these systems. In particular, in order to provide a certain service level agreement with users, the performance characteristics of the system are critical. However, developers today typically consider performance only in the later stages of development, when it may be too late to make major changes to the design. In this thesis, we propose a performance driven approach to development — based around tool support that allows developers to use performance modelling techniques, while still working at the level of program code. There are two central themes to the thesis. The first is to automatically relate performance models to program code. We define the Simple Imperative Remote Invocation Language (SIRIL), and provide a probabilistic semantics that interprets a program as a Markov chain. To make such an interpretation both computable and efficient, we develop an abstract interpretation of the semantics, from which we can derive a Performance Evaluation Process Algebra (PEPA) model of the system. This is based around abstracting the domain of variables to truncated multivariate normal measures. The second theme of the thesis is to analyse large performance models by means of compositional abstraction. We use two abstraction techniques based on aggregation of states — abstract Markov chains, and stochastic bounds — and apply both of them compositionally to PEPA models. This allows us to model check properties in the three-valued Continuous Stochastic Logic (CSL), on abstracted models. We have implemented an extension to the Eclipse plug-in for PEPA, which provides a graphical interface for specifying which states in the model to aggregate, and for performing the model checking.
en
dc.identifier.uri
http://hdl.handle.net/1842/4778
dc.language.iso
en
dc.publisher
The University of Edinburgh
en
dc.relation.hasversion
M.J.A. Smith. Stochastic modelling of communication protocols from source code. Electronic Notes in Theoretical Computer Science, 190(3):129–145, 2007.
en
dc.relation.hasversion
M.J.A. Smith. Probabilistic abstract interpretation of imperative programs using truncated normal distributions. Electronic Notes in Theoretical Computer Science, 220(3):43–59, 2008.
en
dc.subject
software engineering
en
dc.subject
performance evaluation
en
dc.subject
program analysis
en
dc.subject
stochastic process algebra
en
dc.title
Stochastic abstraction of programs: towards performance-driven development
en
dc.type
Thesis or Dissertation
en
dc.type.qualificationlevel
Doctoral
en
dc.type.qualificationname
PhD Doctor of Philosophy
en

Files

Original bundle

Now showing 1 - 2 of 2
Name:
source.zip
Size:
1.93 MB
Format:
Unknown data format
Description:
File not available for download
Name:
Smith2010.pdf
Size:
2.8 MB
Format:
Adobe Portable Document Format
Description:
PhD thesis

This item appears in the following Collection(s)