Компилирую C++ программу с опцией -pg
Запускаю ./my_prog
Затем делаю gprof ./my_prog
Так как использую STL получаю совершенно нечитаемый вывод.
Поэтому пропускаю всё это через gSTLfilter.
Получаю вот что :
Flat profile:
Each sample counts as 0.01 seconds.
% cumulative self self total
time seconds seconds calls ms/call ms/call name
100.00 0.01 0.01 1776 0.01 0.01 _Rb_tree<
string, pair<string const, string>, _Select1st<
pair<string const, string> > >::end()
0.00 0.01 0.00 3614 0.00 0.00 less<string>::operator()(
string const &, string const &) const
0.00 0.01 0.00 3614 0.00 0.00 bool operator< <
char, char_traits<char> >(string const &, string const &)
0.00 0.01 0.00 3426 0.00 0.00 _Select1st<
pair<string const, string> >::operator()(pair<string const, string> &)
const
0.00 0.01 0.00 3426 0.00 0.00 _Rb_tree<
string, pair<string const, string>, _Select1st<
pair<string const, string> > >::_S_value(iter)
0.00 0.01 0.00 2749 0.00 0.00 const_iter
::_Rb_tree_iterator[in-charge](iter)
0.00 0.01 0.00 2548 0.00 0.00 _Rb_tree<
string, pair<string const, string>, _Select1st<
pair<string const, string> > >::_S_key(iter)
0.00 0.01 0.00 2408 0.00 0.00 _Rb_tree<
string, pair<string const, string>, _Select1st<
pair<string const, string> > >::_S_left(iter)
0.00 0.01 0.00 1060 0.00 0.00 _Rb_tree<
string, pair<string const, string>, _Select1st<
pair<string const, string> > >::_S_right(iter)
0.00 0.01 0.00 878 0.00 0.00 _Rb_tree<
string, pair<string const, string>, _Select1st<
pair<string const, string> > >::_S_key(_Rb_tree_node_base *)
0.00 0.01 0.00 787 0.00 0.00 _Rb_tree<
string, pair<string const, string>, _Select1st<
pair<string const, string> > >::_M_root() const
0.00 0.01 0.00 767 0.00 0.00 bool operator==<
pair<string const, string>, pair<string const, string> &, pair<
string const, string> *>(const_iter const &, const_iter const &)
0.00 0.01 0.00 742 0.00 0.01 map<string, string>::end()
0.00 0.01 0.00 629 0.00 0.00 const_iter
::_Rb_tree_iterator[in-charge](const_iter const &)
0.00 0.01 0.00 529 0.00 0.01 map<
string, string>::find(string const &)
.....
.....
.....
Видно, что практически все - STL!!!
Я использую связку gprof + cgprof + dot для визуализации вызовов ф-ий.
Очень хочется получить именно граф вызова МОИХ функций, а не
стандартных,системных и моих!
Как это сделать в gprof???
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум проблема с std::find по std::map с унарным предикатом (2015)
- Форум .bashrc просветленного (2016)
- Форум boost::asio вопрос по принципу работы кода из примеров (2016)
- Форум Ищу лаконичную реализацию range-based итераторов (2018)
- Форум Запуск сервера CS GO не понятные ошибки (2015)
- Форум [C++, boost::spirit::phoenix, std::get] Обернуть std::get в phoenix-овскую function (2011)
- Форум x11 кодировка (2020)
- Форум Исследование CryEngine 2 SDK 1.4.0 (2012)
- Форум Сломали C++23. (UPD: это шланг 17.0.6 корявый) (2024)
- Форум Реально ли использовать Anbox без systemd? (2023)