性能测试工具CPU profiler(gperftools)的使用心得

按照 http://www.cnblogs.com/persistentsnail/p/3294843.html,yum安装gperftools-devel 和 libunwind
安装gperftools-devel的时候,同时就安装了 gperftools。如何使用,主要参考了 https://wiki.geany.org/howtos/profiling/gperftools,才入的门,回头再看第一个链接,很多地方就能看懂了。

方式1

静态连接profiler
有的时候我们需要静态连接profiler库(比如在嵌入式系统下做性能分析).根据gperftools的官方说明:README,静态连接profiler不能使用profiler.a静态库,要用libtcmalloc_and_profiler.a替代。
对第二个链接,我的libprofile.so是装到/usr/lib64下的,必须要执行:
LD_PRELOAD=/usr/lib64/libprofiler.so CPUPROFILE=/tmp/geany.prof geany, 忽略 LD_PRELOAD是不行的。(有的参考资料不需要这个,这有待将来验证)
看分析结果:

pprof --web /usr/bin/geany /tmp/geany.prof
里面同时提到可以不从一开始就做性能分析,

LD_PRELOAD=/usr/lib64/libprofiler.so CPUPROFILE=/tmp/geany.prof CPUPROFILESIGNAL=12 geany
想要做分析的时候,发送信号: killall -12 geany

想停止分析,同样发信号: killall -12 geany

最后看分析结果: pprof --web /usr/local/bin/geany /tmp/geany.prof.0

注意最后有个0。

本来带打算对自己的模块:加入 http://blog.csdn.net/zougangx/article/details/8836749 提到的方法,对特定的程序块做分析,因为要尽快提交一版,先搁置这个实践。但是把其中的关键内容拷贝在下面:

方式2

–1)使用ProfilerStart("CPUProfile"),ProfilerStop() (需要包含头文件google/profiler.h)
–2)如果不设定程序块,需要设置环境变量CPUProfile
注:CPUProfile为生成的结果数据文件的文件名
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值