一種面向多核處理器的2 ghz片上網(wǎng)絡(luò)通信單元_第1頁(yè)
已閱讀1頁(yè),還剩16頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、<p>  一種面向多核處理器的2 GHz片上網(wǎng)絡(luò)通信單元</p><p>  摘要:提出了一種面向多核微處理器的2 GHz片上網(wǎng)絡(luò)通信單元設(shè)計(jì)方案,通信單元能夠在45 nm工藝下達(dá)到2 GHz的工作頻率,流水線(xiàn)級(jí)數(shù)為2,最多支持8個(gè)雙向通信接口,每個(gè)端口單向峰值帶寬32 GBps.構(gòu)建了一種16核處理器片上網(wǎng)絡(luò)測(cè)試環(huán)境,測(cè)試結(jié)果表明:使用提出的通信單元構(gòu)建的片上網(wǎng)絡(luò)能夠滿(mǎn)足16核處理器存儲(chǔ)系統(tǒng)對(duì)網(wǎng)絡(luò)帶

2、寬的要求,在對(duì)訪(fǎng)存優(yōu)化的情況下,聚合帶寬能夠隨著處理器核心與線(xiàn)程的增加而線(xiàn)性增加.另外,通信單元還具有可重用的特性,能夠通過(guò)優(yōu)化與擴(kuò)展進(jìn)一步應(yīng)用于眾核處理器片上網(wǎng)絡(luò).研究成果已成功應(yīng)用于某國(guó)產(chǎn)16核高性能微處理器,片上網(wǎng)絡(luò)實(shí)測(cè)頻率達(dá)到2 GHz. </p><p>  關(guān)鍵詞:多核處理器;片上網(wǎng)絡(luò);通信單元 </p><p>  中圖分類(lèi)號(hào):TP332 文獻(xiàn)標(biāo)識(shí)碼:A </p>

3、<p>  A 2 GHz Network-on-chip Communication Unit </p><p>  for Multi-core Microprocessors </p><p>  ZHOU Hong-wei1, ZHANG Li-xia2, DOU Qiang1, LI Yong-jin1, YAN Xiao-bo1, ZHANG Ying1 <

4、/p><p> ?。?.College of Computer, National Univ of Defense Technology, Changsha, Hunan 410073, China; </p><p>  2. College of Information Science and Engineering, Central South Univ, Changsha, Hunan

5、 410083, China) </p><p>  Abstract: A 2 GHz network-on-chip communication unit for multi-core microprocessors was proposed. A 2 GHz frequency in 45nm process technology can be reached and the pipeline stage

6、is 2. There are eight bi-direction communication ports totally and the peak bandwidth is 32 GBps in each port. A test environment for network-on-chip which supports 16 high-performance processor cores was built. The test

7、 results show that network-on-chip constructed by the proposed communication unit can meet the requ</p><p>  Key words: multi-core processor; network-on-chip; communication unit </p><p>  目前主流的多

8、核處理器一般集成4~16個(gè)處理器核心,采用片上多處理器(Chip Multiprocessors,CMP)體系結(jié)構(gòu).多核處理器通常以總線(xiàn)、環(huán)和交叉開(kāi)關(guān)作為片上互連網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),當(dāng)核數(shù)較少時(shí),處理器內(nèi)部數(shù)據(jù)通信的要求基本能夠得到滿(mǎn)足.由于總線(xiàn)能夠連接的結(jié)點(diǎn)數(shù)與工作頻率和總線(xiàn)接口電路的速度、驅(qū)動(dòng)能力、總線(xiàn)長(zhǎng)度以及負(fù)載有關(guān),所以一般適用于對(duì)通信能力要求不高且規(guī)模較小的片上網(wǎng)絡(luò),斯坦福大學(xué)的Hydra[1]多核處理器就是采用總線(xiàn)進(jìn)行片上互連的典

9、型實(shí)例.交叉開(kāi)關(guān)具有選址方便、控制簡(jiǎn)單的優(yōu)點(diǎn),但是所需的設(shè)備量大,通路的利用率較低,因此一般適用于對(duì)通信能力要求較高的片上網(wǎng)絡(luò).Sun UltraSPARC T2[2], Fujitsu SPARC64 VIIIFx[3]和IBM Cyclops64[4]等處理器均采用交叉開(kāi)關(guān)進(jìn)行片上互連.環(huán)網(wǎng)能夠支持相鄰結(jié)點(diǎn)間并行通信,具有比總線(xiàn)更高的網(wǎng)絡(luò)帶寬,比交叉開(kāi)關(guān)更少的設(shè)備量,主要用于有一定的通信能力要求且規(guī)模中等的片上網(wǎng)絡(luò),例如SONY C

