perf stat 前端和后端周期显示大于 100%
Posted
技术标签:
【中文标题】perf stat 前端和后端周期显示大于 100%【英文标题】:perf stat frontend and backend cycles showing greater than 100% 【发布时间】:2014-11-14 14:24:56 【问题描述】:我正在尝试使用perf
对一段用 C 编写的代码进行基准测试,我的前端空闲周期计数超过 100%。我已经看到后端空闲周期计数也发生了这种情况。两者同时超过100。每个周期的指令数量相当多 - 从5 - 10
.
3,569,966 stalled-cycles-frontend # 111.98% frontend cycles idle
1,843,327 stalled-cycles-backend # 57.82% backend cycles idle
17,875,020 instructions # 5.61 insns per cycle
# 0.20 stalled cycles per insn
百分比这么高是什么意思?
【问题讨论】:
让我猜猜,你有一个多核处理器?因此,通常很容易获得超过 100% 的百分比。 是的,我愿意。那么我该如何解释呢?还是完全不理会它? 尝试只在一个 cpu 上运行你的命令。这可能会证明它的多核正在弄乱百分比数字。 Danny,stalled-cycles-frontend
可能不会被定义为 CPU 周期。机器上的确切 CPU 型号是什么?
【参考方案1】:
这些百分比与活动 CPU 周期有关,显示为 cycles
。所以,cycles
不是总周期,而是活动 CPU 周期,前端或后端停滞周期是相对于它计算的。
【讨论】:
以上是关于perf stat 前端和后端周期显示大于 100%的主要内容,如果未能解决你的问题,请参考以下文章