OPROFILE(1) | General Commands Manual | OPROFILE(1) |
NAME¶
oprofile - a statistical profiler for Linux systems, capable of profiling all running code at low overhead; also included is a set of post-profiling analysis tools, as well as a simple event counting tool
SYNOPSIS¶
operf [ options ]
ocount [ options ]
opreport [ options ] [ profile specification ]
opannotate [ options ] [ profile specification ]
oparchive [ options ] [ profile specification ]
opgprof [ options ] [ profile specification ]
DESCRIPTION¶
OProfile is a profiling system for systems running Linux 2.6.31
and greater. OProfile makes use of the hardware performance counters
provided on Intel, AMD, and other processors. OProfile can profile a
selected program or process or the whole system. OProfile can also be used
to collect cumulative event counts at the application, process, or system
level.
For a gentle guide to using OProfile, please read the HTML documentation
listed in SEE ALSO.
OPERF¶
operf is a performance profiler tool for Linux.
OCOUNT¶
ocount is an event counting tool for Linux.
OPREPORT¶
opreport gives image and symbol-based profile summaries for the whole system or a subset of binary images.
OPANNOTATE¶
opannotate can produce annotated source or mixed source and assembly output.
OPARCHIVE¶
oparchive produces oprofile archive for offline analysis
OPGPROF¶
opgprof can produce a gprof-format profile for a single binary.
PROFILE SPECIFICATIONS¶
Various optional profile specifications may be used with the post-profiling tools. A profile specification is some combination of the parameters listed below. ( Note: Enclosing part of a profile specification in curly braces { } can be used for differential profiles with opreport, but the braces must be surrounded by whitespace.)
- archive:archive
- Path to the archive to inspect, as generated by oparchive
- session:sessionlist
- A comma-separated list of session names to resolve in. Absence of this
tag, unlike all others, means "the current session", equivalent
to specifying "session:current".
- session-exclude:sessionlist
- A comma-separated list of sessions to exclude.
- image:imagelist
- A comma-separated list of image names to resolve. Each entry may be
relative path, glob-style name, or full path, e.g. opreport
'image:/usr/bin/operf,*op*,./oprofpp'
- image-exclude:imagelist
- Same as image:, but the matching images are excluded.
- lib-image:imagelist
- Same as image:, but only for images that are for a particular primary
binary image (namely, an application). This only makes sense to use if
you're using --separate. This includes kernel modules and the kernel when
using --separate=kernel.
- lib-image-exclude:imagelist
- Same as <option>lib-image:</option>, but the matching images
are excluded.
- event:eventname
- The symbolic event name to match on, e.g. event:DATA_MEM_REFS.
- count:eventcount
- The event count to match on, e.g. event:DATA_MEM_REFS count:30000.
- unit-mask:maskvalue
- The unit mask value of the event to match on, e.g. unit-mask:1.
- cpu:cpulist
- Only consider profiles for the given numbered CPU (starting from zero).
This is only useful when using CPU profile separation.
- tgid:pidlist
- Only consider profiles for the given task groups. Unless some program is
using threads, the task group ID of a process is the same as its process
ID. This option corresponds to the POSIX notion of a thread group. This is
only useful when using per-process profile separation.
- tid:tidlist
- Only consider profiles for the given threads. When using recent thread libraries, all threads in a process share the same task group ID, but have different thread IDs. You can use this option in combination with tgid: to restrict the results to particular threads within a process. This is only useful when using per-process profile separation.
ENVIRONMENT¶
No special environment variables are recognized by OProfile.
FILES¶
- /usr/share/doc/oprofile/oprofile.html
- OProfile user guide.
- /usr/share/doc/oprofile/opreport.xsd
- Schema file for opreport XML output.
- /usr/share/doc/oprofile/ophelp.xsd
- Schema file for ophelp XML output.
- /usr/share/oprofile/
- Event description files used by OProfile.
- <session-dir>/samples/operf.log
- The profiler log file.
- <session-dir>/samples/current
- The location of the generated sample files.
VERSION¶
SEE ALSO¶
/usr/share/doc/oprofile/, operf(1), ocount(1), opreport(1), opannotate(1), oparchive(1), opgprof(1), gprof(1), CPU vendor architecture manuals
COPYRIGHT¶
oprofile is Copyright (C) 1998-2004 University of Manchester, UK, John Levon, and others. OProfile is released under the GNU General Public License, Version 2, or (at your option) any later version.
AUTHORS¶
John Levon <levon@movementarian.org> is the primary author. See the documentation for other contributors.
Fri 08 November 2024 | 4th Berkeley Distribution |