我正在尝试使用massif
工具分析应用程序。我用这个命令运行它:
./valgrind.bin --tool=massif --stacks=yes --heap=yes --trace-children=yes --vgdb=yes /usr/bin/agl_proxy
该应用程序运行了很长时间。通常,当应用程序接收到中断信号时,它会干净地完成并massif
生成一个包含许多快照的配置文件:
desc: --stacks=yes --heap=yes
cmd: /usr/bin/app
time_unit: i
#-----------
snapshot=0
#-----------
time=0
mem_heap_B=0
mem_heap_extra_B=0
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=1
#-----------
time=4501979
mem_heap_B=0
mem_heap_extra_B=0
mem_stacks_B=1480
heap_tree=empty
但是,此特定应用程序只是转储库存并挂起,而没有正确退出,因此没有正确生成结果文件。我可以vgdb
在应用程序运行时获取快照。但它只生成一个快照。
有什么方法可以合并快照吗?我尝试将快照添加到带有snapshot=#
标题的文件中,但MassifVisualizer抱怨格式。也许可以选择将它们或某些工具结合起来。