An Overview of Software Performance Analysis Tools and Techniques: From GProf to DTrace
Abstract
As computer applications have grown in complexity, the ability to fine-tune the performance of an application "by-hand" has been reduced. In response to these difficulties, a wide variety of automated performance analysis techniques have been developed. This paper provides an in-depth look at the types of analysis tools that are currently avaiable, starting with those that implement simple static techiques and then moving onwards towards those that rely on advanced dynamic mechanisms to obtain application statistics. Along the way, various example tools are presented in an attempt to give the reader a better idea of how a real world implementation of each analysis mechanism functions.
Table of Contents
- 1. Introduction
- 2. Static Analysis Tools
- 2.1 Compile Time Instrumentation Tools
- 2.2 Sampling Tools
- 2.2.1 Overview of Qprof
- 2.2.2 Overview of Oprofile
- 2.3 Hardware Counter Tools
- 2.3.1 Overview of PerfSuite
- 2.4 Compound Tools
- 2.5 Summary
- 3. Dynamic Analysis Tools
- 3.1 Binary Instrumentation Tools
- 3.2 Probing Tools
- 3.3 Summary
- 4. Hybrid Analysis Tools
- 4.1 Overview of HP Caliper
- Summary
- References
- List of Acronyms
View complete report on-line
Shift-click to download the paper in Adobe Acrobat
format
List of other reports in this series
Back to Raj Jain's home page