Automated performance modeling of software generated by a design environment

Abstract Automation is needed to make performance modeling faster and more accessible to software designers. This paper describes a prototype tool that exploits recently developed techniques for automatic model construction from traces. The performance model is a layered queuing model and it is based on traces captured for certain selected scenarios which are determined to be important for performance. The prototype tool has been integrated with a commercial software design environment that generates code with heavy use of standard libraries. The execution costs of the libraries has also been captured and used in the automatic model creation. The approach not only automates building early models, but also gives models which can be maintained during development, using traces gathered from the implementations. The paper describes the tool, the process by which it is applied, the process of capturing and managing the execution cost data, and an example. To use the tool, the designer further defines the scenarios, the execution environment, and the workload intensity parameters. The designer can then experiment with different environments and workloads, or revise the design, to improve the performance.

[1]  C. Murray Woodside,et al.  A Three-View Model for Performance Engineering of Concurrent Software , 1995, IEEE Trans. Software Eng..

[2]  C. M. Woodside,et al.  Trace-based load characterization for the automated development of software performance models , 1998 .

[3]  Bran Selic,et al.  Real-time object-oriented modeling , 1994, Wiley professional computing.

[4]  Jerome A. Rolia,et al.  The Method of Layers , 1995, IEEE Trans. Software Eng..

[5]  Martin Steppler,et al.  Performance analysis of communication systems formally specified in SDL , 1998, WOSP '98.

[6]  Jerome A. Rolia,et al.  Automatic generation of a software performance model using an object-oriented prototype , 1995, MASCOTS '95. Proceedings of the Third International Workshop on Modeling, Analysis, and Simulation of Computer and Telecommunication Systems.

[7]  Acm Sigsoft,et al.  Proceedings of the First International Workshop on Software and Performance, WOSP 98, October 12-16, 1998, Santa Fe, New Mexico, USA , 1998 .

[8]  Ray Jain,et al.  The art of computer systems performance analysis - techniques for experimental design, measurement, simulation, and modeling , 1991, Wiley professional computing.

[9]  Connie U. Smith,et al.  Performance Engineering of Software Systems , 1990, SIGMETRICS Perform. Evaluation Rev..

[10]  Bran Selic,et al.  A wideband approach to integrating performance prediction into a software design environment , 1998, WOSP '98.

[11]  Shikharesh Majumdar,et al.  The Stochastic Rendezvous Network Model for Performance of Synchronous Client-Server-like Distributed Software , 1995, IEEE Trans. Computers.

[12]  Pekka Kahkipuro UML Based Performance Modeling Framework for Object-Oriented Distributed Systems , 1999, UML.

[13]  Jerome A. Rolia,et al.  Trace-Based Load Characterization for Gernerating Performance Software Models , 1999, IEEE Trans. Software Eng..

[14]  Elaine J. Weyuker,et al.  Performance testing of software systems , 1998, WOSP '98.

[15]  Connie U. Smith,et al.  Performance evaluation of software architectures , 1998, WOSP '98.