10、ELL處理器[5]和ARM Cortex A15[6]處理器等采用環(huán)網(wǎng)進(jìn)行片上互連.二維mesh互連網(wǎng)絡(luò)具有</p><p>  本文將重點(diǎn)針對(duì)以上問(wèn)題提出以下解決方法:1)設(shè)計(jì)可配置通信單元,提高片上網(wǎng)絡(luò)的可重用性;2)采用源數(shù)據(jù)隊(duì)列和源路由技術(shù)簡(jiǎn)化通信單元流水線(xiàn)結(jié)構(gòu),減少通信單元的數(shù)據(jù)傳輸時(shí)間;3)提出面向通信協(xié)議的通信單元內(nèi)部互連時(shí)序優(yōu)化方法,優(yōu)化時(shí)序的同時(shí)減少通信單元的物理面積和功耗;4)提出面向物理布局

11、的數(shù)據(jù)隊(duì)列優(yōu)化方法,進(jìn)一步優(yōu)化通信單元的時(shí)序和功耗. </p><p>  1 通信單元體系結(jié)構(gòu) </p><p>  對(duì)于面向局部性?xún)?yōu)化的應(yīng)用來(lái)說(shuō),不同的網(wǎng)絡(luò)拓?fù)鋵?duì)性能、功耗或者能量延遲積具有不同的優(yōu)化效果,選用何種互連結(jié)構(gòu)取決于設(shè)計(jì)者對(duì)這些設(shè)計(jì)參數(shù)的具體要求,設(shè)計(jì)師希望具有可重用的片上網(wǎng)絡(luò)設(shè)計(jì)組件,能夠通過(guò)簡(jiǎn)單裝配實(shí)現(xiàn)不同拓?fù)浣Y(jié)構(gòu).通信單元是構(gòu)建片上通信網(wǎng)絡(luò)的核心,它直接與需要進(jìn)行片上

12、通信的處理器各部件互連.本文提出一種可配置的通信單元設(shè)計(jì)方案,每個(gè)通信單元包括4個(gè)物理通道,每個(gè)物理通道包含8個(gè)通信接口,每個(gè)通信接口可以與處理器中的一個(gè)部件相連,例如1個(gè)二級(jí)Cache、1個(gè)Cache一致性控制器、1個(gè)IO控制器等,也可以作為級(jí)連接口(Link Port,LP)和另一個(gè)通信單元互連,構(gòu)建更加復(fù)雜的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu).所有部件的接口使用統(tǒng)一的通信報(bào)文格式,簡(jiǎn)化設(shè)計(jì)的同時(shí)增強(qiáng)可重用性.通信單元設(shè)計(jì)為IP核(Intellectua

13、l Property core)的形式,其通信端口數(shù)、物理通道數(shù)、端口數(shù)據(jù)位寬均可配置,通過(guò)可配置性設(shè)計(jì),能夠控制通信單元的規(guī)模和設(shè)計(jì)需要相匹配,保證性能的同時(shí)降低功耗. </p><p>  圖1為通信單元中一個(gè)物理通道的數(shù)據(jù)通路流水線(xiàn)結(jié)構(gòu)示意圖.網(wǎng)絡(luò)通信單元包含輸入輸出接口、兩級(jí)流水線(xiàn)結(jié)構(gòu)和站間寄存器:輸入接口能夠接收來(lái)自最多8個(gè)源的報(bào)文微包(flip),采用基于信用的流控機(jī)制;輸出接口能夠發(fā)送微包到最多8個(gè)

14、目的端口,也采用基于信用的流控機(jī)制;兩級(jí)流水線(xiàn)結(jié)構(gòu)包括仲裁站和數(shù)據(jù)選擇站,前者用于仲裁輸入請(qǐng)求及緩存輸入微包數(shù)據(jù),后者用于將被仲裁許可的微包數(shù)據(jù)進(jìn)行選擇輸出. </p><p>  如圖1所示,來(lái)自各個(gè)請(qǐng)求源的請(qǐng)求有效信號(hào)構(gòu)成“請(qǐng)求組”,仲裁站中的仲裁控制器按照公平輪轉(zhuǎn)的仲裁算法產(chǎn)生仲裁許可信號(hào).當(dāng)“請(qǐng)求組”內(nèi)的有效信號(hào)超過(guò)1個(gè)時(shí),由于每個(gè)時(shí)鐘周期只有一個(gè)請(qǐng)求能夠獲得仲裁許可,未被許可的請(qǐng)求需要在后續(xù)的時(shí)鐘周期繼

15、續(xù)請(qǐng)求以獲得許可,因此一個(gè)“請(qǐng)求組”可能需要多次通過(guò)仲裁控制器才能完全獲得對(duì)組內(nèi)各請(qǐng)求的仲裁許可.若“請(qǐng)求組”中某個(gè)請(qǐng)求被仲裁許可,則將產(chǎn)生一個(gè)到產(chǎn)生該請(qǐng)求的部件的信用釋放信號(hào),經(jīng)過(guò)寄存后返回給請(qǐng)求部件,用于釋放該請(qǐng)求部件的發(fā)送信用.當(dāng)一個(gè)“請(qǐng)求組”需要多個(gè)時(shí)鐘周期才能通過(guò)通信單元時(shí),來(lái)自輸入接口的新的“請(qǐng)求組”會(huì)由于仲裁控制器忙而無(wú)法被立即進(jìn)行仲裁,這些新的“請(qǐng)求組”被記錄到“檢查板”邏輯中以避免丟失.由于只有當(dāng)同一時(shí)刻產(chǎn)生的“請(qǐng)求組

