使用valgrind工具分析性能瓶颈

一、环境安装
1.安装valgrind工具
https://blog.csdn.net/qq_44872284/article/details/133775643

2.安装gprof2dot工具

sudo pip install gprof2dot

3.安装dot工具(Graphviz软件包,其中包含dot工具)

sudo apt-get install graphviz

二、分析性能瓶颈
1.编译自己的项目(在编译时要添加-g产生调试信息)

2.运行需要进行分析的项目,生成callgrind.out.pid文件(你也可以运行单元测试之类的可执行程序,callgrind是valgrind用来进行函数调用次数分析的插件,还可以通过–separate-threads=yes来把每个线程调用关系分开显示(生成多个数据文件,每个文件中表示的是一个thread的数据))

valgrind --tool=callgrind ./your_program

3.利用gprof2dot把生成的分析数据转换为dot格式(-n表示只显示调用次数大于等于指定值(百分比值)的函数,-e表示只显示执行时间大于等于指定值(百分比值)的函数,用于过滤掉一些不需要的函数调用信息。–root=root_function 可以指定生成的dot数据是以root_function为根节点的函数调用图形数据)

 gprof2dot -f callgrind -n10 -e10 callgrind.out.pid > callgrind.dot

4.利用dot工具把分析数据转换为图片(PNG格式)

dot -Tpng callgrind.dot -o callgrind.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值