AESOP home


PerformDB: A Distributed Collaborative Performance Engineering Environment
Dr Ashok Argent-Katwala
Dr Jeremy Bradley
EPSRC project EP/D054087/1
Started in May 2006
Completed in May 2008
Funded value

Performance modellers waste much conceptual and computational effort independently recreating and analysing the same models. Performance modelling is especially necessary in communication protocols, for instance in, Bluetooth device discovery, IEEE 1394 Firewire quality-of-service or Courier communications protocol response-time where probabilistic guarantees of timely operation are essential to the correct operation of the overall system.

We propose a collaborative, distributed performance engineering environment called PerformDB, which will create an automated repository of well-engineered performance model components along with associated analysis results.

PerformDB will enable collaboration by:

while preserving referential integrity to previous versions, so that previous subscribers to that model keep their systems consistent.

PerformDB is not designed to be just a single-site project. PerformDB can act as a gateway to other universities' performance model repositories. If successful, the project will consist of a distributed network of PerformDB nodes, which contain projects that reference models, queries and results from many different PerformDB repositories.

Ultimately, in a future project, this will become the framework for a distributed computational engine for performance analysis as well. Perform-DB will offer a web-based interface to a selection of current performance modelling tool chains, which are enabled on the GRAIL cluster computer. Also, PerformDB will allow users of other tool chains the ability to upload models and results and even describe how those models and results relate to other supported formalisms, through the use of user-definable translation semantics.

Finally, PerformDB will be running background tasks that will search for useful structural properties of existing models (eg bisimulation, reversibility, separability of solution) that existing tools can make use of during solution. Crucial to this aspect of the environment is the ability to automate the discovery and reuse of pre-calculated results in the PerformDB database for similar components in new models.