1OPROFILE(1) General Commands Manual OPROFILE(1)
2
3
4
6 oprofile - a system-wide profiler
7
9 opcontrol [ options ]
10 opreport [ options ] [ profile specification ]
11 opannotate [ options ] [ profile specification ]
12 oparchive [ options ] [ profile specification ]
13 opgprof [ options ] [ profile specification ]
14
16 OProfile is a profiling system for systems running Linux 2.2, 2.4, and
17 2.6. Profiling runs transparently in the background and profile data
18 can be collected at any time. OProfile makes use of the hardware per‐
19 formance counters provided on Intel, AMD, and other processors, and
20 uses a timer-interrupt based mechanism on CPUs without counters. OPro‐
21 file can profile the whole system in high detail.
22 For a gentle guide to using OProfile, please read the HTML documenta‐
23 tion listed in SEE ALSO.
24
26 opcontrol is used for starting and stopping the OProfile daemon, and
27 providing set-up parameters.
28
30 opreport gives image and symbol-based profile summaries for the whole
31 system or a subset of binary images.
32
34 opannotate can produce annotated source or mixed source and assembly
35 output.
36
38 oparchive produces oprofile archive for offline analysis
39
41 opgprof can produce a gprof-format profile for a single binary.
42
43
45 All of the post-profiling tools can take profile specifications, which
46 is some combination of the following parameters. Enclosing part of a
47 profile specification in curly braces { } can be used for differential
48 profiles with opreport
49
50
51 archive:archive
52 Path to the archive to inspect, as generated by oparchive
53
54 session:sessionlist
55 A comma-separated list of session names to resolve in. Absence
56 of this tag, unlike all others, means "the current session",
57 equivalent to specifying "session:current".
58
59 session-exclude:sessionlist
60 A comma-separated list of sessions to exclude.
61
62 image:imagelist
63 A comma-separated list of image names to resolve. Each entry may
64 be relative path, glob-style name, or full path, e.g. opreport
65 'image:/usr/bin/oprofiled,*op*,./oprofpp'
66
67 image-exclude:imagelist
68 Same as image:, but the matching images are excluded.
69
70 lib-image:imagelist
71 Same as image:, but only for images that are for a particular
72 primary binary image (namely, an application). This only makes
73 sense to use if you're using --separate. This includes kernel
74 modules and the kernel when using --separate=kernel.
75
76 lib-image-exclude:imagelist
77 Same as <option>lib-image:</option>, but the matching images are
78 excluded.
79
80 event:eventname
81 The symbolic event name to match on, e.g. event:DATA_MEM_REFS.
82
83 count:eventcount
84 The event count to match on, e.g. event:DATA_MEM_REFS
85 count:30000.
86
87 unit-mask:maskvalue
88 The unit mask value of the event to match on, e.g. unit-mask:1.
89
90 cpu:cpulist
91 Only consider profiles for the given numbered CPU (starting from
92 zero). This is only useful when using CPU profile separation.
93
94 tgid:pidlist
95 Only consider profiles for the given task groups. Unless some
96 program is using threads, the task group ID of a process is the
97 same as its process ID. This option corresponds to the POSIX
98 notion of a thread group. This is only useful when using per-
99 process profile separation.
100
101 tid:tidlist
102 Only consider profiles for the given threads. When using recent
103 thread libraries, all threads in a process share the same task
104 group ID, but have different thread IDs. You can use this option
105 in combination with tgid: to restrict the results to particular
106 threads within a process. This is only useful when using per-
107 process profile separation.
108
109
111 No special environment variables are recognised by oprofile.
112
113
115 $HOME/.oprofile/
116 Configuration files
117
118 /root/.oprofile/daemonrc
119 Configuration file for opcontrol
120
121 /usr/share/oprofile/
122 Event description files used by OProfile.
123
124 /var/lib/oprofile/oprofiled.log
125 The user-space daemon logfile.
126
127 /var/lib/oprofile/opdev, /var/lib/oprofile/ophashmapdev, /var/lib/opro‐
128 file/opnotedev
129 The device files for communication with the Linux 2.4 kernel
130 module.
131
132 /dev/oprofile
133 The device filesystem for communication with the Linux 2.6 ker‐
134 nel module.
135
136 /var/lib/oprofile/samples/
137 The location of the generated sample files.
138
139
141 This man page is current for oprofile-0.9.2.
142
143
145 /usr/share/doc/oprofile/, opcontrol(1), opreport(1), opannotate(1),
146 oparchive(1), opgprof(1), gprof(1), readprofile(1), CPU vendor archi‐
147 tecture manuals
148
149
151 oprofile is Copyright (C) 1998-2004 University of Manchester, UK, John
152 Levon, and others. OProfile is released under the GNU General Public
153 License, Version 2, or (at your option) any later version.
154
156 John Levon <levon@movementarian.org> is the primary author. See the
157 documentation for other contributors.
158
159
160
1614th Berkeley Distribution Fri 23 March 2007 OPROFILE(1)