面向圖計(jì)算應(yīng)用的處理器訪存通路優(yōu)化設(shè)計(jì)與實(shí)現(xiàn)
發(fā)布時(shí)間:2021-06-09 14:18
針對(duì)圖計(jì)算應(yīng)用的訪存特點(diǎn),提出并實(shí)現(xiàn)一種支持高并發(fā)、亂序和異步訪存的高并發(fā)訪存模塊(High Concurrency and high Performance Fetcher, HCPF)。通過(guò)軟-硬件協(xié)同的設(shè)計(jì)方法,HCPF可同時(shí)處理192條共8種類(lèi)型的內(nèi)存訪問(wèn)請(qǐng)求,且訪存粒度可由用戶定義,滿足圖計(jì)算應(yīng)用對(duì)海量低延遲細(xì)粒度數(shù)據(jù)訪問(wèn)的需求。同時(shí),HCPF擴(kuò)展了基于內(nèi)存語(yǔ)義的跨計(jì)算節(jié)點(diǎn)定制互連技術(shù),支持遠(yuǎn)程內(nèi)存的細(xì)粒度直接訪問(wèn),為后續(xù)實(shí)現(xiàn)分布式圖計(jì)算框架提供技術(shù)基礎(chǔ)。結(jié)合上述兩個(gè)核心研究?jī)?nèi)容,基于流水線RISC-V處理器核,設(shè)計(jì)并實(shí)現(xiàn)了可支持HCPF的RISC-V片上系統(tǒng)(System-on-Chip,SoC)架構(gòu),搭建基于FPGA的原型驗(yàn)證平臺(tái),并使用自研測(cè)試程序?qū)CPF進(jìn)行初步性能評(píng)測(cè)。實(shí)驗(yàn)結(jié)果表明,HCPF相比原有訪存通路,最高可將基于數(shù)組和隨機(jī)地址的兩種隨機(jī)內(nèi)存訪問(wèn)性能分別提升至3.5倍和2.7倍。遠(yuǎn)程內(nèi)存直接訪問(wèn)4 Byte數(shù)據(jù)的延時(shí)僅為1.63μs。
【文章來(lái)源】:國(guó)防科技大學(xué)學(xué)報(bào). 2020,42(02)北大核心EICSCD
【文章頁(yè)數(shù)】:10 頁(yè)
【部分圖文】:
配置不同規(guī)格HCPF的片上系統(tǒng)在
目前提升內(nèi)存級(jí)并行度的主流方案之一是在訪存通路中使用非阻塞高速數(shù)據(jù)緩存[15-16]。非阻塞緩存基本結(jié)構(gòu)如圖1所示。當(dāng)非阻塞緩存命中時(shí)(步驟[h1]至[h3]),非阻塞緩存向處理器返回保存在內(nèi)部的數(shù)據(jù);當(dāng)非阻塞緩存未命中時(shí)(步驟[m1]至[m6]),非阻塞緩存通過(guò)將未命中的訪存請(qǐng)求保存在MSHR數(shù)組中,允許處理器繼續(xù)執(zhí)行指令,直至當(dāng)前指令與之前的訪存指令之間存在數(shù)據(jù)依賴(lài)。采用非阻塞緩存技術(shù),可使單發(fā)射流水線處理器和亂序處理器均得到15%以上的性能提升[17-18]。然而,已有研究工作表明,MSHR的數(shù)量存在上限(一般為十余個(gè))。由于非阻塞緩存使用硬件邏輯完成所有的處理器異步訪存操作,且位于訪存通路的關(guān)鍵路徑上,因此,繼續(xù)增加MSHR的數(shù)量并不能進(jìn)一步提高訪存性能,反而會(huì)導(dǎo)致處理器面積增大和時(shí)鐘頻率下降等問(wèn)題,加大了通用處理器的設(shè)計(jì)難度[17-18]。
訪存通路分為高并發(fā)訪存模塊(HCPF)和遠(yuǎn)程內(nèi)存直接訪問(wèn)模塊(DoCE)兩部分,硬件框架如圖2所示。通用處理器中的指令窗口允許暫存未完成的訪存指令或存在數(shù)據(jù)依賴(lài)的運(yùn)算指令,進(jìn)而使處理器繼續(xù)執(zhí)行其余指令,但是,由于圖計(jì)算應(yīng)用中存在海量且高延遲的訪存請(qǐng)求,遠(yuǎn)超過(guò)目前指令窗口的容量,為避免流水線暫停,處理器需要另一種方式暫存這些數(shù)量龐大的訪存指令。一種方式是用寫(xiě)寄存器替代讀指令,既可避免指令窗口緩存寫(xiě)指令,允許處理器繼續(xù)執(zhí)行,又通過(guò)將訪存請(qǐng)求交由HCPF處理,允許在HCPF內(nèi)部實(shí)現(xiàn)特定的與處理器結(jié)構(gòu)無(wú)關(guān)的優(yōu)化。為支持處理器異步地將訪存請(qǐng)求寫(xiě)入HCPF的內(nèi)部寄存器,HCPF分為前端和后端兩個(gè)部分,前端包含前端控制寄存器、讀數(shù)據(jù)緩沖區(qū)和寫(xiě)數(shù)據(jù)緩沖區(qū);后端包含讀請(qǐng)求表、寫(xiě)請(qǐng)求表和后端控制器。HCPF負(fù)責(zé)解碼處理器的訪存指令,并訪問(wèn)本地內(nèi)存,或?qū)⒃L存請(qǐng)求發(fā)往DoCE。DoCE負(fù)責(zé)訪問(wèn)遠(yuǎn)程內(nèi)存資源。2.2 HCPF前端
本文編號(hào):3220736
【文章來(lái)源】:國(guó)防科技大學(xué)學(xué)報(bào). 2020,42(02)北大核心EICSCD
【文章頁(yè)數(shù)】:10 頁(yè)
【部分圖文】:
配置不同規(guī)格HCPF的片上系統(tǒng)在
目前提升內(nèi)存級(jí)并行度的主流方案之一是在訪存通路中使用非阻塞高速數(shù)據(jù)緩存[15-16]。非阻塞緩存基本結(jié)構(gòu)如圖1所示。當(dāng)非阻塞緩存命中時(shí)(步驟[h1]至[h3]),非阻塞緩存向處理器返回保存在內(nèi)部的數(shù)據(jù);當(dāng)非阻塞緩存未命中時(shí)(步驟[m1]至[m6]),非阻塞緩存通過(guò)將未命中的訪存請(qǐng)求保存在MSHR數(shù)組中,允許處理器繼續(xù)執(zhí)行指令,直至當(dāng)前指令與之前的訪存指令之間存在數(shù)據(jù)依賴(lài)。采用非阻塞緩存技術(shù),可使單發(fā)射流水線處理器和亂序處理器均得到15%以上的性能提升[17-18]。然而,已有研究工作表明,MSHR的數(shù)量存在上限(一般為十余個(gè))。由于非阻塞緩存使用硬件邏輯完成所有的處理器異步訪存操作,且位于訪存通路的關(guān)鍵路徑上,因此,繼續(xù)增加MSHR的數(shù)量并不能進(jìn)一步提高訪存性能,反而會(huì)導(dǎo)致處理器面積增大和時(shí)鐘頻率下降等問(wèn)題,加大了通用處理器的設(shè)計(jì)難度[17-18]。
訪存通路分為高并發(fā)訪存模塊(HCPF)和遠(yuǎn)程內(nèi)存直接訪問(wèn)模塊(DoCE)兩部分,硬件框架如圖2所示。通用處理器中的指令窗口允許暫存未完成的訪存指令或存在數(shù)據(jù)依賴(lài)的運(yùn)算指令,進(jìn)而使處理器繼續(xù)執(zhí)行其余指令,但是,由于圖計(jì)算應(yīng)用中存在海量且高延遲的訪存請(qǐng)求,遠(yuǎn)超過(guò)目前指令窗口的容量,為避免流水線暫停,處理器需要另一種方式暫存這些數(shù)量龐大的訪存指令。一種方式是用寫(xiě)寄存器替代讀指令,既可避免指令窗口緩存寫(xiě)指令,允許處理器繼續(xù)執(zhí)行,又通過(guò)將訪存請(qǐng)求交由HCPF處理,允許在HCPF內(nèi)部實(shí)現(xiàn)特定的與處理器結(jié)構(gòu)無(wú)關(guān)的優(yōu)化。為支持處理器異步地將訪存請(qǐng)求寫(xiě)入HCPF的內(nèi)部寄存器,HCPF分為前端和后端兩個(gè)部分,前端包含前端控制寄存器、讀數(shù)據(jù)緩沖區(qū)和寫(xiě)數(shù)據(jù)緩沖區(qū);后端包含讀請(qǐng)求表、寫(xiě)請(qǐng)求表和后端控制器。HCPF負(fù)責(zé)解碼處理器的訪存指令,并訪問(wèn)本地內(nèi)存,或?qū)⒃L存請(qǐng)求發(fā)往DoCE。DoCE負(fù)責(zé)訪問(wèn)遠(yuǎn)程內(nèi)存資源。2.2 HCPF前端
本文編號(hào):3220736
本文鏈接:http://sikaile.net/kejilunwen/jisuanjikexuelunwen/3220736.html
最近更新
教材專(zhuān)著