|
|
About Performance Evaluation Process Algebra
Simple models of a computer system can be constructed without any explicit notational support. However, as computer systems become more complex so do their models and the use of a high-level language to aid in their expression becomes necessary. Jane Hillston's Performance Evaluation Process Algebra (PEPA) is an expressive formal language for modelling distributed systems. PEPA models are constructed by the composition of components which perform individual activities or cooperate on shared ones. To each activity is attached an estimate of the rate at which it may be performed. Using such a model, a system designer can determine whether a candidate design meets both the behavioural and the temporal requirements demanded of it. A stochastic process algebra such as PEPA offers several attractive features which were not available in previous performance modelling paradigms. The most important of these are:
Queueing networks offer compositionality but not formality; stochastic extensions of Petri nets offer formality but not compositionality; neither offer abstraction mechanisms. Performance modelling with PEPAPEPA models contain information about the duration of activities and, via a race policy, their relative probabilities. From these models it is possible to generate a corresponding continuous time Markov chain (CTMC) by elaborating the model against the structured operational semantics of the PEPA language. Linear algebra can then be used to solve the model in terms of equilibrium behaviour. This behaviour is represented as a probability distribution over all the possible states of the model. This distribution is seldom the ultimate goal of performance analysis; instead the modeller is interested in performance measures which must be derived from this distribution via a reward structure defined over the CTMC. The PEPA language is supported by a range of tools developed by its users round the world. The premier PEPA tool is the PEPA Eclipse Plug-in (download) which has been adopted by several groups of external users. The application areas for this work span the subject areas of Informatics and engineering.
More recently support for the PEPA language has been added to other tools such as the Möbius Modeling Framework (screenshot) from the Performability Engineering Research Group, Motorola Center for High-Availability System Validation at the University of Illinois at Urbana-Champaign. PEPA is also supported by the PRISM probabilistic model checker (screenshot) from the University of Birmingham, England. PEPA support is also built in to the Cæsar/Aldebaran Development Package (screenshot) from the VASY group, INRIA Rhône-Alpes. History of the PEPA projectJane Hillston defined the PEPA language in her PhD thesis, undertaken in the Laboratory for Foundations of Computer Science, a research institute of the Division of Informatics. Her PhD thesis was awarded the British Computer Society/Conference of Professors and Heads of Computing Distinguished Dissertation award in 1995 and is published by Cambridge University Press. In 2004 Jane won the BCS/Microsoft Roger Needham award for her work on PEPA and compositional approaches to performance modelling. In May 2005 Jane was awarded a five-year Advanced Research Fellowship from the Engineering and Physical Sciences Research Council to support her research on quantified methods and process algebras. |
Contact addresses: Jane Hillston and Stephen Gilmore, {jeh,stg}@inf.ed.ac.uk.
Laboratory for Foundations of Computer Science, The University of Edinburgh.
Last modified: Wednesday 08 June 2011