我知道存在內存緩存,因此使用來自內存中許多不同點的值會導致緩存未命中並損害性能。當程序執行時,它實際上是從內存加載到類似於L1緩存的小塊中的CPU中?我問,因爲大概隨後在內存中經常跳轉會導致這個緩存失誤並且損害性能。所以我想這是兩個問題:是否存在這樣的「執行緩存」,並且經常跳到頻繁受傷的性能。由於緩存問題,在程序中跳來跳去是否會損害性能
P.S.除了性能和緩存之外,還不確定適合的標籤是什麼。
P.P.S.一個示例情況可能是包含大量嵌套if
s和else
s的其他緊密循環,其中每個if和else嵌套底部的最終結果只是少量代碼。
除非你需要你的代碼變得非常快速,否則你可能不需要擔心緩存未命中。有更簡單的方法來優化您的程序。 – Jonathan 2012-04-19 17:15:00
對於我的99.9%的代碼,我不在乎這一點。這隻與少數罕見但關鍵的部分相關,這些部分確實需要非常快速,而如何快速處理大量相關性較高的高性能案例是我目前面臨的問題。 – 2012-04-19 17:33:08