16、”中的所有請(qǐng)求全部被仲裁許可后,仲裁器才會(huì)處理下一個(gè)“請(qǐng)求組”,而且“檢查板”按照先入先出的順序依次保留待仲裁的“請(qǐng)求組”,因此仲裁器最終按照請(qǐng)求的到達(dá)時(shí)間進(jìn)行仲裁,保證了服務(wù)質(zhì)量(Quality of Service,QoS).檢查板的深度能夠根據(jù)輸入接口的數(shù)目和每個(gè)請(qǐng)求部件發(fā)送微包的信用值進(jìn)行配置.當(dāng)檢查板為空時(shí),新的“</p><p>  在數(shù)據(jù)選擇站,輸出報(bào)文有效信號(hào)和微包選擇信號(hào)由仲裁站的仲裁結(jié)果產(chǎn)生.

17、輸出報(bào)文有效信號(hào)在路由控制邏輯的控制下,產(chǎn)生到輸出接口各接收部件的報(bào)文有效信號(hào).微包選擇信號(hào)用于控制微包選擇器,從微包數(shù)據(jù)隊(duì)列輸出的多個(gè)微包數(shù)據(jù)中進(jìn)行選擇,選出的微包與報(bào)文有效信號(hào)一起經(jīng)過(guò)寄存后,發(fā)送給輸出接口中某個(gè)接收設(shè)備或者級(jí)連的通信單元. </p><p>  圖2為采用通信單元構(gòu)建的多核處理器片上網(wǎng)絡(luò)的示意圖.圖2(a)是構(gòu)建環(huán)形網(wǎng)絡(luò)的示意圖,每個(gè)通信單元配置為8個(gè)雙向接口,使用4個(gè)物理通道(分別傳輸請(qǐng)求

18、、響應(yīng)、監(jiān)聽(tīng)和監(jiān)聽(tīng)?wèi)?yīng)答報(bào)文).通信單元使用接口6和接口7進(jìn)行級(jí)連.每個(gè)通信單元連接4個(gè)私有的L2Cache(L2C)、1個(gè)目錄控制部件(Directory Control Unit,DCU),通信單元1通過(guò)5號(hào)端口連接了1個(gè)IO控制器(IO Controller,IOC).圖2(b)為使用通信單元構(gòu)建二維mesh網(wǎng)絡(luò)的示意圖,每個(gè)通信單元配置為連接三個(gè)處理器核,一個(gè)存儲(chǔ)單元,剩余端口用于互連,每個(gè)通信單元及其連接的處理器核構(gòu)成“結(jié)點(diǎn)簇”

19、.   2 通信單元時(shí)序和功耗優(yōu)化 </p><p>  為了在45 nm工藝下實(shí)現(xiàn)2 GHz時(shí)鐘頻率,我們對(duì)通信單元進(jìn)行了專(zhuān)門(mén)的時(shí)序和功耗優(yōu)化,主要優(yōu)化內(nèi)容包括面向通信協(xié)議的內(nèi)部互連優(yōu)化和面向數(shù)據(jù)隊(duì)列的優(yōu)化. </p><p>  2.1 面向通信協(xié)議的內(nèi)部互連優(yōu)化 </p><p>  由于通信單元共支持8個(gè)雙向端口,因此單元內(nèi)部的連線(xiàn)資源非常多,給物理設(shè)計(jì)帶

20、來(lái)了很大的困難.考慮到多核處理器片上網(wǎng)絡(luò)主要用于傳輸Cache一致性報(bào)文,雖然使用4個(gè)物理通道分別用于傳輸請(qǐng)求、響應(yīng)、監(jiān)聽(tīng)和監(jiān)聽(tīng)?wèi)?yīng)答四類(lèi)報(bào)文,但是根據(jù)協(xié)議的特點(diǎn),并不是任何兩個(gè)部件間均需要進(jìn)行報(bào)文傳輸.以圖2(a)的片上網(wǎng)絡(luò)為例,對(duì)于監(jiān)聽(tīng)通路,只有DCU會(huì)主動(dòng)發(fā)出監(jiān)聽(tīng)請(qǐng)求,另外級(jí)連端口6和7(LP6和LP7)也會(huì)發(fā)送來(lái)自級(jí)連的其他通信單元的監(jiān)聽(tīng)請(qǐng)求.接收監(jiān)聽(tīng)請(qǐng)求的部件為4個(gè)L2Cache,以及級(jí)連端口LP6和LP7.級(jí)連端口5(LP5)

