3.5.3. Valgrind


Valgrind 提供大量探测和分析工具以便帮助您改进性能并修正您的程序。这些工具可以探测与内存和线程有关的错误,以及堆、栈和阵列过度运行,以便您在程序代码中轻松定位并修改错误。他们还可以分析缓存,堆,以及分支预测以便识别增加程序速度,减少程序内存使用的因素。
Valgrind 通过在综合 CPU 运行分析您的程序,并检测其执行的程序代码。然后它会输出“说明”明确为用户指定的文件描述符、文件或者网络插槽鉴别出执行程序所涉及的每个进程。检测等级根据 Valgrind 工具的使用及设置而有所不同,但重要的是注意执行检测的代码的时间比一般执行代码要长 4-50 倍。
Valgrind 可以在您的程序中原封不动地使用,不需要重新编译。但因为 Valgrind 使用调试信息锁定代码中的问题,如果您的程序以及支持库无法使用启用的调试信息编译,则强烈建议您将重新编译包含在这个信息中。
从红帽企业版 Linux 6.4 开始 Valgrind 整合了 gdb (GNU Project Debugger) 以改进调试效率。
有关 Valgrind 的详情请参考《开发者指南》,地址为 http://access.redhat.com/site/documentation/Red_Hat_Enterprise_Linux/。或者在安装 valgrind 软件包后查看 man valgrind 命令。附带的文档也可在此找到:
  • /usr/share/doc/valgrind-<version>/valgrind_manual.pdf
  • /usr/share/doc/valgrind-<version>/html/index.html
有关如何使用 Valgrind 分析系统内存的详情请参考 第 5.3 节 “使用 Valgrind 简要描述内存使用”
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.