Сокращение имен функций в результатах профилирования с помощью gprof2dot.py

#python #profiling #gprof

#python #профилирование #gprof

Вопрос:

Обычно я работаю с gprof gprof2dot.py для профилирования кодов C . Новый код, с которым я работаю, использует очень длинные имена функций, так что графические результаты с gprof2dot.py это беспорядок. Интересно, как можно сократить имена функций, чтобы они помещались в маленьком поле.

Ответ №1:

Просто добавьте --strip (для сокращения) и --wrap (для переноса строк) к gprof2dot , и метки сузятся.

Это можно увидеть в документации gprof2dot здесь:

Метки узлов слишком широкие. Как я могу их сузить?

Метки узлов могут стать очень широкими при профилировании кода C из-за включения области видимости, аргументов функции и аргументов шаблона в искаженные имена функций C .

Если вам не нужна информация об аргументах функции и шаблона, то передайте -s / --strip параметр, чтобы удалить их.

Если вы хотите сохранить всю эту информацию или если метки все еще слишком широкие, вы можете передать -w / --wrap , чтобы обернуть метки. Обратите внимание, что, поскольку dot не переносит метки автоматически, поля метки не будут идеально выровнены.

Комментарии:

1. Привет @ frans, как вы заметили, ссылка в первом ответе в конечном итоге сгнила ; вот почему лучше скопировать вставку (с указанием авторства!) основные части ответа здесь на случай, если ссылка снова исчезнет.

Ответ №2:

Вы можете сузить метки, используя gprof2py. Это то, что вы искали?