perf + 火焰图分析程序性能 - 刘志鹏的Blog - 博客园

标签: | 发表时间:2020-06-23 14:37 | 作者:
出处:https://www.cnblogs.com

1、perf命令简要介绍

性能调优时,我们通常需要分析查找到程序百分比高的热点代码片段,这便需要使用 perf record 记录单个函数级别的统计信息,并使用 perf report 来显示统计结果;

perf record

perf report

举例:

sudo perf record -e cpu-clock -g -p 2548

-g 选项是告诉perf record额外记录函数的调用关系

-e cpu-clock 指perf record监控的指标为cpu周期

-p 指定需要record的进程pid

 

程序运行完之后,perf record会生成一个名为perf.data的文件,如果之前已有,那么之前的perf.data文件会被覆盖

获得这个perf.data文件之后,就需要perf report工具进行查看

perf report-i perf.data

-i 指定要查看的文件

 以诊断mysql为例,report结果:

$sudo perf report  -i perf.data

 

这种格式很不直观

 2、使用火焰图展示结果

1、Flame Graph项目位于GitHub上: https://github.com/brendangregg/FlameGraph

2、可以用git将其clone下来:git clone  https://github.com/brendangregg/FlameGraph.git

 

我们以perf为例,看一下flamegraph的使用方法:

1、第一步

$sudo perf record -e cpu-clock -g -p 28591

Ctrl+c结束执行后,在当前目录下会生成采样数据perf.data.

2、第二步

用perf script工具对perf.data进行解析

perf script -i perf.data &> perf.unfold

3、第三步

将perf.unfold中的符号进行折叠:

#./stackcollapse-perf.pl perf.unfold &> perf.folded

4、最后生成svg图:

./flamegraph.pl perf.folded > perf.svg

 

相关 [perf 火焰 分析] 推荐:

perf + 火焰图分析程序性能 - 刘志鹏的Blog - 博客园

- -
性能调优时,我们通常需要分析查找到程序百分比高的热点代码片段,这便需要使用 perf record 记录单个函数级别的统计信息,并使用 perf report 来显示统计结果;. -g 选项是告诉perf record额外记录函数的调用关系. -e cpu-clock 指perf record监控的指标为cpu周期.

perf学习-linux自带性能分析工具

- - ITeye博客
目前在做性能分析的事情,之前没怎么接触perf,找了几篇文章梳理了一下,按照问题的形式记录在这里. linux性能调优工具,32内核以上自带的工具,软件性能分析. 在2.6.31及后续版本的Linux内核里,安装perf非常的容易. 几乎能够处理所有与性能相关的事件. 指在处理器或者操作系统中发生,可能影响到程序性能的硬件事件或者软件事情.

[译]Java火焰图

- - 鸟窝
在我的前一天转的一篇文章中( [转]go's march to low latency gc),Twitch的Rhys Hiltner使用火焰图(FlameGraph)来分析Go程序的性能给我留下了深刻的印象,它使用Brendan Gregg创建的 火焰图工具生成直观的图像,很方便的分析Go的各个方法占用的CPU的时间.

蜡烛火焰中发现纳米钻石颗粒

- 微笑!?~ - Solidot
根据发表在英国《化工通讯》杂志的报告,英国华人学者周午纵和同事发现,在蜡烛火焰中存在着纳米级钻石颗粒,将来可能发现较低成本生产钻石的途径. 英国圣安德鲁斯大学化学系教授周午纵想出了一个方法,研究小组的苏梓学博士进行了实验,结果发现,火焰中含有碳的所有四种形态,即无定形碳、石墨、富勒烯和钻石. 人们知道,在蜡烛火焰底部是碳水化合物,火焰顶部的产物是二氧化碳,而对火焰之中发生了什么,细节并不清楚.

研究发现蜡烛火焰每秒产生150万块微型钻石

- realrocking - 科普要闻-新浪科技
每个闪烁的烛焰都充满数百万个微小的钻石   新浪科技讯 北京时间8月22日消息,觉得烛光晚餐还不够浪漫吗. 科学家发现,每个闪烁的烛焰都充满数百万个微小的钻石. 烛焰每秒产生大约150万块金光闪闪的宝石. 然而不幸的是,那些听到这个消息感觉眼前一亮,想通过它挣大钱的人可.

GameCube大作火焰之纹章:苍炎之轨迹汉化完成

- raincoatrun - Solidot
《火焰之纹章:苍炎之轨迹》(日语:ファイアーエムブレム 苍炎の轨迹)是火焰之纹章系列的第九部作品,游戏平台为任天堂GameCube主机,是为系列作自多拉基亚776以来再度发行于电视游戏机上的作品,也是首次采用3D图形的系列作品. 于2005年4月20日发行日版,这天刚好是系列作的十五周年(暗黑龙与光之剑的日版是于1990年同日发售)纪念.

竞品分析

- 章明 - 互联网的那点事
关于竞品分析,之前天行(@天行Aeros)有篇文章《设计公式:简单有效的竞品分析》已经进行了介绍,本文在该文章的基础之上再进行一些分享,希望对大家有用. 竞品分析(Competitive Analysis)一词最早源于经济学领域. 市场营销和战略管理方面的竞品分析是指对现有的或潜在的竞争产品的优势和劣势进行评价.

Excel-对比图分析(差异分析)

- - CSDN博客数据库推荐文章
本文摘自作者《网站数据分析:数据驱动的网站管理、优化和运营 》: http://item.jd.com/11295690.html. 对比分析就是将两个或两个以上的数据进行比较,分析它们之间的差异,从而揭示这些数据所代表事物的发展变化情况和规律. 通过对比,可以很直观地看出事物在某方面的差距,并且可以准确、量化地表示出差距的多少.