▲采用PREMA架構(gòu)的HP ProLiant DL980 G7八路服務(wù)器
在8路系統(tǒng)中架起“立交橋”
我們知道,今天借助英特爾至強(qiáng)7500及其QPI直連技術(shù),服務(wù)器廠商無(wú)須第三方節(jié)點(diǎn)控制器技術(shù),就能輕輕松松把兩個(gè)四路系統(tǒng)拼接成八路服務(wù)器,從而推動(dòng)8路以上高端x86服務(wù)器市場(chǎng)的繁榮,但這其實(shí)是以犧牲一定性能為代價(jià)的,當(dāng)然這也給那些更具技術(shù)實(shí)力的廠商帶來(lái)了創(chuàng)新機(jī)會(huì)——可以提供性能更好、效率更高的高端服務(wù)器方案。
為了讓大家更容易理解,我們不妨打個(gè)比方,試想一下,在一個(gè)擁有8條路交匯的路口,僅僅通過(guò)紅綠燈來(lái)指揮交通,車(chē)輛等候通行的時(shí)間必定會(huì)受到很大制約,而如果架設(shè)立交橋,則可以大大提高道路交通效率。與此類似,在一個(gè)擁有8顆處理器的服務(wù)器系統(tǒng)中,為了保證處理器之間的緩存一致性,需要通過(guò)CPU之間頻繁的監(jiān)聽(tīng)請(qǐng)求與響應(yīng)來(lái)協(xié)調(diào),但這會(huì)占用鏈路和緩存帶寬,而且,當(dāng)源監(jiān)聽(tīng)或監(jiān)聽(tīng)回復(fù)需要多個(gè)跳頻(hop)時(shí),這些源監(jiān)聽(tīng)還會(huì)造成內(nèi)存延遲,對(duì)此,我們有沒(méi)有可能借助“立交橋”來(lái)提高CPU通信效率呢?
答案是肯定的。在DL980中,HP就使用了以XNC(X Node Controller)節(jié)點(diǎn)控制器為核心的“立交橋”架構(gòu),該控制器技術(shù)源于HP Integrity Superdome 2。每顆CPU擁有4個(gè)QPI通道,其中1條連接另一顆處理器,并組成“QPI島”,第2條連接I/O,另外兩條分別連接兩個(gè)XNC控制器。XNC節(jié)點(diǎn)控制器主要有兩個(gè)功能:智能CPU緩存和冗余系統(tǒng)架構(gòu)。所謂智能CPU緩存,就是每個(gè)“QPI島”中的處理器可以訪問(wèn)存儲(chǔ)在節(jié)點(diǎn)控制器中的CPU緩存狀態(tài)信息,因此減少了CPU之間的緩存通信和訪問(wèn)本地內(nèi)存的延遲。這對(duì)于那些無(wú)須訪問(wèn)全局內(nèi)存,或只在一顆處理器或一組處理器內(nèi)運(yùn)行的應(yīng)用來(lái)說(shuō),效果更好,比如虛擬機(jī)、SAP、高性能計(jì)算等。
如果不使用節(jié)點(diǎn)控制器,會(huì)怎樣呢?如下圖所示。在一個(gè)沒(méi)有控制器的8路系統(tǒng)中,CPU之間無(wú)法完全通過(guò)QPI直連,比如CPU0不能與CPU6實(shí)現(xiàn)直連,向CPU6發(fā)送任何請(qǐng)求回應(yīng)信息都要經(jīng)過(guò)CPU7,中間存在兩次跳頻(Hop)。平均下來(lái),這類系統(tǒng)每次監(jiān)聽(tīng)請(qǐng)求和響應(yīng)要經(jīng)過(guò)1.57次跳頻,QPI鏈路帶寬有60%都被這些CPU緩存監(jiān)聽(tīng)所消耗。相比之下,在采用智能CPU緩存的HP PREMA架構(gòu)中,處理器之間實(shí)現(xiàn)了“單跳”(Single hop)連接,減少了處理器間的通信流量,一致性監(jiān)聽(tīng)和回復(fù)僅占用10-20%的QPI帶寬,本地內(nèi)存訪問(wèn)延遲也比前一種方案要低30%。
因此,當(dāng)一個(gè)系統(tǒng)中的處理器數(shù)量增多,這些處理器之間的溝通協(xié)作也會(huì)以加速度增加,從而會(huì)帶來(lái)系統(tǒng)瓶頸,比如在一個(gè)16路系統(tǒng)中,某兩個(gè)CPU之間的通信可能需要至少3次跳頻。HP PREMA架構(gòu)通過(guò)其XNC節(jié)點(diǎn)控制器技術(shù),打破了這一瓶頸,不僅可以更高效地實(shí)現(xiàn)八路系統(tǒng),也能夠進(jìn)一步向16路、32路實(shí)現(xiàn)平衡、彈性擴(kuò)展——即在增加處理器資源的同時(shí)成比例添加內(nèi)存和I/O資源,這對(duì)于Scale-up服務(wù)器來(lái)說(shuō)是非常關(guān)鍵的。
今天的一臺(tái)DL980 G7可以在一個(gè)機(jī)箱內(nèi)最多支持到80個(gè)CPU內(nèi)核、160個(gè)邏輯處理器(使用最新的10核至強(qiáng)E7處理器),4TB內(nèi)存容量(使用128個(gè)DIMM插槽和32GB內(nèi)存條),16個(gè)I/O插槽,足以支持苛刻的計(jì)算密集型、內(nèi)存密集型、I/O密集型以及大規(guī)模虛擬化應(yīng)用。