天天看點

《現代體系結構上的UNIX系統:核心程式員的對稱多處理和緩存技術(修訂版)》——2.12 各種高速緩存體系的差異

本節書摘來自異步社群《現代體系結構上的unix系統:核心程式員的對稱多處理和緩存技術(修訂版)》一書中的第2章,第2.12節,作者:【美】curt schimmel著,更多章節内容可以通路雲栖社群“異步社群”公衆号檢視

在當今的計算機系統上可找到的各種高速緩存五花八門。它們最明顯的差別展現在如下幾個領域:

緩存大小;

行大小;

組大小;

寫配置設定的使用;

替換政策;

通過虛拟還是實體位址來查找;

如何标記行(通過虛拟位址、實體位址還是其他資訊);

寫直通或者寫回政策。

前5項影響高速緩存的性能,而且從保持高速緩存一緻性的角度來看,除了一項(組大小)之外,其他的項對作業系統都沒有直接影響。偶爾必須考慮一下組的大小,這将在3.3.2、4.2.2和4.2.6節中介紹。清單中的最後3項也影響性能,但是它們還影響作業系統。這幾項決定了作業系統為了對其上運作的程式完全隐藏高速緩存的存在而需要顯式執行的高速緩存沖洗操作的數量。

下面的幾章介紹了四種不同的高速緩存組織結構,而且描述了在什麼樣的條件下作業系統必須明确執行沖洗操作。所研究的不同高速緩存組織結構在采用虛拟位址還是實體位址來查找和标記行方面會有些變化。在每種情況下還需要考慮寫直通和寫回高速緩存機制之間的差異。

繼續閱讀