This HOWTO describes the methods and software a developer can use for performance analysis on the Linux platform. This document in general focuses on the Linux/x86 platform, although much of it applies to other architectures as well.
Chapter 2 is a brief survey of the basic methods which are used for profiling. If you already have some familiarity with the basic profiling terminology, you may skip this section.
Chapter 3 discusses the kernel and user space facilities found in the Linux environment that provide support for profilers. You can probably skip this section if you're not interested in profiler implementations.
Chapter 4 provides an overview of the available profilers on Linux, providing brief synopses of their implementation, and considering their relative merits.
The bibliography at the end of this document collects several relevant websites, articles, and research papers, and an exhaustive list of the software described in Chapter 4.
This document is actively maintained; please contact the author with any suggestions, corrections, or confusions. Note that the primary author of this document is also the project lead for [oprofile], though all efforts have been made to provide a disinterested review.