Bottleneck Search in Running Programs

-------------------------

Introduction - Why is my program running slowly?

Paradyn is a tool for finding out where complicated (parallel) applications spend their time. This works by dynamically (i.e. while the application runs) inserting and removing monitoring code. The importance of deploying the instrumentation code dynamically is that it allows minimising the level of overhead that instrumentation introduces.

The aim of this project is not so much to find out where an application spends its time (although we do have to know that), but why: Is a section of code limited by memory performance, by parallelism, register pressure, etc? This can then lead us on to think about whether anything can be done to improve this.

Where to start

Is this project for you?

To do this project, you should not be scared by large, existing pieces of software, and have the ability to get complex pieces of code to work. You will also need a good understanding of computer architecture and architecture issues that affect software performance.

-----------------------------

Olav Beckmann
Last modified: Thu Oct 6 17:43:47 BST 2005