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的输出信息中会包含行号,能够更方便的定位代码;

初识valgrind相关推荐

  1. day3----编码-集合-深浅copy-文件操作-函数初识

    day3----编码-集合-深浅copy-文件操作-函数初识 本文档主要内容: 一 编码 二 集合 三 深浅copy 四 文件操作 五 函数初识 首先,我们来看看两个字符串的比较 打开cmd,进入do ...

  2. ⑥python模块初识、pyc和PyCodeObject

    一.模块初识(一) 模块,也叫库.库有标准库第三方库. 注意事项:文件名不能和导入的模块名相同 1. sys模块 import sys print(sys.path) #打印环境变量 print(sy ...

  3. 使用valgrind检测ATS插件中的内存泄露

    一.内存错误出现的场景 这几天在重构ATS插件代码的过程中遇到了烦人的内存泄露问题, 周五周六连续两天通过走查代码的方法,未能看出明显的导致内存错误的代码, 同时也觉得C和C++混合编程得到一个动态库 ...

  4. 在Ubuntu 14.04 64bit上安装Valgrind并检查内存泄露

    valgrind官网:http://valgrind.org/ 1.安装方法 第一种方式:下载目前最新的源码,编译安装,在服务器上推荐这种方式 wget http://valgrind.org/dow ...

  5. valgrind 使用 kcachegrind 查看函数运行时间

    安装 首先安装运行分析函数时间的工具 kcachegrind 下载安装包 http://kcachegrind.sourceforge.net/,下载最新的 tar.gz 文件 解压文件,进入解压之后 ...

  6. linux平台下QtCreator中集成Valgrind系列工具

    linux平台下QtCreator中集成Valgrind系列工具 ###1.valgrind 安装 valgrind 安装 2.打开QtCreator >> Analyze 你就会发现 这 ...

  7. linux valgrind 安装和使用

    linux valgrind 安装和使用 安装过程没这么复杂. 直接命令行: sudo apt-get install valgrind Valgrind 是个开源的工具,功能很多.例如检查内存泄漏工 ...

  8. linux valgrind memCheck ---内存检查工具的可视化方法valkyrie

    linux valgrind memCheck -内存检查工具的可视化方法valkyrie linux valgrind Memcheck–内存检查工具 1.安装valgrind valgrind 安 ...

  9. linux valgrind Memcheck--内存检查工具

    linux valgrind Memcheck–内存检查工具 使用方法: 注意,这里要用debug版本,如果是release的运行文件,则用debug编译出来的可执行文件替换 输出到终端: valgr ...

最新文章

  1. CodeSmith应用(一)
  2. Floyd算法实验报告
  3. git merge 和 git merge --no-ff
  4. 意外的服务器响应_响应式系统reactive system初探
  5. 超全!Python获取某一日期是“星期几”的6种方法!
  6. c# async/await编程
  7. c++ 虚函数的实现机制
  8. facade java_Java设计模式之Facade模式
  9. 解决centos下缺少sasl.h的问题(#include <sasl/sasl.h>)
  10. c语言向自定数组_C语言怎么向自定义函数中传入一个数组,处理完再返回新的数组?...
  11. wordpress 调用css,WordPress折腾记-精简CSS及JS在插件中的调用
  12. MT6737 Audio之TinyAlsa
  13. 从标准输入读取几行输入。每行输入都要打印到标准输出上,前面加上行号。...
  14. 皮尔逊相关系数php,若两变量X和y之间的Pearson相关系数大于0.3且小于0.5,则说明()。...
  15. 用91卫图助手获取研究区(勾画研究矢量shp格式范围等)
  16. 常用原型图绘制工具比较
  17. android horizontalscrollview顶部导航,带有居中效果的HorizontalScrollView使用说明
  18. 萤石云视频Android SDK接口使用说明
  19. 如何在电脑中找到Win10自带锁屏壁纸
  20. 不占广告位增加网站收入揭秘

热门文章

  1. 使用jQuery开发一个超酷的倒计时效果
  2. 12种降低开发者工作效率的方法
  3. 抖音小店运费险怎么理赔?
  4. Android studio 从相册取出照片 和 点击拍照
  5. UIButton: set image for selected-highlighted state
  6. python解析tcp数据包-python解析获取发往本机的数据包并打印
  7. GSM手机、CDMA手机、3G手机、4G手机
  8. docker安装+配置镜像+命令操作+数据卷+网络管理+DockerFile+镜像服务+项目部署+[高级使用]
  9. 【bzoj4976】宝石镶嵌
  10. 安捷伦16803A的一种简单用法小结