生成分析文件
命令行运行:
valgrind --tool=callgrind ./palmGateMachine
检测完毕之后会生成一个文件callgrind.out.26805, 后面的数字其实是这个待测进程的pid
可视化方法
可视化方法
可视化工具
kcachegrind
1、下载地址:
https://launchpad.net/ubuntu/trusty/+search?text=kcachegrind
百度云盘链接:https://pan.baidu.com/s/1rPRWMHi5WWnv2MRKbiHIVg
提取码:k4dd
我下载的这个,
直接双击安装
2、安装之后命令行 kcachegrind打开
open 选项选择callgrind.out.26805 文件 就可以了
3、如图
参数解释:
incl – 包含的运行时间
self --自我调用(根据stackOverflow上的解释,这两个区别是一个是全部的耗费时间或时间比, self是自我调用或类似于递归这种的,不明确)
called --调用次数
右边的图解释:
调用时间分布,如图,main函数里面有两个耗费时间的函数分别是
palmGateMachine::init 和QguiApplication::exec, 一个是主程序的初始化, 一个是主程序的事件循环, 这两个运行时间加起来,等于main函数的运行时间,
后续的也是依此类推
这里有一个简单的文档:
vi-hps-tw09-Kcachegrind-guide.pdf
链接:https://pan.baidu.com/s/1SxUQ2jlXz4snnHLodnoAfg
提取码:mc8a