Linux 性能分析工具总结

介绍下日常开发使用的分析工具,如有新的,请在评论中指出。

一. gprof,打印出程序运行中各个函数消耗的时间,可以帮助程序员找出众多函数中耗时最多的函数。使用过程简单,只需三个步骤。

  1. 使用-pg编译、链接选项开启分析功能。
  2. 执行程序,会在当前目录生成gmon.out文件。
  3. 使用gprof处理gmon.out得到分析文件。

例子:

//使用-pg选项编译、链接
gcc -o gprofTest gprofTest.c -pg

//执行程序会在本地生成gmon.out文件
./gprofTest

//使用gprof处理gmon.out文件得到分析文件
//gprof有一些参数选项,可以控制生成的分析文件格式。
gprof gprofTest gmon.out > analysis.txt



gprof得到的analysis.txt分析文件,从中可以看到程序耗时、函数耗时、函数调用关系、函数调用次数等信息。对于程序的优化帮助很大。

注意事项:

1. 系统调用函数无法监控。

2. 非-pg编译的共享库也无法监控。

 

二. 使用time命令,Linux提供time命令,可以得到程序执行的时间,包括总时间、用户态时间以及系统调用时间。不过,得到的信息略显粗糙,只提供一个大概的情况,对于具体的函数调用得不到分析。

 

参考连接。

1. GNU gprof 

2. C/C++性能测试工具 GNU gprof

3. GProf去优化C+居然可以做到如此完美真是天一对难兄难弟

=============================================================================================

Linux应用程序、内核、驱动、后台开发交流讨论群(745510310),感兴趣的同学可以加群讨论、交流、资料查找等,前进的道路上,你不是一个人奥^_^。
 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值