2014-11-14 79 views
1

我正在嘗試使用perf以C語言編寫的一段代碼進行基準測試,並且我在前端空閒週期數中獲得了100%以上的成績。我已經看到這種情況發生在後端空閒週期。兩者同時超過100。每個週期的指令數量相當高 - 範圍從5 - 10perf stat前端和後端循環顯示大於100%

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 

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

+1

讓我猜,你有一個多核處理器?正因爲如此,百分比超過100%通常很容易。 – 2014-11-14 14:28:50

+0

是的,我喜歡。那麼我應該如何解釋呢?或者完全忽略它? – Danny 2014-11-14 14:33:46

+0

嘗試僅在一個cpu上運行您的命令。這可能會證明它的多核心是混亂的百分比數字。 – 2014-11-15 17:46:47

回答

0

這些百分比與活動CPU週期有關,顯示爲cycles。因此,cycles不是總週期,而是活動的CPU週期,並且相對於它計算前端或後端停滯週期。