全部博文(75)
分类: LINUX
2008-08-06 11:45:28
7. Appendix
PROFILE SPECIFICATIONSAll 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. OpreportNAME 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 / -xDo 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. OpannotateNAME 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.