我使用Valgrind Massif来测量我的程序的内存使用情况。实际上,我知道我在哪里分配或释放内存(大致),所以我想手动拍摄快照。此外,我希望比较多次运行的结果,因此手动拍摄快照在比较中更有意义。
有没有一种程序化的方法来做到这一点?
发布于 2021-04-08 16:41:41
您可以使用massif monitor命令指示massif拍摄快照。
请参阅https://www.valgrind.org/docs/manual/ms-manual.html#ms-manual.monitor-commands
这样的监视器命令可以使用vgdb从shell执行,也可以使用客户端请求VALGRIND_MONITOR_COMMAND从程序内部执行。
请参阅https://www.valgrind.org/docs/manual/manual-core-adv.html#manual-core-adv.clientreq
请注意,如果您有一个对应于监视器命令的特定客户端请求,则最好使用该特定客户端请求,而不是“通用”VALGRIND_MONITOR_COMMAND。
在massif的情况下,没有特定的客户端请求。
https://stackoverflow.com/questions/66997015
复制相似问题