什麼是指令排程

在不改變結果的範圍內重新排列指令順序,以執行沒有相依性的其他指令,來填補運算或記憶體等待時間的最佳化。

日文名稱: 命令スケジューリング

「指令排程」出現在1領域的1道練習題中(編譯器等)。

這個名詞所屬的領域: 編譯器

練習指令排程的題目

編譯器的指令排程,其主要目的為何?

  1. A即使程式的結果改變也無所謂,總之要減少指令的數量
  2. B在不改變結果的前提下重新排列指令,以填補等待時間
  3. C將要執行的指令,重新排成作業系統的排程器所選定的順序
查看答案與解析

正確答案:B. 在不改變結果的前提下重新排列指令,以填補等待時間

當讀取或乘法的結果無法立即使用時,若緊接著放置使用該結果的指令,CPU就得等待。指令排程會在遵守資料相依關係、不改變結果的範圍內,重新調整順序,把沒有相依的其他指令插入其間,以有效利用等待時間。對於依序執行的CPU,效果特別顯著。會改變結果的轉換是不被允許的,而作業系統的排程器是決定行程切換的,屬於不同的機制。

解析中的「指令排程」

出現「指令排程」的題目(1題)

  1. 編譯器的指令排程,其主要目的為何?

相關名詞

中間表示法(IR) 共同子運算式消除 向量化 行內展開 抽象語法樹(AST) 迴圈展開 基本區塊 常數摺疊 強度削減 控制流程圖

前往名詞解釋列表