21、既不發(fā)送也不接收監(jiān)聽(tīng)報(bào)文,因此不需要監(jiān)聽(tīng)數(shù)據(jù)通路. </p><p>  根據(jù)以上特點(diǎn),可以?xún)H在具有通信需求的部件間設(shè)計(jì)通路,節(jié)省內(nèi)部互連線(xiàn)資源,例如對(duì)監(jiān)聽(tīng)通路內(nèi)部互連通路的簡(jiǎn)化如圖3所示.簡(jiǎn)化后共使用6個(gè)仲裁器(ARB0~ARB5),每個(gè)仲裁器最多僅需要3個(gè)輸入報(bào)文緩沖隊(duì)列,互連通路共16條.若使用標(biāo)準(zhǔn)的8端口全交叉方式設(shè)計(jì),則需要8個(gè)仲裁器,每個(gè)仲裁器7個(gè)輸入報(bào)文緩沖隊(duì)列,互連通路56條.基于同樣的思想,可以

22、對(duì)其他物理通道進(jìn)行優(yōu)化設(shè)計(jì),總體上降低整個(gè)通信單元的邏輯和連線(xiàn)資源. </p><p>  2.2 面向數(shù)據(jù)隊(duì)列的優(yōu)化 </p><p>  數(shù)據(jù)隊(duì)列緩存來(lái)自各個(gè)請(qǐng)求源的待仲裁的報(bào)文.每個(gè)源到每個(gè)目的都有對(duì)應(yīng)的數(shù)據(jù)隊(duì)列.數(shù)據(jù)隊(duì)列的深度取決于能夠緩存的報(bào)文的個(gè)數(shù)及報(bào)文類(lèi)型.為了減少數(shù)據(jù)隊(duì)列的面積開(kāi)銷(xiāo),同時(shí)盡量避免帶數(shù)據(jù)報(bào)文由于信用耗盡被迫發(fā)送中斷,數(shù)據(jù)隊(duì)列被設(shè)計(jì)為能夠緩存3個(gè)報(bào)文,其中2個(gè)是

23、不帶數(shù)據(jù)的報(bào)文,1個(gè)是帶數(shù)據(jù)的報(bào)文(1個(gè)命令微包+4個(gè)數(shù)據(jù)微包).為了滿(mǎn)足時(shí)序要求,數(shù)據(jù)隊(duì)列為一個(gè)先進(jìn)先出的FIFO結(jié)構(gòu),使用寄存器搭建,以7深度的數(shù)據(jù)隊(duì)列為例,其結(jié)構(gòu)示意圖如圖4所示.為了使FIFO的輸出盡量靠近輸出接口,減少數(shù)據(jù)選擇站中報(bào)文數(shù)據(jù)的長(zhǎng)距離傳輸延遲,Q0寄存器固定為FIFO的輸出.每個(gè)寄存器的D端具有以下3個(gè)來(lái)源:1)來(lái)自新的報(bào)文的輸入(pkg_in);2)來(lái)自后一個(gè)寄存器的輸出;3)自己的輸出.FIFO讀寫(xiě)過(guò)程如下:當(dāng)

24、某一個(gè)寄存器作為FIFO尾之后的第一個(gè)無(wú)效寄存器時(shí),新的數(shù)據(jù)寫(xiě)入該寄存器;當(dāng)Q0被讀出后,其后所有保存有效數(shù)據(jù)的寄存器的值將同時(shí)移動(dòng)到各自的前一個(gè)寄存器中;當(dāng)Q0未被讀出時(shí),F(xiàn)IFO中所有的寄存器均保持當(dāng)前值.多路選擇器的控制信號(hào)包括:選擇(sel),移位(shift)和保持(hold),分別控制從新輸入報(bào)文</p><p>  3 實(shí)驗(yàn)及結(jié)果分析 </p><p><b>  

25、3.1 測(cè)試環(huán)境 </b></p><p>  考慮到處理器核心在芯片上按照上下對(duì)稱(chēng)的方式排列,芯片中間的面積用于片上網(wǎng)絡(luò)通道時(shí)更容易布局,我們構(gòu)建了如圖5所示的16核處理器片上網(wǎng)絡(luò)測(cè)試結(jié)構(gòu).處理器具有16個(gè)處理器核心,每個(gè)核心擁有私有的L2Cache,8個(gè)處理器核及對(duì)應(yīng)的L2Cache位于芯片上部,另外8個(gè)位于芯片下部.片上網(wǎng)絡(luò)位于芯片中部,4個(gè)通信單元通過(guò)端口5和端口6級(jí)連,由于通信單元0~3在拓

26、撲結(jié)構(gòu)上一字排開(kāi),因此位于兩側(cè)的通信單元相互通信需要經(jīng)過(guò)中間的兩個(gè)通信單元,造成跳步數(shù)多、延遲增加、帶寬受限.為了解決該問(wèn)題,我們使用配置為僅具有兩個(gè)端口的通信單元(通信單元4和5)分別連接通信單元1和通信單元2,通信單元0和通信單元3,以提高非相鄰?fù)ㄐ艈卧g的通信效率.為了對(duì)構(gòu)建的多核處理器片上網(wǎng)絡(luò)進(jìn)行測(cè)試,我們?cè)O(shè)計(jì)了L2Cache模型L2C_model、目錄控制單元的模型DCU_model和IO單元的模型IOC_model. &l

