Я пытаюсь создать callgraph с помощью oprofile, и по какой-то причине он терпит неудачу. Я использую следующую команду, чтобы сконфигурировать его:OProfile не удалось создать callgraph
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)
Любая идея, почему я не могу получить полный граф вызовов?
Обнаружена проблема, она работала с 64-битным ядром при отладке 32-разрядного exe, не знаю, что это проблема для oprofile – Roi