Page doesn't render properly ?

Manual

An HTML version of the manual for the current version of OProfile can be found here. There is also an internals manual.

Example reports

You might want to see some example OProfile output.

Cheat sheet

Your 4-step plan to profiling.

  1. Compile and install oprofile, making sure to use --with-linux option to point to your current kernel source, or --with-kernel-support for 2.6 kernels.
  2. Start up the profiler :
    opcontrol --vmlinux=/path/to/vmlinux opcontrol --start
  3. Now the profiler is running, go do what ever you want to profile.
  4. Now let's generate a profile summary :
    opreport -l /path/to/mybinary
    Or, if we built our binary with -g, we can produce some annotated source :
    opannotate --source --output-dir=/path/to/annotated-source /path/to/mybinary
    Or we can look at the rankings of the various system components as a whole :
    opreport

If you reinstall Oprofile over a previous version you need, before starting the profiler, to:

opcontrol --reset

Event type reference

Quick reference for the available event types for the performance counters. The same info can be retrieved by running op_help.
ALPHA EV4 (kernel 2.6 only)
ALPHA EV5 (kernel 2.6 only)
ALPHA EV6 (kernel 2.6 only)
ALPHA EV67 (kernel 2.6 only)
AMD Athlon/Duron
AMD64 processors
ARM/XScale PMU1 (kernel >= 2.6.8 only)
ARM/XScale PMU2 (kernel >= 2.6.8 only)
Intel Pentium Pro
Intel Pentium II
Intel Pentium III
Intel P4
Intel P4 with hyperthreading (kernel 2.6 only)
Intel pentium M (P6 core) (kernel >= 2.6.7 only)
Intel IA64 (kernel 2.4 only)
Intel IA64 Itanium (kernel 2.4 only)
Intel IA64 Itanium2 (kernel 2.4 only)
MIPS rm9000 (kernel >= 2.6.11)
ppc e500 (kernel >= 2.6.11 only)
ppc64 POWER4 (kernel >= 2.6.9 only)
ppc64 POWER5 (kernel >= 2.6.9 only)
ppc64 970 (kernel 2.6 only)

The most valuable commodity I know of is information. - Gordon Gekko
2007/10/19