C 性能统计前端和后端周期显示大于100%

C 性能统计前端和后端周期显示大于100%,c,profiling,x86-64,perf,C,Profiling,X86 64,Perf,我尝试使用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 instr

我尝试使用
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

百分比如此之高意味着什么?

这些百分比与活动CPU周期有关,显示为
周期。因此,
周期
不是总周期,而是活动CPU周期,前端或后端暂停周期是根据它计算的。

让我猜猜,您有多核处理器吗?正因为如此,通常很容易获得超过100%的百分比。是的,我有。那么我应该如何解释这一点呢?或者完全忽略它?尝试只在一个cpu上运行您的命令。这可能会证明,它的多核正在搅乱百分比。Danny,
stalled cycles frontend
可能不被定义为CPU的周期。机器上的确切CPU型号是什么?