22.5. Оптимизация программ. Профайлер gprof

We use cookies. Read the Privacy and Cookie Policy

22.5. Оптимизация программ. Профайлер gprof

Ваша программа работает медленно? Скорее всего, причина кроется в неэффективном, медленном алгоритме. Существуют программы, позволяющие определить время работы каждой функции вашей программы и всей программы в целом. Программы такого рода называются профайлерами. В вашем дистрибутиве может присутствовать один из профайлеров gprof, prof, profiler.

Сейчас мы рассмотрим программу gprof (The GNU Profiler), позволяющую определить время работы каждой функции. Основные ключи программы представлены в таблице 22.3.

Ключи командной строки gprof Таблица 22.3

Ключ Назначение -а He выводить информацию о статических функциях -b Не выводить описание каждого поля в итоговой таблице -с Включить эвристический анализ текстового сегмента объектного файла с целью создания статического графика вызовов -e имя_функции На выводить отчет о работе указанной функции и обо всех функциях, которые из нее вызываются -E имя функции Не обрабатывать указанную функцию и все функции, которые она вызывает -f имя_функции выводить информацию только об указанной функции и обо всех функциях, которые из нее вызываются -F имя_функции Обрабатывать только указанную функцию и все функции, которые из нее вызываются -k func1 func2 Не выводить информацию о вызове функции func2 из функции func1 -s Создание итогового файла gmon.sum -z Вывести функции с нулевым процессорным временем

Данный текст является ознакомительным фрагментом.