To use OProfile's JIT support, a kernel version 2.6.13 or later is required. In earlier kernel versions, the anonymous memory regions are not reported to OProfile and results in profiling reports without any samples in these regions.
Profiling the Cell Broadband Engine PowerPC Processing Element (PPE) requires a kernel version
of 2.6.18 or more recent.
Profiling the Cell Broadband Engine Synergistic Processing Element (SPE) requires a kernel version
of 2.6.22 or more recent. Additionally, full support of SPE profiling requires a BFD library
from binutils code dated January 2007 or later. To ensure the proper BFD support exists, run
the configure utility with --with-target=cell-be.
Profiling the Cell Broadband Engine using SPU events requires a kernel version of 2.6.29-rc1
or more recent.
Instruction-Based Sampling (IBS) profile on AMD family10h processors requires kernel version 2.6.28-rc2 or later.
For Intel IA32, processors as old as P6 generation or Pentium 4 core are supported. The AMD Athlon, Opteron, Phenom, and Turion CPUs are also supported. Older IA32 CPU types can be used with the timer mode of OProfile; please see later in this manual for details. OProfile also supports most processor types of the following architectures: Alpha, MIPS, ARM, x86-64, sparc64, PowerPC, AVR32, and, in timer mode, PA-RISC and s390.
SMP machines are fully supported.
These libraries are required : popt, bfd,
liberty (debian users: libiberty is provided in binutils-dev package), dl,
plus the standard C++ libraries.
In order to build the perf_events-enabled operf program, you need to either
install the kernel-headers package for your system or use the --with-kernel
configure option.
For secure processing of sample data from JIT virtual machines (e.g., Java), the special user account "oprofile" must exist on the system. The 'configure' and 'make install' operations will print warning messages if this account is not found. If you intend to profile JITed code, you must create a group account named 'oprofile' and then create the 'oprofile' user account, setting the default group to 'oprofile'. A runtime error message is printed to the oprofile log when processing JIT samples if this special user account cannot be found.
The use of the GUI to start the profiler requires the Qt library.
Either Qt 3 or Qt 4 should work.
Probably not too strenuous a requirement, but older A.OUT binaries/libraries are not supported.
OK, so it's not really a requirement, but I wish it was...