效能評估與效能剖析

透過編譯器的新最佳化,執行的指令數減少了20%,但平均CPI增加了10%(頻率相同)。關於這項最佳化的效果,下列何者正確?

  1. A因為CPI增加,所以一定會變慢
  2. B執行時間變為原來的0.8倍
  3. 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。
練習這個領域 前往領域頁面

效能評估與效能剖析的其他題目

  1. 某程式的指令比例為:整數運算50%(CPI 1)、載入與儲存30%(CPI 2)、分支20%(CPI 5)。平均CPI是多少?
  2. 以「每秒可執行的指令數(百萬指令每秒)」來比較CPU的效能時,下列注意事項何者正確?
  3. 表示效能改善程度的「加速比(speedup)」,其求法下列何者正確?
  4. 將占整個處理50%的部分加快為4倍。整體的加速比是多少(阿姆達爾定律)?
  5. 想只加速占整個處理60%的部分,使整體變快2倍。該部分需要加快多少倍?