.TH OPROFILE 1 "Tue 24 November 2009" "oprofile 0.9.6"
.UC 4
.SH NAME
oprofile \- a system-wide profiler
.SH SYNOPSIS
.br
.B opcontrol
[
.I options
]
.br
.B opreport
[
.I options
]
[ profile specification ]
.br
.B opannotate
[
.I options
]
[ profile specification ]
.br
.B oparchive
[
.I options
]
[ profile specification ]
.br
.B opgprof
[
.I options
]
[ profile specification ]
.br
.SH DESCRIPTION
OProfile is a profiling system for systems running Linux
2.2, 2.4, and 2.6. Profiling runs transparently in the background and profile
data can be collected at any time. OProfile makes use of the hardware
performance counters provided on Intel, AMD, and other processors,
and uses a timer-interrupt based mechanism on CPUs without counters.
OProfile can profile the whole system in high detail.
.br
For a gentle guide to using OProfile, please read the HTML documentation
listed in SEE ALSO.
.br
.SH OPCONTROL
.B opcontrol
is used for starting and stopping the OProfile daemon, and providing set-up
parameters.
.SH OPREPORT
.B opreport
gives image and symbol-based profile summaries for the whole system or
a subset of binary images.
.SH OPANNOTATE
.B opannotate
can produce annotated source or mixed source and assembly output.
.SH OPARCHIVE
.B oparchive
produces oprofile archive for offline analysis
.SH OPGPROF
.B opgprof
can produce a gprof-format profile for a single binary.

.SH PROFILE SPECIFICATIONS
All of the post-profiling tools can take profile specifications,
which is some combination of the following parameters. Enclosing
part of a profile specification in curly braces { } can be used
for differential profiles with
.B opreport
; the braces
.B must
be surrounded by whitespace.

.TP
.BI "archive:"archive
Path to the archive to inspect, as generated by
.B oparchive
.br
.TP
.BI "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".
.br
.TP
.BI "session-exclude:"sessionlist
A comma-separated list of sessions to exclude.
.br
.TP
.BI "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/oprofiled,*op*,./oprofpp'
.br
.TP
.BI "image-exclude:"imagelist
Same as image:, but the matching images are excluded.
.br
.TP
.BI "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.
.br
.TP
.BI "lib-image-exclude:"imagelist
Same as <option>lib-image:</option>, but the matching images
are excluded.
.br
.TP
.BI "event:"eventname
The symbolic event name to match on, e.g. event:DATA_MEM_REFS.
.br
.TP
.BI "count:"eventcount
The event count to match on, e.g. event:DATA_MEM_REFS count:30000.
.br
.TP
.BI "unit-mask:"maskvalue
The unit mask value of the event to match on, e.g. unit-mask:1.
.br
.TP
.BI "cpu:"cpulist
Only consider profiles for the given numbered CPU (starting from zero).
This is only useful when using CPU profile separation.
.br
.TP
.BI "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.
.br
.TP
.BI "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.

.SH ENVIRONMENT
No special environment variables are recognised by oprofile.

.SH FILES
.TP
.I $HOME/.oprofile/
Configuration files
.TP
.I /root/.oprofile/daemonrc
Configuration file for opcontrol
.TP
.I /usr/local/share/oprofile/
Event description files used by OProfile.
.TP
.I /var/lib/oprofile/samples/oprofiled.log
The user-space daemon logfile.
.TP
.I /var/lib/oprofile/opdev, /var/lib/oprofile/ophashmapdev, /var/lib/oprofile/opnotedev
The device files for communication with the Linux 2.4 kernel module. 
.TP
.I /dev/oprofile
The device filesystem for communication with the Linux 2.6 kernel module. 
.TP
.I /var/lib/oprofile/samples/
The location of the generated sample files.

.SH VERSION
.TP
This man page is current for oprofile-0.9.6.

.SH SEE ALSO
.BR /usr/local/share/doc/oprofile/,
.BR opcontrol(1),
.BR opreport(1),
.BR opannotate(1),
.BR oparchive(1),
.BR opgprof(1),
.BR gprof(1),
.BR readprofile(1),
.BR "CPU vendor architecture manuals"

.SH 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.
.SH AUTHORS
John Levon <levon@movementarian.org> is the primary author. See the documentation
for other contributors.
