編譯器
透過小視窗檢視所產生機器碼的一小段序列,並將無用的指令組合替換為更好的指令,這種最佳化稱為什麼?
- A窺孔最佳化(peephole optimization)
- B連結時最佳化
- C使用剖析資料的最佳化
查看答案與解析
正確答案:A. 窺孔最佳化(peephole optimization)
窺孔最佳化就像從窺視孔觀看一樣,只檢視連續的幾條指令,找出浪費並加以替換的最佳化。例如省略剛把值寫入記憶體後又立刻從同一位置讀取的指令、刪除加0的指令,或把兩條指令合併成一條。多半在產生程式碼之後進行,是簡單卻有效果的最佳化。連結時最佳化是針對整個程式,使用剖析資料的最佳化則是利用執行的紀錄來進行最佳化。
- A. 正確。以數條指令的視窗找出浪費並加以替換。
- B. 連結時最佳化是將整個程式一併最佳化。
- C. PGO是利用執行的紀錄進行最佳化。