我正在尝试使用oprofile生成一个调用图,由于某种原因它失败了。 我正在使用以下命令来配置它:
opcontrol --shutdown
opcontrol --reset
opcontrol --no-vmlinux
opcontrol --separate=library
opcontrol --event=default
opcontrol --callgraph=20
opcontrol --status
我得到:
Daemon not running
Event 0: CPU_CLK_UNHALTED:100000:0:1:1
Separate options: library
vmlinux file: none
Image filter: none
Call-graph depth: 20
Buffer size: 10000000
CPU buffer watershed: 2560000
CPU buffer size: 160000
然后尝试生成调用图(例如使用opreport pdpd -l --callgraph -o profile_pdp.txt
)
我明白了:
30 0.7659 libpthread-2.5.so pthread_mutex_lock
30 100.000 libpthread-2.5.so pthread_mutex_lock [self]
我的Linux内核版本是2.6.18
我在运行opreport时遇到以下错误(不知道是否相关):
opreport: /usr/lib64/libstdc++.so.6: no version information available (required by opreport)
知道为什么我无法获得完整的调用图吗?
答案 0 :(得分:1)
发现问题,它是在调试32位exe时使用64位内核,不知道这是oprofile的一个问题。