全部博文(75)
分类: LINUX
2008-08-06 11:45:28
7. Appendix
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 opreport ; 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/oprofiled,*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 , 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.
Opreport
NAME
opreport - produce symbol or binary image summaries
SYNOPSIS
opreport [ options ] [profile specification]
DESCRIPTION
opreport outputs binary image summaries, or per-symbol data, from OProfile profiling sessions. See oprofile(1) for how to write profile specifications.
OPTIONS
--accumulated / -a
Accumulate sample and percentage counts in the symbol list.
--debug-info / -g
Show source file and line for each symbol.
--demangle / -D none|smart|normal
none: no demangling. normal: use default demangler (default) smart: use pattern-matching to make C++ symbol demangling more readable.
--callgraph / -c
Show call graph information if available.
--details / -d
Show per-instruction details for all selected symbols.
--exclude-dependent / -x
Do not include application-specific images for libraries, kernel modules and the kernel. This option only makes sense if the profile ses‐
sion used --separate.
--exclude-symbols / -e [symbols]
Exclude all the symbols in the given comma-separated list.
--global-percent / -%
Make all percentages relative to the whole profile.
--help / -? / --usage
Show help message.
--image-path / -p [paths]
Comma-separated list of additional paths to search for binaries. This is needed to find modules in kernels 2.6 and upwards.
--root / -R [path]
A path to a filesystem to search for additional binaries.
--include-symbols / -i [symbols]
Only include symbols in the given comma-separated list.
--long-filenames / -f
Output full paths instead of basenames.
--merge / -m [lib,cpu,tid,tgid,unitmask,all]
Merge any profiles separated in a --separate session.
--no-header
Don’t output a header detailing profiling parameters.
--output-file / -o [file]
Output to the given file instead of stdout.
--reverse-sort / -r
Reverse the sort from the default.
--session-dir=dir_path
Use sample database out of directory dir_path instead of the default location (/var/lib/oprofile).
--show-address / -w
Show each symbol’s VMA address.
--sort / -s [vma,sample,symbol,debug,image]
Sort the list of symbols by, respectively, symbol address, number of samples, symbol name, debug filename and line number, binary image filename.
--symbols / -l
List per-symbol information instead of a binary image summary.
--threshold / -t [percentage]
Only output data for symbols that have more than the given percentage of total samples.
--verbose / -V [options]
Give verbose debugging output.
--version / -v
Show version.
--xml / -X
Generate XML output.
Opannotate
NAME
opannotate - produce source or assembly annotated with profile data
SYNOPSIS
opannotate [ options ] [profile specification]
DESCRIPTION
opannotate outputs annotated source and/or assembly from profile data of an OProfile session. See oprofile(1) for how to write profile specifications.
OPTIONS
--assembly / -a
Output annotated assembly. If this is combined with --source, then mixed source / assembly annotations are output.
--demangle / -D none|smart|normal
none: no demangling. normal: use default demangler (default) smart: use pattern-matching to make C++ symbol demangling more readable.
--exclude-dependent / -x
Do not include application-specific images for libraries, kernel modules and the kernel. This option only makes sense if the profile session used --separate.
--exclude-file [files]
Exclude all files in the given comma-separated list of glob patterns.
--exclude-symbols / -e [symbols]
Exclude all the symbols in the given comma-separated list.
--help / -? / --usage
Show help message.
--image-path / -p [paths]
Comma-separated list of additional paths to search for binaries. This is needed to find modules in kernels 2.6 and upwards.
--root / -R [path]
A path to a filesystem to search for additional binaries.
--include-file [files]
Only include files in the given comma-separated list of glob patterns.
--include-symbols / -i [symbols]
Only include symbols in the given comma-separated list.
--objdump-params [params]
Pass the given parameters as extra values when calling objdump.
--output-dir / -o [dir]
Output directory. This makes opannotate output one annotated file for each source file. This option can’t be used in conjunction with --assembly.
--search-dirs / -d [paths]
Comma-separated list of paths to search for source files. You may need to use this option when the debug information for an image contains relative paths.
--base-dirs / -b [paths]
Comma-separated list of paths to strip from debug source files, prior to looking for them in --search-dirs.
--session-dir=dir_path
Use sample database out of directory dir_path instead of the default location (/var/lib/oprofile).
--source / -s
Output annotated source. This requires debugging information to be available for the binaries.
--threshold / -t [percentage]
Only output data for symbols that have more than the given percentage of total samples.
--verbose / -V [options]
Give verbose debugging output.
--version / -v
Show version.