Интерпретация данных callgrind - программирование
Подтвердить что ты не робот

Интерпретация данных callgrind

Мне нужен динамический график вызовов для моего приложения. Я запустил его с помощью инструмента callgrind (valgrind suite) и получил файл callgrind.out.xxxxx. Теперь я хочу сделать графическое представление этих данных. KCacheGrind мне не очень помогает, потому что он рисует ограниченную часть графика (рисует ~ 50 функций вместо ~ 1500 профилированных, и я не знаю, как это исправить). Как получить графическое изображение, в котором будут нарисованы все функции?

4b9b3361

Ответ 1

Хорошо, я нашел путь. Сгенерированный файл callgrind.out, который вы можете преобразовать в файл dot, используя gprof2dot (да, этот инструмент также может анализировать файлы callgrind). И затем вы можете получить изображение графика, используя dot -T<type> dotfile.dot -o graphfile.<type>

Ответ 2

Используя следующую команду для генерации graph.png с помощью gprof2dot

$./gprof2dot.py --format=callgrind --output=out.dot /tmp/cachegrind.out.1360843301.16101

$dot -Tpng out.dot -o graph.png