valgrind之callgrind性能优化

栏目: C · 发布时间: 6年前

内容简介:它主要用来检查程序中函数调用过程中各个函数的CPU消耗,以便开发者分析程序中各个函数的CPU使用情况,方便优化提供程序的运行效率。编译程序时使用–g –O0,即编译调试版,不优化程序性能。如:gcc -g -O0 sample.c –o sample程序运行结束后,会在当前目录下生成callgrind.out.($pid)分析日志

1.callgrind概述

它主要用来检查程序中函数调用过程中各个函数的CPU消耗,以便开发者分析程序中各个函数的CPU使用情况,方便优化提供程序的运行效率。

2 安装valgrind

$sudo apt install valgrind

3 编译

编译程序时使用–g –O0,即编译调试版,不优化程序性能。如:gcc -g -O0 sample.c –o sample

4 调试运行

$valgrind --tool=callgrind ./svpushlnx

程序运行结束后,会在当前目录下生成callgrind.out.($pid)分析日志

5 分析CPU消耗

1.4.1 安装kcachegrind

$sudo apt install kcachegrind

1.4.2 分析callgrind.out.($pid)日志文件

$kcachegrind callgrind.out.24034

valgrind之callgrind性能优化

如上图所示,lr为执行指令占程序运行过程中总指令的百分率。lr越高的函数,则说明其消耗的CPU资源越高。优化的空间就越大。当用户选中左边方框的函数后右下角会出现该函数的子调用过程(调用栈)已及各个子过程的ir,用户可以双击子过程进入子过程的调用栈。而右上角则显示,有哪些函数可能会调用被选中的函数。


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

我的第一本编程书

我的第一本编程书

[日]平山尚 / 张沈宇 / 人民邮电出版社 / 2016-7 / 79.00元

写这本书之前,作者一直在摸索一种最有利于入门者学编程的方法,并应用到教学当中。经过两年的教学实践,他确信他的方法是有效的,于是便有了这本书。这本书面向的是完全没有接触过编程的读者。作者将门槛设置得非常低,读者不需要懂得变量、函数这些名词(这些名词在书中也不会出现),不需要会英语,完全不需要查阅其他书籍,只需要小学算术水平即可。这本书给初学者非常平缓的学习曲线,有利于为之后的进阶学习打下坚实的基础。一起来看看 《我的第一本编程书》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

在线进制转换器
在线进制转换器

各进制数互转换器

随机密码生成器
随机密码生成器

多种字符组合密码