Dissertation ETH No. 14845

Inverting Middleware: Performance Analysis of Layered Application Codes in High Performance Distributed Computing

Michela Taufer
Laboratory for Computer Systems
Swiss Federal Institute of Technology (ETH)
CH-8092 Zürich, Switzerland

Published by sigma Hartung Gorre Verlag Konstanz

ISBN 3-89649-821-5    ISSN 1611-0943


Many important application codes were developed for vector supercomputers and SMP machines. In the last decade, the computing research has moved away from such expensive platforms to cheaper distributed systems such as clusters of PCs. Further on, the migration of these application codes to widely distributed systems, on so called desktop computational grids, looks tempting. Re-engineering applications for such distributed systems while at the same time maintaining good performance remains a challenging task, since we are still lacking tools and instrumentation for performance analysis that work well together with standard middleware. While middleware packages help the application writer to reduce the programming effort, they still cause some loss of control over performance issues which results in suboptimal usage of the machine resources.

To address this problem, we propose a novel method for performance analysis including a framework called inverted middleware. The inverted middleware assists the process of performance engineering by mapping low level performance information, monitored at the operating system layer, back to a higher level, i.e. the application layer. For a distributed system, our inverted middleware framework comprises software instrumentation at the OS level, tools for gathering relevant performance data and an analytical model for performance prediction on distributed systems. The inverted middleware is used side by side with the middleware packages.

We demonstrate the viability of our approach with the performance analysis of the scientific code Dyana for molecular dynamics and a standard OLAP (On-Line Analytical Processing) application, the TPC-D benchmark. With the inverted middleware, we provide a detailed performance characterization of different workloads according to their resource usage, quantify the scalability for new alternative platforms and investigate the impact of the network on the overall application performance. This information helps an expert to effectively re-engineer and successfully migrate application software to new platforms.

Available Files: [ Acrobat PDF ], [ PhD Defense ].

Last Change: Apr 2003
Author: Michela Taufer