Я пользователь Ubuntu 16.04. Для профилирования c++
программа Я использую инструмент perf
. Так я бегу:Профиль C++ program in perf
perf record ./myprogram myprogram_args
perf report
Теперь, когда у меня есть выход:
14,52% CSim2Sim libsimgrid.so.3.13.90 [.] lmm_solve
4,40% CSim2Sim libsimgrid.so.3.13.90 [.] lmm_update_modified_set_rec
4,05% CSim2Sim libc-2.23.so [.] _int_malloc
3,30% CSim2Sim libsimgrid.so.3.13.90 [.] simgrid::surf::Model::next_occuring_event_lazy
2,19% CSim2Sim libc-2.23.so [.] _int_free
........................................................................
Я вижу только «глубина» и библиотечные вызовы из моей программы. Как я могу получить отчет от перфоратора, подобный этому шаблону? (Что-то вроде этого):
4,52% CSim2Sim my_function1(int argc, char* argv[])
3,52% CSim2Sim my_function2(int argc, char* argv[])
3,52% CSim2Sim my_function3(int argc, char* argv[])
1,52% CSim2Sim my_function4(int argc, char* argv[])
Возможно, вам нужно скомпилировать и установить ссылку с опцией '-g'. –
@OlafDietsche Я пробовал, но все одно и то же = ( –
Вы пробовали [* this *] (http://stackoverflow.com/a/378024/23771)? –