[發(fā)明專(zhuān)利]基于分布式有限目錄的緩存數(shù)據(jù)一致性實(shí)現(xiàn)方法及裝置有效
| 申請(qǐng)?zhí)枺?/td> | 201810719059.4 | 申請(qǐng)日: | 2018-07-03 |
| 公開(kāi)(公告)號(hào): | CN108920192B | 公開(kāi)(公告)日: | 2021-07-30 |
| 發(fā)明(設(shè)計(jì))人: | 馮權(quán)友;周宏偉;王俊輝;鄧讓鈺;張英;王蕾;曾坤;王勇;楊乾明;勵(lì)楠;喬寓然 | 申請(qǐng)(專(zhuān)利權(quán))人: | 中國(guó)人民解放軍國(guó)防科技大學(xué) |
| 主分類(lèi)號(hào): | G06F9/38 | 分類(lèi)號(hào): | G06F9/38;G06F9/46;G06F9/52;G06F12/0806 |
| 代理公司: | 湖南兆弘專(zhuān)利事務(wù)所(普通合伙) 43008 | 代理人: | 譚武藝 |
| 地址: | 410073 湖南*** | 國(guó)省代碼: | 湖南;43 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 基于 分布式 有限 目錄 緩存 數(shù)據(jù)一致性 實(shí)現(xiàn) 方法 裝置 | ||
本發(fā)明公開(kāi)了一種基于分布式有限目錄的緩存數(shù)據(jù)一致性實(shí)現(xiàn)方法及裝置,本發(fā)明通過(guò)私有緩存PCache X響應(yīng)對(duì)應(yīng)處理單元PE X的請(qǐng)求,且在請(qǐng)求不命中或數(shù)據(jù)寫(xiě)回時(shí)向?qū)?yīng)的宿主DDCU X發(fā)出數(shù)據(jù)讀寫(xiě)一致性請(qǐng)求事務(wù),宿主DDCU X在處理請(qǐng)求事務(wù)時(shí)如遇到資源沖突時(shí)則丟棄報(bào)文并進(jìn)入流控模式,PCache X基于信約原理將丟棄的報(bào)文逐個(gè)重發(fā),直到資源沖突解除后退出流控模式進(jìn)入正常的流水作業(yè)模式。本發(fā)明能夠解決目錄自替換堵塞工作流水線(xiàn)而導(dǎo)致請(qǐng)求事務(wù)餓死的問(wèn)題,同時(shí)提供嚴(yán)格的執(zhí)行順序保證,確保分布式環(huán)境下,數(shù)據(jù)依賴(lài)關(guān)系不被破壞,請(qǐng)求事務(wù)間數(shù)據(jù)依賴(lài)關(guān)系能夠被完整保持,并保證多個(gè)核心發(fā)出的請(qǐng)求事務(wù)能公平的協(xié)調(diào)執(zhí)行,從而提高眾核處理器可靠性和可擴(kuò)展性。
技術(shù)領(lǐng)域
本發(fā)明涉及多核處理器體系結(jié)構(gòu),具體涉及一種基于分布式有限目錄的緩存數(shù)據(jù)一致性實(shí)現(xiàn)方法及裝置,用于解決基于目錄的高速緩存(Cache)一致性協(xié)議在目錄存儲(chǔ)器容量受限時(shí),目錄自替換堵塞工作流水線(xiàn)而導(dǎo)致請(qǐng)求事務(wù)餓死的問(wèn)題。
背景技術(shù)
眾核微處理器常用的實(shí)現(xiàn)方式是同構(gòu)集成,即集成多個(gè)成熟的、結(jié)構(gòu)相同、功能強(qiáng)大的通用處理核心。Intel在 Skylake-EP Xeon E5芯片中集成了32個(gè)處理器核。AMD 在銳龍 Threadripper 處理器集成了16個(gè)處理器核心。飛騰系列服務(wù)器芯片則集成了16~64個(gè)處理器核心。如圖1所示,這些處理器芯片上集成了多級(jí)Cache(Cache0~Cache(n-1))和存儲(chǔ)控制器(Memory Controller Unit, MCU)(MCU0~MCU(m-1)),它們的存儲(chǔ)層次有一個(gè)共同特點(diǎn),采用私有的分布式Cache結(jié)構(gòu),然后通過(guò)片上互連網(wǎng)絡(luò)(Network on chip,簡(jiǎn)稱(chēng)NOC)訪(fǎng)問(wèn)共享的最外層Cache(Last Level Cache,LLCache)或者存儲(chǔ)控制器MCU。分布式私有Cache通過(guò)Cache一致性協(xié)議實(shí)現(xiàn)數(shù)據(jù)一致性。常見(jiàn)的實(shí)現(xiàn)方式就是基于目錄的Cache一致性協(xié)議。
基于目錄的Cache一致性協(xié)議管理的最細(xì)粒度地址空間是單個(gè)高速緩存行(CacheLine),常見(jiàn)大小為64字節(jié)。現(xiàn)代眾核微處理器的物理地址空間往往很大。以44位物理地址空間為例,整個(gè)目錄存儲(chǔ)器(Directory Control Unit, DCU)的容量約為256G條,在目前的工藝條件下,顯然無(wú)法在片上完全存儲(chǔ)整個(gè)目錄信息。基于有限目錄方式的Cache一致性協(xié)議是目前常用的折中方案,即片上目錄控制器中只存儲(chǔ)部分目錄信息。當(dāng)目錄存儲(chǔ)器容量不足時(shí),發(fā)起目錄替換操作,將處于有效但是空轉(zhuǎn)態(tài)的目錄項(xiàng)替換出去,把原目錄項(xiàng)留給新的請(qǐng)求事務(wù)。如圖2所示,DCU根據(jù)被替換的目錄項(xiàng)信息,產(chǎn)生監(jiān)聽(tīng)作廢請(qǐng)求Snoop_Invalidate,通過(guò)NOC發(fā)送到對(duì)應(yīng)的私有Cache0和CacheX。私有Cache0和CacheX作廢其內(nèi)部的高速緩存行Cacheline,并生成監(jiān)聽(tīng)響應(yīng)Snoop_RSP_Data報(bào)文,發(fā)送回給DCU。DCU將監(jiān)聽(tīng)響應(yīng)返回的臟副本通過(guò)寫(xiě)命令報(bào)文MCU_Write寫(xiě)回MCU。
當(dāng)目錄替換數(shù)量比較多時(shí),將出現(xiàn)如下幾種情況:(1)請(qǐng)求事務(wù)餓死:目錄替換時(shí)會(huì)引起監(jiān)聽(tīng)操作,監(jiān)聽(tīng)作廢耗時(shí)較長(zhǎng),會(huì)一直占用DCU工作流水線(xiàn)資源。當(dāng)目錄替換數(shù)量較多時(shí),容易引發(fā)堵塞,新的請(qǐng)求事務(wù)遲遲不能處理,如圖2中的Read和Write事務(wù),當(dāng)系統(tǒng)節(jié)點(diǎn)數(shù)增大時(shí),極易導(dǎo)致請(qǐng)求事務(wù)餓死;(2)請(qǐng)求事務(wù)亂序執(zhí)行,破壞數(shù)據(jù)依賴(lài)關(guān)系:有限容量的目錄控制器通過(guò)自替換實(shí)現(xiàn)目錄存儲(chǔ)器的資源復(fù)用,當(dāng)替換數(shù)量較多時(shí),控制調(diào)度算法復(fù)雜度組合劇增。當(dāng)兩個(gè)存在數(shù)據(jù)依賴(lài)的請(qǐng)求事務(wù)到來(lái)時(shí),復(fù)雜的控制調(diào)度算法容易導(dǎo)致請(qǐng)求事務(wù)亂序執(zhí)行,數(shù)據(jù)依賴(lài)關(guān)系被破壞,直接影響處理器核心中程序執(zhí)行的正確性,引發(fā)很大的風(fēng)險(xiǎn)。上述基于有限容量目錄的Cache一致性方案,容易導(dǎo)致請(qǐng)求事務(wù)餓死,破壞數(shù)據(jù)依賴(lài)性,引發(fā)較大的設(shè)計(jì)風(fēng)險(xiǎn),是限制眾核處理器可靠性和可擴(kuò)展性的重要因素。
發(fā)明內(nèi)容
該專(zhuān)利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專(zhuān)利權(quán)人授權(quán)。該專(zhuān)利全部權(quán)利屬于中國(guó)人民解放軍國(guó)防科技大學(xué),未經(jīng)中國(guó)人民解放軍國(guó)防科技大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買(mǎi)此專(zhuān)利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810719059.4/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專(zhuān)利網(wǎng)。
- 同類(lèi)專(zhuān)利
- 專(zhuān)利分類(lèi)
- 一種分布式處理方法、系統(tǒng)及其裝置
- 基于分布式系統(tǒng)的數(shù)據(jù)訪(fǎng)問(wèn)方法和裝置
- 一種基于分布式鎖加載分布式任務(wù)的方法以及裝置
- 一種分布式光伏集群系統(tǒng)
- 一種分布式能源遠(yuǎn)程監(jiān)測(cè)管理系統(tǒng)及方法
- 任務(wù)處理方法和分布式計(jì)算框架
- 一種分布式電源監(jiān)控系統(tǒng)
- 一種基于區(qū)塊鏈的聯(lián)盟信任分布式身份認(rèn)證方法及系統(tǒng)
- 分布式系統(tǒng)中分布式鎖調(diào)度方法及裝置
- 用于批處理的分布式鎖處理方法、裝置及系統(tǒng)





