These two statistical profilers predate perf
. They are both subsets of the functionality of perf
, but they are still quite popular. I will mention them only briefly.
OProfile is a kernel profiler that started out in 2002. Originally, it had its own kernel sampling code, but recent versions use the perf_events
infrastructure for that purpose. There is more information about it at http://oprofile.sourceforge.net. OProfile consists of a kernel-space component and a user space daemon and analysis commands.
OProfile needs these two kernel options to be enabled:
CONFIG_PROFILING
in General setup | Profiling supportCONFIG_OPROFILE
in General setup | OProfile system profiling
If you are using the Yocto Project, the user-space components are installed as part of the tools-profile
image feature. If you are using Buildroot, the package is enabled by BR2_PACKAGE_OPROFILE
.
You can collect samples by using this command:
# operf <program>
Wait for your application to...