27、t;/p><p>  L2C_model的基本功能如下:1)每個(gè)L2C最多可以緩存8個(gè)未收到響應(yīng)的請(qǐng)求報(bào)文,否則不能發(fā)送新的請(qǐng)求報(bào)文;2)由于流拷貝(stream copy)程序具有較高的訪(fǎng)存壓力,因此L2C模型支持stream程序的發(fā)送序列模式:為了獲得接近真實(shí)情況下L2C已經(jīng)充滿(mǎn)時(shí)的情況,L2C平均每發(fā)送兩個(gè)讀請(qǐng)求會(huì)發(fā)送一個(gè)寫(xiě)回或者替換請(qǐng)求,且寫(xiě)回和替換請(qǐng)求發(fā)送概率相同;3)每個(gè)L2C可以緩存發(fā)出請(qǐng)求的特征信息,

28、如標(biāo)識(shí)(tag),等待響應(yīng)回來(lái)后通過(guò)匹配特征信息確認(rèn)是哪一個(gè)請(qǐng)求的響應(yīng),從而獲得從請(qǐng)求發(fā)出到接收到響應(yīng)之間的訪(fǎng)問(wèn)延遲.DCU_model的基本功能如下:1)根據(jù)實(shí)際的邏輯設(shè)計(jì)數(shù)據(jù),DCU的訪(fǎng)存延遲平均為25個(gè)時(shí)鐘周期;2)根據(jù)DCU的體系結(jié)構(gòu),設(shè)置DCU的緩沖和流水線(xiàn)中最多可以容納50個(gè)請(qǐng)求.IOC_model可以在有信用的前提下連續(xù)發(fā)送DMA讀或?qū)懻?qǐng)求,4個(gè)DCU體采用低位交叉方式編址,因此DMA請(qǐng)求依次輪轉(zhuǎn)訪(fǎng)問(wèn)各DCU模型. <

29、;/p><p>  3.2 測(cè)試及數(shù)據(jù)統(tǒng)計(jì)方法 </p><p>  3.2.1 帶寬的測(cè)試與數(shù)據(jù)統(tǒng)計(jì) </p><p>  對(duì)于L2C和IOC部件,統(tǒng)計(jì)發(fā)送請(qǐng)求的平均帶寬,對(duì)于DCU部件,統(tǒng)計(jì)發(fā)送響應(yīng)的平均帶寬.假設(shè)模擬系統(tǒng)的時(shí)鐘周期為T(mén)(ns),總模擬時(shí)間為t(ns),通信單元的目標(biāo)工作頻率為f(GHz),期間發(fā)送的微包數(shù)目為N,微包有效位寬為128位(16 Byt

30、e),則發(fā)送時(shí)的峰值帶寬(BWpeak)和實(shí)際帶寬(BWreal)可以分別按照式(1)和式(2)計(jì)算,單位為GBps. </p><p>  Stream copy程序的實(shí)質(zhì)是大塊數(shù)據(jù)拷貝,能夠衡量處理器的片上網(wǎng)絡(luò)和存儲(chǔ)系統(tǒng)在壓力訪(fǎng)問(wèn)下的性能和可擴(kuò)展性.在stream copy程序測(cè)試時(shí),L2C按照先發(fā)送2個(gè)讀請(qǐng)求、再發(fā)送1個(gè)寫(xiě)請(qǐng)求、1個(gè)替換請(qǐng)求這樣的發(fā)送序列發(fā)送報(bào)文.每個(gè)讀響應(yīng)數(shù)據(jù)為64 Byte,因此每一組發(fā)

31、送序列可以獲得128 Byte的讀響應(yīng)數(shù)據(jù).假設(shè)在t的模擬時(shí)間內(nèi)發(fā)送了K組發(fā)送序列,stream copy程序的讀響應(yīng)帶寬(BWstream)可以按照式(3)計(jì)算.   3.2.2 延遲的測(cè)試與數(shù)據(jù)統(tǒng)計(jì) </p><p>  延遲統(tǒng)計(jì)在L2C_model中完成.L2C_model每發(fā)出一個(gè)請(qǐng)求報(bào)文,則啟動(dòng)對(duì)應(yīng)該請(qǐng)求報(bào)文的時(shí)鐘周期計(jì)數(shù)器,當(dāng)該請(qǐng)求報(bào)文對(duì)應(yīng)的響應(yīng)報(bào)文返回到L2C_model時(shí),停止計(jì)數(shù)器,計(jì)數(shù)器的值

