valgrind генерирует очень большое xtree

Valgrind 3.13 поддерживается xtree http://valgrind.org/docs/manual/dist.news.html

Я использовал это с массивом

 valgrind --tool=massif --xtree-memory=full --xtree-memory-file=xtmemory.ms.%p 

Затем он сгенерировал файл 16G. Он слишком велик для загрузки с помощью визуализатора массива. Как лучше использовать xtree-memory?

1 ответ

Отчет массива содержит недетализированные снимки и некоторые подробные снимки. Подробные снимки показывают только выделенную память. Трассировки стека, которые находятся ниже порога массива, будут перегруппированы вместе (т.е. детали трассировки стека ниже пороговых значений не приводятся).

Xtree, запрошенный с параметром --xtree-memory=full, содержит 6 различных подробных снимков, дающих в настоящее время выделенные байты / блоки, общее количество выделенных байтов / блоков, общее количество освобожденных байтов / блоков. В этом отчете xtree отсутствует пороговая фильтрация, поэтому, если в вашем приложении много трассировок стека, которые занимают небольшую долю выделенного или свободного места, в отчете xtree массива будет гораздо больше данных, чем в моментальных снимках.

Вместо использования формата.ms для файла --xtree-memory-file вы можете использовать формат.kcg и проверить его с помощью kcachegrind: формат kcachegrind более эффективен для хранения большого количества трассировок стека.

См. http://www.valgrind.org/docs/manual/manual-core.html для получения дополнительной справочной информации.

Другие вопросы по тегам