將緩存數據率提升50%,MIT、Intel的研究人員還讓帶寬利用率提高5倍
該研究團隊對現代芯片中發現的內存管理系統略有修改,從而避免元數據繁雜傳輸過程。
傳統的計算機上,微處理芯片是封裝在主板上的,其底部裝有杜邦線,數據通過線路在微處理器和主存之間傳輸。
后來,隨著晶體管數的增加,微處理器和主存之間的傳輸速度成為提升計算機性能的主要障礙,因此,近年來,芯片制造商已經開始將動態隨機存取存儲器(DRAM)作為主存儲器的存儲器類型。
雖然DRAM可以實現高容量緩存且可以快速得將常用數據存儲到本地,但是DRAM與通常用于片上高速緩存的內存類型截然不同,現有的緩存管理方案不能有效的使用它,即DRAM中有部分內存資源是被浪費的。
在剛剛結束的IEEE/ACM International Symposium on Microarchitecture會議上,MIT、Intel和ETH Zurich的研究人員們共同給出了新的高速緩存管理方案,該方案可以將原有計算機主板上的DRAM的高速緩存數據速率提高33%至50%。
下面我們先了解下數據緩存的過程。
元數據與高速緩存
在現代計算機芯片中,當處理器需要特定的數據塊時,它將檢查其本地緩存以查看數據是否已經存在。其中,在主存儲器中的高速緩存數據的地址的“標記”標簽是元數據。
元數據主要是描述數據屬性的信息,用來支持和指示存儲位置、歷史數據、資源查找和文件記錄等功能。
一般情況下,典型的片上高速緩存有足夠的空間用于存儲64000個具有64000個標簽的數據,而在運行過程中,為了提高效率,處理器不需要搜索所有64000個條目,緩存系統通常使用稱為“哈希表”的東西組織數據。當處理器使用特定標簽尋找數據時,首先它將標簽哈希函數,然后處理器用約定的哈希函數方式處理數據以產生新的數字,該數字表示數據表中的插槽,同時處理器根據新數字查找感興趣項目的位置。
類似于現有的緩存方案,哈希函數可以為不同的輸入產生相同的輸出,因此,緩存的散列表通常會在相同的哈希索引下存儲兩個或三個數據項。雖然經過哈希函數處理的搜索依然很繁瑣,然而,搜索給定標簽的兩個或三個項目比搜索64,000要好得多。
那么在選定的緩存方案下,內存的選擇和處理依然會對速率產生明顯的影響。
存儲器:DRAM和SRAM
DRAM和SRAM之間的區別在于標準緩存中使用的技術存在差異,對于存儲的每一位數據,SRAM都使用六個晶體管,DRAM只使用一個,這意味著它更節省空間;但是SRAM有一些內置的處理能力,而DRAM沒有。
如當處理器想要搜索數據項的SRAM高速緩存,則會將該標簽發送到高速緩存,隨后SRAM電路本身會將標簽與存儲在相應散列位置的項目進行比較,匹配則返回相關聯的數據。相比之下,DRAM不能做任何事,只能傳送所請求的數據。在DRAM中,處理器首先會要求存儲在給定散列位置的第一個標簽,如果匹配,則發送關聯數據的第二個請求;如果不匹配,它將請求第二個存儲的標簽,以此類推,直到它找到想要或放棄的數據并轉到主內存。
綜合優劣,封裝中的DRAM具有大帶寬的優勢,但是傳統緩存處理過程會浪費它的帶寬。
針對這一問題,該研究團隊對現代芯片中發現的內存管理系統略有修改,從而避免元數據繁雜傳輸過程。
基于DRAM處理方案的改變
我們希望在計算機芯片上運行的任何程序都管理自己的內存使用,程序調用和管理內存的行為就好像它在管理自己的專用內存存儲一樣。不過事實上,多個程序通常是同時在同一個芯片上運行,并且它們是同時將數據發送到主內存。因此,芯片中的每個核心或處理單元通常會將各個程序使用的虛擬地址映射到存儲在主存儲器中數據的實際地址表。
于是研究人員利用這一點,在表中的每個條目添加三位數據,其中一位用于指示是否可以在DRAM高速緩存中找到該虛擬地址處的數據,另外兩個表示相對于具有相同散列索引的任何其他數據項的位置。
對此,于向耀(音譯)解釋道:“在這個條目中,物理地址、虛擬地址和其他數據加起來已經占用差不多100位,所以三個額外的位是一個非常小的開銷。”
但這種方法有一個問題,如果一個芯片的核心將數據項拉入DRAM高速緩存,其他內核是不會知道的,所以每次更新緩存時,芯片向所有芯片的內核發送消息會消耗大量的時間和帶寬。因此,研究團隊引入了另一個小電路,稱為標簽緩沖區,在這個緩沖區中,任何給定的核心都可以記錄其緩存的數據項的新位置。
緩沖區很小,只有5千字節,所以它的添加緩沖區是不會占用太多片上存儲資源的,并且實驗數據顯示,與研究人員提供的帶寬節省相比,每個存儲器訪問一次額外地址查找所需的時間是微不足道的。
總結
對于這一改進方案和設計,于向耀(音譯)表示:“以前的方案花費太多的流量訪問元數據或者只是在內置和非封裝DRAM之間移動數據,而不是真正訪問數據,并且浪費了大量的帶寬,而這個新方案的帶寬利用率是原有方案的五倍。”
最后,記得關注微信公眾號:鎂客網(im2maker),更多干貨在等你!
硬科技產業媒體
關注技術驅動創新
