perf top -g systemtap - perf - 火焰图

0. 火焰图生成框架

  1. Capture stacks

  2. Fold stacks

  3. flamegraph.pl

1. perf

 (13条消息) 性能分析之profiling及火焰图_巷中人的博客-CSDN博客

复制代码
perf火焰图分析程序性能
perf record -e cpu-clock -g -p <pid>
-g 选项是告诉perf record额外记录函数的调
用关系
-e cpu-clock 指perf record监控的指标为cpu
周期
-p指定需要record的迸程pid
程序运行完之后,perf record会生成一个名为
pert.data的文件,如果之前已有,那么之前的
perf.data文件会被覆盖
克隆Flame Graph项目 (位于GitHub上)
用perf script工具对perf.data进行解析
perf script -i perf.data &> perf.unfold
将perf.unfold中的符号进行折叠
./stackcollapse-perf.pl perf.unfold &> perf.
folded
最后生成svg图:
./perf.folded > perf.svg
复制代码

 2. perf的安装和使用

我们还经常为 perf top 和 perf record 加上 -g 参数,开启调用关系的采样,方便我们根据调用链来分析性能问题。

 

posted @   littlevigra  阅读(226)  评论(5编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性
· 2025年我用 Compose 写了一个 Todo App
历史上的今天:
2020-11-20 nginx rewrite例子 案例 要先梳理想要实现的需求 - openresty最好不要使用正则
点击右上角即可分享
微信分享提示