CPU热点分析——pprof (gperftools)使用

本文详细介绍如何使用pprof(gperftools)进行程序性能分析。从安装配置到实际应用,包括设置编译链接选项、运行程序以及生成可视化的性能报告等关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

pprof (gperftools)使用

谷歌的工具集,可查看CPU采样结果。pprof (google-perftool),用于来分析程序,必须保证程序能正常退出。使用步骤:

1.准备工具,先安装工具包

libunwind-1.1.tar.gz

gperftools-2.1.tar.gz

解压后 configure到系统默认路径即可,之后直接-lprofiler

 

2.再安装图形工具

sudo yum install "graphviz*"

sudo yum install ghostscript

GPerfTools="/home/zhifeng.czf/tools/gperftools-bin"


3. 自己程序增加编译链接选项:

-lprofiler

 

附:

GPerlToos=/home/zhifeng.czf/tools/gperftools-bin

CCFLAGS=-fno-omit-frame-pointer-g

ALL_BINS=test_gperf

all:$(ALL_BINS)

test_gperf:test_gperf.o

         g++ $(CCFLAGS) -o $@ $^-L$(GPerfTools)/lib -Wl, -Bdynamic -lprofiler

.cpp.o:

         g++ $(CCFLAGS) -c -I./-I$(GPerfTools)/include -fPIC -o $@ $<

clean:

         rm -rf $(ALL_BINS) *.o


4. 运行:

CPUPROFILE=./profile CPUPROFILESIGNAL=12 ./xlongsrv

 

此外,对于不能正常结束的程序,如果CPUPROFILESIGNAL的方式不成功,可以自己调用:

ProfilerStart(), ProfilerStop();

 

5.查看结果

pprof --pdf ./xlongsrv ./profile.0  >  graph.pdf

pprof --gif ./xlongsrv ./profile.0  >  graph.gif

/home/zhifeng.czf/tools/gperf/bin/pprof--callgrind ./XLongSrv.astar.perf ./bs.prof > graph.callgrind

/home/zhifeng.czf/tools/gperf/bin/pprof-text ./XLongSrv.astar.perf ./bs.prof



评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值