valgrind 使用备忘

本文介绍了Valgrind,一个无需侵入代码的C++程序性能分析工具,包括其安装步骤、使用callgrind进行性能测试、生成的文件解析以及如何通过qcachegrind可视化结果。此外,还提及了Valgrind如何检测内存泄漏及其基本用法。
摘要由CSDN通过智能技术生成

valgrind

valgrind 是 c++ 程序的一个性能分析工具

优点:无需侵入代码

安装 valgrind

CentOS:

yum install valgrind

qcachegrind

qcachegrind 用来图形化,显示性能点

下载安装包: https://sourceforge.net/projects/qcachegrindwin/

使用

类似以下命令:

valgrind --tool=callgrind --separate-threads=yes <命令>

说明:

  • –tool=callgrind 表示测试性能
  • –separate-threads=yes 表示按线程统计

测试程序退出时,会生成类似如下文件:

.
├── callgrind.out.22349
├── callgrind.out.5810
├── callgrind.out.5810-01
├── callgrind.out.5810-02
├── callgrind.out.5810-03
├── callgrind.out.5810-04
├── callgrind.out.5810-05
文件说明
callgrind.out.22349不带 --separate-threads=yes 参数,生成 1 个结果文件
callgrind.out.5810*带 --separate-threads=yes 参数,生成 1 系列结果文件

图形化展示

使用 qcachegrind 程序,点击打开按钮,选择结果文件,会有类似界面:
在这里插入图片描述

其他

valgrind 还可以查看内存泄漏,类似以下命令:

valgrind --leak-check=full --log-file=test_valgrind.log --num-callers=30 <命令>
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

fananchong2

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值