頻繁發生一級指令快取未命中,表示可能存在通過減少執行的指令工作集(也就是說,通過改善程式碼區域性)來改善效能的機會。
在以下情況中,此細節具有實質性意義:
計數器的商(二級快取指令獲取/失效的指令)不佳。值 0.01 應視為良好,值 0.05 應視為不佳。
考慮通過程式碼編譯指示或編譯器開關減少內嵌的方法。內嵌會導致程式碼膨脹。如果減少內嵌可以使執行的指令工作集能更好地適合一級指令快取的大小,這可能會改善效能。
設法重新調整程式碼結構且/或更改演算法,以確保在進入下一個程式碼區段之前,每個有效程式碼區段都已充分利用。不過請注意,有時可能需要在程式碼區域性與數據區域性之間進行折衷。
考慮使用大小優化進行編譯。“優化大小”編譯標誌將減少執行的指令工作集 - 不過,優化大小選項可能會在其它方面降低效能,所以在進行此項優化之後,請務必檢查效能。