目录
一、perf基本概念
1. 事件类型
2. 低开销高精度
3. 工具定位
二、安装与基础配置
1. 安装方法
2. 启用符号调试
三、perf工作原理
1. 数据采集机制
2. 硬件事件转化流程
四、perf应用场景
1. 系统瓶颈定位
2. 锁竞争优化
3. 缓存优化
五、perf高级功能
六、核心子命令与使用场景
七、perf使用技巧
1. 常见问题与调优技巧
2. 高效分析三板斧
3. 常用命令选项
4. 工具链整合
八、调试工具对比
1. 与Windbg对比
2. 与网页调试工具对比
九、实战分析场景
1. CPU 密集型应用分析
2. 函数级热点定位
3. 内存访问模式分析
4. 生成火焰图
十、高级功能
1. 动态追踪(Dynamic Tracing)
2. 硬件断点监控
3. 多维度关联分析
4. 性能优化案例
十一. GDB与perf协同调试技术
1.基础配置
(1)编译要求
(2)数据采集
2、核心调试方法
(1)联机调试模式
(2). 离线分析模式
生成符号映射
GDB加载分析
3、高级调试技巧
(1)热点断点设置
(2)内存访问分析
(3)多进程调试
4. 典型调试流程
5. 完整调试示例
一、perf基本概念
perf是集成在Linux内核源码中的性能分析工具套件,通过硬件性能监控单元(PMU)、软件计数器和跟踪点三类事件进行数据采集。其核心特点包括:
1. 事件类型
-
硬件事件:CPU周期、缓存命中/未命中等PMU事件
-
软件事件:进程切换、页面错误等内核事件
-
混合模式:同时采集硬件和软件事件