Many of today’s complex systems are multithreaded servers that effectively run forever and need to work under varying loads and environments. Understanding the behavior of such systems, both their normal behavior and any abnormal behavior, is a necessary step in their development, deployment, and use. We have developed a performance analysis framework that is targeted for such systems. The framework deals with a variety of performance issues including cpu usage, memory utilization, I/O behavior, thread interactions, and event handling. Data is collected within a fixed overhead set dynamically by the user. The tool’s user interface shows the behavior of the system as it is happening and lets the user browse through the execution history.
Steven P. Reiss