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 для получения дополнительной справочной информации.