Computational & Technology Resources
an online resource for computational,
engineering & technology publications
Computational Science, Engineering & Technology Series
ISSN 1759-3158
CSETS: 21
PARALLEL, DISTRIBUTED AND GRID COMPUTING FOR ENGINEERING
Edited by: B.H.V. Topping, P. Iványi
Chapter 9

Performance Trees: A Query Specification Formalism for Quantitative Performance Analysis

W.J. Knottenbelt, N.J. Dingle and T. Suto

Department of Computing, Imperial College London, United Kingdom

Full Bibliographic Reference for this chapter
W.J. Knottenbelt, N.J. Dingle, T. Suto, "Performance Trees: A Query Specification Formalism for Quantitative Performance Analysis", in B.H.V. Topping, P. Iványi, (Editors), "Parallel, Distributed and Grid Computing for Engineering", Saxe-Coburg Publications, Stirlingshire, UK, Chapter 9, pp 165-198, 2009. doi:10.4203/csets.21.9
Keywords: performance trees, PIPE2, generalised stochastic Petri nets, stochastic modelling.

Summary
Stochastic modelling and associated performance analysis techniques allow engineers to understand and quantify the fundamental performance characteristics of complex distributed systems, both before and after implementation. This can help to avoid the unforeseen performance problems that so often plague real-life systems. In this context, it is a major - albeit largely unaddressed - challenge to find a way to specify complex performance queries on models of systems that is simultaneously accessible, rigorous and expressive.

This paper describes our attempts to address this challenge through the development of Performance Trees [2,3,6-8], a formalism for the graphical specification of complex performance queries on stochastic models. Performance Trees are designed to be accessible by providing more intuitive query specification (including structured natural language-based specification techniques [9]), expressive by being able to reason about a broader range of concepts than current alternatives such as stochastic logics, extensible by supporting additional user-defined concepts through macro functionality, and versatile through their applicability to multiple modelling formalisms including stochastic Petri nets, stochastic process algebras and queueing networks. The formalism is backed up by a rigorous theoretical framework that defines the syntax, typing and quantitative semantics of operators [8].

Prototype tool support is key to encouraging the adoption of any new formalism. Here this is implemented in the form of a module for the PIPE2 Petri net tool [1,3,5], which provides Performance Tree query design capabilities through both a graphical user interface and a structured natural language query builder. Query evaluation is supported by a set of integrated parallel and distributed analysis tools, which are hosted on a dedicated cluster. The application of Performance Trees is demonstrated in the context of a case study of an online transaction system. We also show how they can be applied to concepts found in Service Level Agreements (SLAs), and propose a unified PT-based framework for the specification, compliance prediction and online monitoring of SLAs [4].

References
[1]
P. Bonet, C.M. Llado, R. Puigjaner, W.J. Knottenbelt, "PIPE v2.5: A Petri net tool for performance modelling", In Proc. 23rd Latin American Conference on Informatics (CLEI'07), San Jose, Costa Rica, October 2007.
[2]
D.K. Brien, N.J. Dingle, W.J. Knottenbelt, H. Kulatunga, T. Suto, "Performance Trees: Implementation and distributed evaluation", In Proc. 7th International Workshop on Parallel and Distributed Methods in Verification (PDMC'08), pages 67-82, Budapest, Hungary, March 2008.
[3]
N.J. Dingle, W.J. Knottenbelt, H. Kulatunga, T. Suto, "A parallel and distributed analysis pipeline for Performance Tree evaluation", In Proc. 5th International Conference on the Quantitative Evaluation of Systems (QEST'08), Saint Malo, France, September 2008.
[4]
N.J. Dingle, W.J. Knottenbelt, L. Wang, "Service Level Agreement specification, compliance prediction and monitoring with performance trees", In Proc. 22nd European Simulation Multiconference (ESM'08), pages 137-144, Le Havre, France, September 2008.
[5]
PIPE2, Platform-Independent Petri net Editor, http://pipe2.sourceforge.net
[6]
T. Suto, "Performance Trees: A Query Specification Formalism for Quantitative Performance Analysis", PhD thesis, Imperial College London, August 2008.
[7]
T. Suto, J.T. Bradley, W.J. Knottenbelt, "Performance Trees: A new approach to quantitative performance specification", In Proc. 14th International Symposium on Modeling, Analysis and Simulation of Computer and Telecommunication Systems (MASCOTS'06), pages 303-313, Monterey, CA, September 2006.
[8]
T. Suto, J.T. Bradley, W.J. Knottenbelt, "Performance Trees: Expressiveness and quantitative semantics", In Proc. 4th International Conference on the Quantitative Evaluation of Systems (QEST'07), pages 41-50, Edinburgh, UK, September 2007.
[9]
L. Wang, N.J. Dingle, W.J. Knottenbelt, "Natural language specification of Performance Trees", In Proc. 5th European Performance Engineering Workshop (EPEW'08), pages 141-151, Palma de Mallorca, Spain, September 2008.

purchase the full-text of this chapter (price £20)

go to the previous chapter
go to the next chapter
return to the table of contents
return to the book description
purchase this book (price £98 +P&P)