此内容没有您所选择的语言版本。

29.5.2. Using opreport on a Single Executable


To retrieve more detailed profiled information about a specific executable, use opreport:
~]# opreport mode executable
executable must be the full path to the executable to be analyzed. mode must be one of the following:
-l
List sample data by symbols. For example, the following is part of the output from running the command opreport -l /lib/tls/libc-version.so:
samples % symbol name 
12 21.4286 __gconv_transform_utf8_internal 
5 8.9286 _int_malloc 4 7.1429 malloc 
3 5.3571 __i686.get_pc_thunk.bx 
3 5.3571 _dl_mcount_wrapper_check 
3 5.3571 mbrtowc 
3 5.3571 memcpy 
2 3.5714 _int_realloc 
2 3.5714 _nl_intern_locale_data 
2 3.5714 free 
2 3.5714 strcmp 
1 1.7857 __ctype_get_mb_cur_max 
1 1.7857 __unregister_atfork 
1 1.7857 __write_nocancel 
1 1.7857 _dl_addr 
1 1.7857 _int_free 
1 1.7857 _itoa_word 
1 1.7857 calc_eclosure_iter 
1 1.7857 fopen@@GLIBC_2.1 
1 1.7857 getpid 
1 1.7857 memmove 
1 1.7857 msort_with_tmp 
1 1.7857 strcpy 
1 1.7857 strlen 
1 1.7857 vfprintf 
1 1.7857 write
The first column is the number of samples for the symbol, the second column is the percentage of samples for this symbol relative to the overall samples for the executable, and the third column is the symbol name.
To sort the output from the largest number of samples to the smallest (reverse order), use -r in conjunction with the -l option.
-i symbol-name
List sample data specific to a symbol name. For example, the following output is from the command opreport -l -i __gconv_transform_utf8_internal /lib/tls/libc-version.so:
samples % symbol name 
12 100.000 __gconv_transform_utf8_internal
The first line is a summary for the symbol/executable combination.
The first column is the number of samples for the memory symbol. The second column is the percentage of samples for the memory address relative to the total number of samples for the symbol. The third column is the symbol name.
-d
List sample data by symbols with more detail than -l. For example, the following output is from the command opreport -l -d __gconv_transform_utf8_internal /lib/tls/libc-version.so:
vma samples % symbol name 
00a98640 12 100.000 __gconv_transform_utf8_internal 
00a98640 1 8.3333 
00a9868c 2 16.6667 
00a9869a 1 8.3333 
00a986c1 1 8.3333 
00a98720 1 8.3333 
00a98749 1 8.3333 
00a98753 1 8.3333 
00a98789 1 8.3333 
00a98864 1 8.3333 
00a98869 1 8.3333 
00a98b08 1 8.3333
The data is the same as the -l option except that for each symbol, each virtual memory address used is shown. For each virtual memory address, the number of samples and percentage of samples relative to the number of samples for the symbol is displayed.
-x symbol-name
Exclude the comma-separated list of symbols from the output.
session:name
Specify the full path to the session or a directory relative to the /var/lib/oprofile/samples/ directory.
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.