gperftools
安装
- 下载 gperftools-2.0.tar.gz
- 执行以下命令安装:
1
2
3
4
5
6tar zxvf gperftools-2.0.tar.gz
cd gperftools-2.0
export PATH=/opt/compiler/gcc-4.8.2/bin:$PATH
./configure --prefix=~/gperftools --enable-frame-pointers
make && make install # 如果编译不过,可尝试将configure生成的Makefile CXXFLAGS = -g -O2 配置改为 CXXFLAGS = -g -O2 -fpermissive
export PATH=~/gperftools/bin:$PATH
CPU Profiler
用来分析性能瓶颈, 监控各函数的 cpu 耗时.
- 添加头文件
#include "gperftools/profiler.h"
或#include "google/profiler.h"
- 在要监控的代码开头位置添加
ProfilerStart("cpu.perf");
, 在结尾处添加ProfilerStop();
即可. - 编译时链接指定链接参数
-I~/gperftools/include -L~/gperftools/lib -lprofiler
- 程序执行结束之后, 文件夹下会出现
cpu.perf
文件, 用命令pprof --text /path/to/binary cpu.prof
用文本形式查看结果.
如果使用
--gv
生成图形化结果, 需要安装graphviz
(其中包含了 dot 绘图工具) 和 gv.
参考
Heap Profiler
- 添加头文件
#include "gperftools/heap-profiler.h"
或#include "google/heap-profiler.h"
- 在要监控的代码开头位置添加
HeapProfilerStart("heap.perf");
, 在结尾处添加HeapProfilerStop();
即可.
参考