初识valgrind

valgrind是一款非常优秀的性能调试工具,通过valgrind,可以完成以下几点工作:

1. Memcheck:内存错误检测

2. Cachegrind:缓存和分支预测分析

3. Callgrind:性能分析图

4. Helpgrind:线程错误分析系

5. Missif:堆分析

6. DRD:线程错误分析

valgrind的基本使用命令如下:

valgrind --tool=name  ./program args

name是使用到的工具名称,包括memcheck,cachegrind,callgrind,helgrind,drd,massif。如果不指定工具(valgrind ./program args),valgrind将默认使用memcheck工具。

使用valgrind需要注意一下几点问题:

1.如果使用memcheck工具,尽量关闭优化。因为优化后生成的程序,通过valgrind去进行内存错误检测,会出现未初始化的错误,或者丢失未初始化的信息(来自官网,暂未碰到);

2.编译时,使用-g选项,生成调试信息,是个不错的选项,这样valgrind的输出信息中会包含行号,能够更方便的定位代码;

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值