基于CC―NUMA的多處理器系統(tǒng)研究
對于多處理器系統(tǒng),比較流行的有3種模式,對稱多處理(Symmetric Multiprocessing,SMP)模式、非均勻存儲訪問(Non Uniform Memory Access,NUMA)模式、大規(guī)模并行處理(Massively Parallel Processing,MPP)模式。SMP模式即將2個或2個以上的同樣的處理器連接到一個共享的主存上。在SMP系統(tǒng)中,所有的處理器可以同時訪問同一個物理存儲器,即運行同一個操作系統(tǒng),因此也被稱為均勻性存儲訪問系統(tǒng)。這種結(jié)構(gòu)比較簡單,但是由于其是共享存儲器,容易在訪存時產(chǎn)生系統(tǒng)瓶頸,可擴展性也比較差。MPP是分布式存儲器模式,可擴展性好,但是需要并行編程和并行編譯,在軟件系統(tǒng)構(gòu)建上比較復(fù)雜,使用不便。NUMA架構(gòu)將若干個單元通過專門的互聯(lián)設(shè)備聯(lián)結(jié)在一起組成分布式和共享內(nèi)存空間。每一個處理器可以訪問自己的存儲器,也可以訪問其他處理器或者共享的存儲器,所有訪存有遠(yuǎn)近、時延長短之分,稱為非均勻存儲訪問。在某個處理器訪問空間上比較遠(yuǎn)的存儲器時,會有很大的時延,為了緩解這個問題,通過高速緩存一致性使得處理器訪問存儲器的幾率大大降低,在某種程度上提高了系統(tǒng)效率,這種架構(gòu)稱為CC―NUMA即一致性緩存非均勻存儲訪問模式。這種架構(gòu)繼承了SMP和MPP系統(tǒng)的一些優(yōu)點,在處理器個數(shù),內(nèi)存大小、I/O連接能力和帶寬上有很大的伸縮性,又保持了SMP系統(tǒng)單一操作系統(tǒng)、簡單的應(yīng)用程序編程模式和易于管理的優(yōu)點。
本文引用地址:http://www.ex-cimer.com/article/202701.htm1 CC―NUMA基本架構(gòu)
CC―NUMA架構(gòu)的系統(tǒng)最出名的莫過于SGI公司的ORIGIN系列,SGI公司很好的發(fā)展和擴展了CC―NUMA技術(shù),其基本架構(gòu)被廣泛應(yīng)用。圖1是其ORIGIN2000的基本原理圖,每一個節(jié)點擁有2個處理器,2個二級緩存,主存,用于互聯(lián)的HUB芯片,1個I/O接口,1個互聯(lián)網(wǎng)絡(luò)的路由器接口,它的每個節(jié)點可以看作是一個SMP,通過互聯(lián)網(wǎng)絡(luò)可擴展至128個處理器的多處理器系統(tǒng)。Origin 2000的所有結(jié)點通過CrayLink高性能互聯(lián)網(wǎng)絡(luò)相互聯(lián)接,路由器是構(gòu)成CrayLink的基本單位,它包含6個端口,內(nèi)部采用交叉開關(guān)實現(xiàn)端口間的全互聯(lián)。每個路由器的2個端口用于聯(lián)接結(jié)點,其余4個端口實現(xiàn)路由器間的互聯(lián),形成互聯(lián)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。該CrayLink的半分帶寬與結(jié)點個數(shù)成線性遞增關(guān)系,對任意2個結(jié)點,至少能提供兩條路徑,保證了結(jié)點間的高帶寬、低延遲聯(lián)接和互聯(lián)網(wǎng)絡(luò)的穩(wěn)定性和容錯能力。
2 兩種比較新的架構(gòu)
SGI公司的Origin系列多處理器系統(tǒng)是一種比較通用的架構(gòu),但是還是比較復(fù)雜。后來,分別由Corepaq公司的Alpha EV7框架的處理器Alpha 21364和AMD公司的Opteron處理器組成的CC―NUMA架構(gòu)的多處理器系統(tǒng)簡單很多,這兩種處理器都是針對多處理系統(tǒng)領(lǐng)域推出的,其有著特有的專為多處理器系統(tǒng)應(yīng)用設(shè)計的處理器結(jié)構(gòu)。
2.1 Alpha 21364處理器
2000年,Compaq公司推出了Alpha處理器的第四代產(chǎn)品Alpha21364,這是一款RISC處理器,在當(dāng)時非常先進(jìn),在業(yè)內(nèi)首次在處理器內(nèi)集成了內(nèi)存控制器,特別是它還有先進(jìn)的多處理互聯(lián)功能,在建造多處理器系統(tǒng)上很方便。
21364的簡化圖如圖2所示。21364是64位處理器,擁有1.5 MB的L2 CACHE,支持緩存一致性協(xié)議。內(nèi)部集成了2個RDRAM內(nèi)存控制器,在RDRAM中對于頁命中點對點的延遲是30 ns,加載應(yīng)用的延遲是75 ns,對應(yīng)高達(dá)12 GB/s的帶寬。最大的不同就是有一個路由器,有4個連接通道可與附近處理器相連,并與本地端口和I/O端口相連,每個連接通道提供6.2 GB/s的帶寬。
21364的處理器問互聯(lián)總線提供了CC―NUMA多處理器架構(gòu)間的無粘合連接,如圖3所示。處理器間的二維拓?fù)浠ヂ?lián)架構(gòu)滿足了最遠(yuǎn)的處理器間的最小系統(tǒng)延遲設(shè)計。這種架構(gòu)可擴展至128個處理器互聯(lián)。
2.2 Opteron處理器
AMD公司在2001年推出了其第8代處理器K8架構(gòu)的Opteron處理器。Opteron處理器基于X86系統(tǒng)架構(gòu)并對其做了根本性改善,屬于64位處理器,并兼容32位X86處理器架構(gòu)。Opteron處理器集成了內(nèi)存控制器,降低了訪存延遲,加大了訪存帶寬。Hyper―Transport(超傳輸)互連控制器也被集成到Opteron處理器內(nèi)部,在處理器和I/O子系統(tǒng)之間提供了拓展性極強的數(shù)據(jù)連接帶寬。在Opteron處理器內(nèi)部的數(shù)據(jù)通道為雙向16位的通訊,可以達(dá)到1 600 MT/s(每秒百萬次傳送)的工作效率,可提供雙向為6.4 GB/s的帶寬。AMD Opteron處理器之間以及處理器同I/O子系統(tǒng)之間如何通過HyperTransport(超傳輸)技術(shù)進(jìn)行互連。處理器之間的互連采用的是一致性協(xié)議(CoherentProtocol),相反I/O連接遵循的是非一致性協(xié)議(Non―coherent Protoco1)。集成了3個HyperTransport(超傳輸)互連控制器和1個內(nèi)存控制器的處理器,需要盡可能高效地把指令和數(shù)據(jù)信息發(fā)送到相關(guān)接口。為實現(xiàn)這一需求,系統(tǒng)采用了交叉通道架構(gòu)。
評論