Профиль одиночной функции в gprof - PullRequest
6 голосов
/ 31 июля 2009

Возможно ли использовать gprof для профилирования линии одной функции в C ++?

Что-то вроде:

gprof -l -F function_name ...

, который, похоже, не работает.

Ответы [ 3 ]

2 голосов
/ 31 июля 2009

Это легко сделать с помощью valgrind . Это прекрасный инструмент, если у вас есть возможность использовать его в своей среде разработки. У него даже есть и графический интерфейс kcachegrind .

1 голос
/ 01 декабря 2009

Вы ищете подозрительную проблему с производительностью? Если у вас есть предварительное представление о том, где оно находится, скорее всего, его там нет. Если вы действительно хотите найти проблемы с производительностью, сначала вам может понадобиться заглянуть за некоторые мифы, увековеченные gprof .

1 голос
/ 31 июля 2009

Попробуйте использовать параметры с [symspec] для фильтрации результатов. gprof 2.18.0 говорит, что -F и -f устарели и вместо них использовать symspec.

Кроме того, -l может не работать с двоичными файлами, скомпилированными с более новыми версиями gcc. Попробуйте вместо этого gcov .

...