32、即為從發(fā)出請(qǐng)求報(bào)文到接收到響應(yīng)時(shí)整個(gè)過(guò)程的時(shí)鐘周期數(shù).通過(guò)將每個(gè)訪(fǎng)問(wèn)延遲按照一定的延遲區(qū)間進(jìn)行統(tǒng)計(jì),統(tǒng)計(jì)落在設(shè)定的延遲區(qū)間內(nèi)的訪(fǎng)問(wèn)延遲的個(gè)數(shù),可以得到訪(fǎng)問(wèn)延遲的分布情況.為了測(cè)試不同規(guī)模配置下的帶寬和延遲情況,我們對(duì)單核單線(xiàn)程(1C1T)、8核64線(xiàn)程(8C64T)、12核96線(xiàn)程(12C96T)和16核128線(xiàn)程(16C128T)4種典型配置進(jìn)行測(cè)試,分析不同規(guī)模下片上網(wǎng)絡(luò)的帶寬和延遲情況. </p><p>

33、  3.3 測(cè)試結(jié)果及分析 </p><p>  3.3.1 最大壓力測(cè)試 </p><p>  壓力測(cè)試是指使片上網(wǎng)絡(luò)和片上存儲(chǔ)系統(tǒng)的帶寬達(dá)到飽和的測(cè)試,使用的測(cè)試激勵(lì)為每個(gè)核的每個(gè)硬件線(xiàn)程執(zhí)行一個(gè)獨(dú)立的stream copy線(xiàn)程,同時(shí)IOC在不受IO部件帶寬限制的前提下,以通信單元端口的峰值帶寬連續(xù)發(fā)送DMA寫(xiě)請(qǐng)求.表1是不同規(guī)模配置下執(zhí)行壓力測(cè)試時(shí)的帶寬測(cè)試結(jié)果.64線(xiàn)程時(shí),請(qǐng)求聚合

34、帶寬(L2C請(qǐng)求總帶寬和IO DMA寫(xiě)請(qǐng)求帶寬之和)為104.43 GBps,每個(gè)DCU平均響應(yīng)帶寬為24.50 GBps,繼續(xù)增加線(xiàn)程數(shù),請(qǐng)求聚合帶寬和DCU平均響應(yīng)帶寬基本保持不變,達(dá)到飽和.隨著線(xiàn)程數(shù)增多,DMA寫(xiě)帶寬逐步減小,線(xiàn)程數(shù)達(dá)到最大規(guī)模時(shí),IO寫(xiě)帶寬達(dá)到下限6.26 GBps.我們另外測(cè)試了16C128T配置下stream copy程序和IO DMA讀同時(shí)執(zhí)行時(shí)的帶寬.測(cè)試結(jié)果為:每個(gè)L2C的平均請(qǐng)求帶寬為2.68 GB

35、ps,IO DMA讀請(qǐng)求帶寬為16.63 GBps,請(qǐng)求聚合帶寬為59.51 GBps,DCU的平均響應(yīng)帶寬為27.73 GBps.由于DCU帶寬已經(jīng)飽和,IO DMA讀訪(fǎng)問(wèn)影響了stream copy的帶寬. </p><p>  L2C14進(jìn)行延遲統(tǒng)計(jì),充分考慮到位于兩邊的通信單元上的L2C的訪(fǎng)問(wèn)延遲比位于中間通信單元上的L2C的訪(fǎng)問(wèn)延遲更大的特點(diǎn),統(tǒng)計(jì)最壞情況下的延遲分布情況. </p>&l

36、t;p>  分析帶寬和延遲測(cè)試結(jié)果可以看出:1)在沒(méi)有競(jìng)爭(zhēng)的情況下,互連網(wǎng)絡(luò)的訪(fǎng)問(wèn)延遲低,例如在單核單線(xiàn)測(cè)試時(shí),L2C報(bào)文延遲在64周期以下,且有50%以上小于64周期;2)L2C報(bào)文延遲主要由L2C請(qǐng)求在DCU中的等待時(shí)間構(gòu)成,DCU的響應(yīng)帶寬達(dá)到飽和是導(dǎo)致L2C請(qǐng)求在DCU中排隊(duì)時(shí)間長(zhǎng)的主要原因,當(dāng)線(xiàn)程數(shù)超過(guò)64時(shí),隨著線(xiàn)程數(shù)的增加,落在較大訪(fǎng)問(wèn)延遲區(qū)間內(nèi)的訪(fǎng)問(wèn)個(gè)數(shù)所占的比例逐漸增加;3)對(duì)于12C96T配置,DMA寫(xiě)請(qǐng)求能夠

37、獲得的帶寬下限為22.13 GBps,對(duì)于16C128T配置,DMA寫(xiě)請(qǐng)求能夠獲得的帶寬下限為6.26 GBps,超過(guò)96線(xiàn)程后,L2Cache的訪(fǎng)問(wèn)對(duì)DMA寫(xiě)帶寬影響顯著增加;4)對(duì)于16C128T配置,DMA讀請(qǐng)求能夠獲得的帶寬最低為16.63 GBps,相對(duì)于DMA寫(xiě)時(shí)的6.26 GBps,DMA讀請(qǐng)求受L2Cache訪(fǎng)問(wèn)的影響較小,主要原因是4個(gè)DCU體采用低位交叉方式編址,DMA寫(xiě)依次串行向4個(gè)DCU發(fā)送寫(xiě)請(qǐng)求報(bào)文,與16個(gè)L

