IPC 偏低完整排查流程
更新时间:2026-10-01。把前面所有工具串成一条可重复执行的流水线。
一、六步闭环
- 确认:CPU 密集、确实 IPC 低(排除 off-CPU/IO 场景,那是另一条线)。
- 总量:perf stat 取 IPC、分支 miss%、各级 MPKI、stall。
- 定位:top-down 找主导象限。
- 取证:record/annotate(计算)、c2c(伪共享)、mem(内存/NUMA)。
- 修复:算法、数据布局、分块、并行度。
- 验证:重新 stat/perf diff 确认 IPC 提升,未提升回到第 3 步。

二、判据
每步要有明确阈值(如分支 miss%、MPKI 超某水平才深挖)和退出条件,避免无目标优化。
三、常见坑
- 跳过 stat/top-down 直接改代码。
- 修复后无对照验证。
- 在非瓶颈象限深挖。
小结
性能优化是“测量—定位—取证—修复—验证”的纪律化闭环,证据不足就回到测量。下一篇 CPU 饱和与利用率判读。
总结
IPC 偏低要走一条可重复的六步闭环:先确认确实是 CPU 密集且 IPC 低(排除 off-CPU/IO 这条另一路线),再用 perf stat 取 IPC/分支 miss%/MPKI/stall 等总量指标,用 top-down 定位主导象限,然后用 record/annotate、c2c、mem 取证,对症做算法/布局/分块/并行修复,最后重新 stat 或 perf diff 验证收益——每步都要有阈值和退出条件,跳过测量直接改代码、或修完不对照验证,是“改了很多 IPC 却没变”的根源。