每失效指令時鐘訊號數 (CPI) 事件比率

使用“時鐘訊號”與“失效指令”事件計數計算“每失效指令時鐘訊號數 (CPI)”事件比率:Clockticks/Instructions Retired(時鐘訊號/失效的指令)。CPI 值有助於確定將效能調整精力集中在什麼地方。CPI 比率良好表示程式碼的執行效能優異。

一般來說,這些數字源自經驗豐富的效能工程師的經驗:

良好

不佳

0.75

4

CPI 比率不佳表示存在以下情況之一:

例如,考慮以下“活動結果”:

專案

執行 1

執行 2

Activity result(活動結果)

50 個時鐘訊號

100 個失效的指令

100 個時鐘訊號

100 個失效的指令

CPI

0.5 時鐘訊號/失效的指令

1.0 時鐘訊號/失效的指令

在本例中,比較兩個比率時,兩次執行之間的差異變得更加清楚。執行 2 是更好的候選優化。

僅僅觀察“活動結果”時,需要檢查所有四個結果才能瞭解兩次執行之間的差異。

提示

使用演算法更改進行優化之後,在針對微體系結構進行優化時,第一步應該是研究 CPI。對於 CPI 不佳的每個區域,檢查記憶體相關事件與分支相關事件,以瞭解為什麼 CPI 會不佳。

英特爾(R) 奔騰(R) M 處理器與分支事件

英特爾(R) 奔騰(R) 4 處理器與分支事件

英特爾(R) 安騰(R) 2 處理器與分支事件