效能評估與效能剖析
透過編譯器的新最佳化,執行的指令數減少了20%,但平均CPI增加了10%(頻率相同)。關於這項最佳化的效果,下列何者正確?
- A因為CPI增加,所以一定會變慢
- B執行時間變為原來的0.8倍
- C執行時間變為原來的0.88倍,變快了
查看答案與解析
正確答案:C. 執行時間變為原來的0.88倍,變快了
執行時間與指令數和CPI的乘積成正比,所以是0.8×1.1 = 0.88倍,縮短約12%。就像使用複雜指令來減少指令數,會使每個指令的負擔增加一樣,改善某個要素卻使另一個要素變差是很常見的。若只看CPI或指令數其中之一來判斷就會出錯,因此以乘積來比較很重要。
- A. 指令數減少的幅度較大,所以整體反而變快。
- B. 忘了CPI的增加。
- C. 正確。0.8×1.1 = 0.88。