38、2Cache同時(shí)競(jìng)爭(zhēng)請(qǐng)求通道,在公平優(yōu)先級(jí)的情況下DMA寫(xiě)請(qǐng)求和L2Cache請(qǐng)求的帶寬比約為1∶16,而DMA讀的數(shù)據(jù)通過(guò)響應(yīng)通道從4個(gè)</p><p>  3.3.2 單獨(dú)的IO DMA測(cè)試 </p><p>  我們?cè)O(shè)置L2C不執(zhí)行任何程序,進(jìn)行單獨(dú)的DMA讀和DMA寫(xiě)測(cè)試.測(cè)試結(jié)果表明,DMA讀帶寬最大為6.40 GBps,DMA寫(xiě)帶寬最大為6.65 GBps,已經(jīng)到達(dá)IOC部件的

39、最大有效帶寬.根據(jù)前面最大壓力測(cè)試的結(jié)果,即使在最大壓力下,DMA寫(xiě)帶寬也接近IOC部件所能達(dá)到的最大有效帶寬,因此DMA讀寫(xiě)帶寬的瓶頸在于IOC部件本身,通信單元接口所能提供的有效帶寬大于IOC實(shí)際的帶寬. </p><p>  3.3.3 單獨(dú)的stream copy程序測(cè)試 </p><p>  當(dāng)多個(gè)線(xiàn)程各自以未優(yōu)化的方式執(zhí)行stream copy程序時(shí),雖然每個(gè)線(xiàn)程內(nèi)源地址和目的

40、地址互不交疊,但是起始地址訪(fǎng)問(wèn)均落在同一個(gè)DCU中,且按跨步為1的方式依次訪(fǎng)問(wèn)各DCU.各線(xiàn)程同時(shí)啟動(dòng),每個(gè)線(xiàn)程訪(fǎng)問(wèn)DCU的行為相同,所有線(xiàn)程的第一個(gè)讀請(qǐng)求同時(shí)到達(dá)通信單元,某個(gè)DCU將接收到各線(xiàn)程的第一個(gè)讀請(qǐng)求.由于不同L2C訪(fǎng)問(wèn)同一個(gè)DCU時(shí)通過(guò)片上網(wǎng)絡(luò)的路徑不同,訪(fǎng)問(wèn)延遲具有差異,因此各線(xiàn)程開(kāi)始基本保持同步,之后延遲差異對(duì)各線(xiàn)程執(zhí)行速度的影響逐漸顯露,各線(xiàn)程執(zhí)行速度的差異越來(lái)越大. </p><p>  D

41、CU流水線(xiàn)處理地址相關(guān)時(shí),由于資源沖突,需要阻塞相關(guān)的地址.DCU流水線(xiàn)地址相關(guān)性處理方式是影響性能的一個(gè)重要因素.Stream copy程序訪(fǎng)存可能出現(xiàn)兩種極端情況:a)最壞情況(worst):各線(xiàn)程訪(fǎng)問(wèn)DCU中同一個(gè)目錄組,造成大量DCU流水線(xiàn)處理相關(guān),只能串行訪(fǎng)問(wèn);b)最優(yōu)情況(opt):調(diào)整線(xiàn)程訪(fǎng)問(wèn)地址,使不同線(xiàn)程訪(fǎng)問(wèn)DCU的不同目錄組,能夠減少DCU沖突.我們對(duì)這兩種情況分別進(jìn)行了試驗(yàn),測(cè)試結(jié)果如圖7所示,圖中折線(xiàn)反映了單核帶

42、寬、Cache系統(tǒng)的聚合帶寬和理想飽和帶 </p><p>  寬分別隨線(xiàn)程數(shù)增加而變化的趨勢(shì).圖7(a)為最壞情況下的試驗(yàn)結(jié)果,當(dāng)線(xiàn)程數(shù)從8(8-worst)增加到96(96-worst)時(shí),聚合帶寬隨著線(xiàn)程數(shù)的增加而增加,當(dāng)線(xiàn)程數(shù)達(dá)到96時(shí),聚合帶寬達(dá)到最高值29.88 GBps,為理想飽和帶寬的62.1%,當(dāng)超過(guò)96時(shí),隨著線(xiàn)程數(shù)繼續(xù)增多,聚合帶寬反而略有下降.圖7(b)為最優(yōu)情況下的試驗(yàn)結(jié)果,Cache系

