码迷,mamicode.com
首页 > 其他好文 > 详细

perf+火焰图使用

时间:2019-09-06 21:16:42      阅读:77      评论:0      收藏:0      [点我收藏+]

标签:rip   script   shel   mamicode   graph   tps   最大   特殊   svg   

使用

# 安装perf
yum install perf -y
# 下载绘图工具
git clone https://github.com/brendangregg/FlameGraph.git

# 采集数据
perf record -F99-p3887-g -- sleep 30

# 生成火焰图
perf script -i perf.data &> perf.unfold
./FlameGraph/stackcollapse-perf.pl perf.unfold &> perf.folded
./FlameGraph/flamegraph.pl perf.folded > perf.svg

火焰图的含义

  1. 火焰图是基于 stack 信息生成的 SVG 图片, 用来展示 CPU 的调用栈。 y 轴表示调用栈, 每一层都是一个函数.
  2. 调用栈越深, 火焰就越高, 顶部就是正在执行的函数, 下方都是它的父函数. x 轴表示抽样数, 如果一个函数在 x 轴占据的宽度越宽,
  3. 就表示它被抽到的次数多, 即执行的时间长. 注意, x 轴不代表时间, 而是所有的调用栈合并后, 按字母顺序排列的.
  4. 火焰图就是看顶层的哪个函数占据的宽度最大. 只要有 “平顶”(plateaus), 就表示该函数可能存在性能问题。 颜色没有特殊含义,
  5. 因为火焰图表示的是 CPU 的繁忙程度, 所以一般选择暖色调.
    技术图片

perf+火焰图使用

标签:rip   script   shel   mamicode   graph   tps   最大   特殊   svg   

原文地址:https://www.cnblogs.com/CSunShine/p/11478278.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!