43、統(tǒng)聚合 </p><p>  帶寬隨線(xiàn)程數(shù)的增多呈線(xiàn)性增長(zhǎng),在不同線(xiàn)程數(shù)目時(shí)均接近理想飽和帶寬.測(cè)試表明不同地址流模式下stream copy程序的性能差異較大.對(duì)于1線(xiàn)程到96線(xiàn)程,片上Cache系統(tǒng)具有較好的可擴(kuò)展性,超過(guò)96線(xiàn)程,Cache帶寬可能達(dá)到飽和.綜上,通過(guò)優(yōu)化設(shè)計(jì),片上網(wǎng)絡(luò)帶寬沒(méi)有成為片上存儲(chǔ)系統(tǒng)的瓶頸,其聚合帶寬能夠隨著處理器核與線(xiàn)程的增加而線(xiàn)性增加,訪(fǎng)存調(diào)度優(yōu)化是能夠發(fā)揮出片上網(wǎng)絡(luò)和存儲(chǔ)系統(tǒng)

44、性能的關(guān)鍵.   4 結(jié) 論 </p><p>  本文提出了一種用于多核微處理器的2 GHz片上網(wǎng)絡(luò)通信單元設(shè)計(jì)方案,通信單元能夠在45 nm工藝下達(dá)到2 GHz的工作頻率,流水線(xiàn)級(jí)數(shù)為2,最多支持8個(gè)雙向通信接口,每個(gè)端口單向峰值帶寬32 GBps.測(cè)試結(jié)果表明:構(gòu)建的片上網(wǎng)絡(luò)能夠滿(mǎn)足16核處理器存儲(chǔ)系統(tǒng)對(duì)網(wǎng)絡(luò)帶寬的要求,在對(duì)訪(fǎng)存優(yōu)化的情況下,聚合帶寬能夠隨著處理器核與線(xiàn)程數(shù)的增加而線(xiàn)性增加.通信單元還具有

45、可重用的特性,能夠通過(guò)優(yōu)化與擴(kuò)展進(jìn)一步在眾核處理器中使用.本文的研究成果已經(jīng)成功應(yīng)用于某國(guó)產(chǎn)16核高性能微處理器,片上網(wǎng)絡(luò)的實(shí)測(cè)頻率達(dá)到2 GHz.在今后的工作中,我們將進(jìn)一步考慮支持不同優(yōu)先級(jí)的仲裁策略,緩解多個(gè)通信單元級(jí)連時(shí)位于不同通信單元上的設(shè)備所獲得的通信帶寬和延遲不均衡的問(wèn)題. </p><p><b>  參考文獻(xiàn) </b></p><p>  [1] H

46、AMMOND L, HUBBERT B A, SIU M, et al. The stanford hydra CMP[J]. IEEE Micro, 2010, 20(2):71-84. </p><p>  [2] SHAH M, BARREH J, BROOKS J, et al. UltraSPARC T2: a highly-threaded, power-efficient,SPARC SOC[C]/

47、/Proceedings of the IEEE Asian Solid-State Circuit Conference. Jeju, Korea: IEEE Asian Publications,2007:22-25. </p><p>  [3] MARUYAMA T. SPARC64 VIIIfx: Fujitsu's new generation octo-core processor for

48、petascale computing[J]. IEEE Micro, 2010, 30(2): 30-40. </p><p>  [4] DEL CUVILLO J, ZHU W, HU Z, et al. FAST: a functionally accurate simulation tool set for the Cyclops64 cellular architecture[C] //The Fir

49、st Annual Workshop on Modeling, Benchmarking, and Simulation (MoBS-1). Wisconsin, USA: ISCA Conference Publications, 2005:14-24. </p><p>  [5] AINSWORTH T W, PINKSTON T. Characterizing the cell EIB on-chip n

50、etwork[J]. IEEE Micro, 2007,27(5):6-14. </p><p>  [6] ARM Limited company. Cortex-A15 Processor[EB/OL] http://www.arm.com/products/processors/cortex-a/cortex-a15.php,2012-04-18/2013-02-12. </p><p&

51、gt;  [7] TAYLOR M B, KIM J, MILLER J, et al. The raw microprocessor: a computational fabric for software circuits and general-purpose programs[J]. IEEE Micro, 2002, 22(2):25-35. </p><p>  [8] TILERA Company.

52、 TILERA: Tile64 processor[EB/OL]. [2010-06-12] http://www.tilera.com/products/processors/TILE64,2010-06-12/2012-11-15. </p><p>  [9] BALFOUR J, DALLY W J. Design tradeoffs for tiles cmp on-chip networks[C]//

53、 Proceedings of the 20th Annual International Conference Supercomputing. New York: ACM, 2006: 187-198. </p><p>  [10]KIM J, BALFOUR J, DALLY W. Flattened butterfly topology for on-chip networks[C]// Proceedi

54、ngs of the 40th Annual IEEE/ACM International Symposium on Microarchitecture. New York: ACM, 2007: 172-182. </p><p>  [11]DAS R, EACHEMPATI S, MISHRA A K, et al. Design and evaluation of a hierarchical on-ch

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論