多方位多角度 帶您重新詮釋多核技術(shù)
可以預(yù)見,倘若繼續(xù)沿著現(xiàn)有的通用、多核設(shè)計方案向前發(fā)展,X86處理器將會陷入一系列的困境,例如芯片高度復(fù)雜,開發(fā)和制造成本越來越高、芯片功耗無法控制等等。面對這樣的現(xiàn)實,X86業(yè)界轉(zhuǎn)變思想勢在必行。顯然,IBM Cell的新穎設(shè)計非常值得參考,英特爾的Many Core和AMD HyperTransport協(xié)處理器計劃可以視作Cell思想的變種。
圖4 DSP與通用CPU執(zhí)行專用任務(wù)時的效能和效率對比
Many Core:Cell思想的繼承與發(fā)展
在2005年的IDF技術(shù)峰會上,英特爾對外公布了Many Core超多核發(fā)展藍(lán)圖。隨著時間推移,Many Core計劃越來越明晰,我們可以肯定它將成為英特爾未來的X86處理器架構(gòu)。Many Core采用的也是類似Cell的專用化結(jié)構(gòu),我們知道,英特爾的四核心處理器采用對等設(shè)計,每個內(nèi)核地位相同,而轉(zhuǎn)到Many Core架構(gòu)之后,其中的某一個或幾個內(nèi)核可以被置換為若干數(shù)量的DSP邏輯,保留下來的X86核心執(zhí)行所有的通用任務(wù)以及對特殊任務(wù)的分派;DSP則用于某些特殊任務(wù)的處理。
依照應(yīng)用不同,這些DSP類型可以是Java解釋器、MPEG視頻引擎、存儲控制器、物理處理器等等。在處理這類任務(wù)時,DSP的效能遠(yuǎn)優(yōu)于通用的X86核心,功耗也低得多。在圖4中我們可以看到DSP與通用CPU的效率對比:功耗僅2瓦、特定功能的DSP芯片,在處理對應(yīng)任務(wù)時的效能比75瓦功耗的通用CPU更加出色,且由于DSP構(gòu)造簡單、頻率提升非常容易;由于DSP效能提升速度比通用處理器快得多,這樣隨著時間的推移,DSP的效能優(yōu)勢將越來越明顯。
而如果處理器將高負(fù)載的專用任務(wù)轉(zhuǎn)交給DSP執(zhí)行之后,那么主核心的運算壓力就大大減輕,系統(tǒng)整體效能將獲得明顯提升。
第一代Many Core架構(gòu)處理器可能采用“3個通用X86核心+16個DSP內(nèi)核”的組合(圖5),我們可以看到,它的原型是一枚四核心處理器,只是將其中一個核心置換成16個DSP邏輯而已,因此處理器的總體結(jié)構(gòu)和晶體管規(guī)模都不會有多大變化,但產(chǎn)品的實際水準(zhǔn)將獲得大幅度增強。在執(zhí)行Java程序、視頻解碼、3D 渲染等耗用CPU資源的任務(wù)中,DSP的效能都大幅優(yōu)于通用核心,因此Many Core產(chǎn)品在執(zhí)行這類專用任務(wù)時會有飛躍性的性能增益。
同時,DSP邏輯的能耗只有通用核心的幾十分之一,可以讓處理器的功耗出現(xiàn)可觀的降低。當(dāng)然,如果我們將英特爾的Many Core處理器與Cell相比,便會發(fā)現(xiàn)一個明顯的差異:Cell的主核心非常簡單,協(xié)處理器則非常強大;而Many Core的通用核心仍然居于主導(dǎo)地位,DSP更多只是一種輔助。
這種差異源自于二者不同的定位:Cell只要求具備強勁的浮點效能,而對整數(shù)運算不作要求,因此通用的主核心可以非常精簡;但Many Core必須考慮兼容大量的X86應(yīng)用軟件,專用的任務(wù)居于從屬性地位,在第一代產(chǎn)品中采用“三個通用核心+16個DSP核心”的組合應(yīng)該是比較恰當(dāng)?shù)摹?p>根據(jù)英特爾的遠(yuǎn)景規(guī)劃,第二代Many Core產(chǎn)品將在2015年前后面世。這當(dāng)然過于遙遠(yuǎn)了,但我們不妨來看看它是一款什么樣的產(chǎn)品(圖6)—擁有8個通用X86核心、64個專用DSP邏輯,片內(nèi)緩存容量高達(dá)1GB,晶體管規(guī)模則達(dá)到200億。受限于半導(dǎo)體工藝,后兩個目標(biāo)或許很難完全實現(xiàn),但Many Core設(shè)計將毋庸置疑成為標(biāo)準(zhǔn),而英特爾從這往后將逐步引入Many Core Array架構(gòu),不斷增強DSP的數(shù)量以及執(zhí)行能力,通用核心的地位將隨著時間推移不斷減弱,直到最后完全可能實現(xiàn)以DSP占主導(dǎo)地位的專用化運算模式。
圖5 從四核心平滑升級到“三核心+16DSP”的方案,即將其中一個通用核心置換成DSP陣列。
HyperTransport協(xié)處理器系統(tǒng)
在英特爾對Many Core概念作出具體探討之時,AMD也在考慮自己的未來處理器架構(gòu)。但與英特爾不同的是,AMD尚未考慮另起爐灶的Many Core計劃,而是利用現(xiàn)有的HyperTransport連接架構(gòu),對多路服務(wù)器系統(tǒng)進(jìn)行拓展。
Cray公司(克雷,著名的高性能計算機制造商)希望能在基于Opteron的超級計算機中使用矢量處理單元,以提升計算機的矢量運算效能。 AMD方面并不是簡單考慮在Opteron核心中增加一個矢量邏輯了事,而是計劃以此為契機,建立一個以AMD為中心的企業(yè)生態(tài)圈—這或許過于抽象,但看完下文的分析之后大家便能夠明了其中的含義。
我們知道,現(xiàn)有的Opteron多路系統(tǒng)并非采用共享前端總線的方式連接,而是借助專用的HyperTransport總線實現(xiàn)芯片間的直連。這樣,每一顆Opteron處理器都可以直接與其他的處理器進(jìn)行數(shù)據(jù)交換或緩存同步,不必占用內(nèi)存空間,無論系統(tǒng)中有多少數(shù)量的Opteron,整套系統(tǒng)都能夠保持高效率的運作。在該套平臺中,HyperTransport總線處于中樞地位,而它除了作為處理器連接總線外,還可以連接PCI-X控制器、 PCI Express控制器以及I/O控制芯片,也就是充當(dāng)芯片間的高速連接通路。
AMD公司考慮的一套協(xié)處理器擴展方案也是以此為基礎(chǔ),即為多路Opteron平臺開發(fā)各種功能的協(xié)處理器,這些協(xié)處理器都通過 HyperTransport總線與Opteron處理器直接連接。對Cray提出的需求,AMD給出的解決方案就是,將八路Opteron中的一顆 Opteron處理器置換成矢量協(xié)處理器,以此實現(xiàn)矢量計算性能的大幅度增長,而Opteron平臺本身不需要作任何形式的變動。
在未來,這種拓展架構(gòu)也可以延伸到PC領(lǐng)域,例如在PC中掛接基于HyperTransport總線的浮點協(xié)處理器、物理協(xié)處理器、視頻解碼器、專門針對Java程序的硬件解釋器,甚至可以是由nVIDIA或ATI開發(fā)的圖形處理器。為達(dá)成上述目標(biāo),AMD必須設(shè)計出一個高度穩(wěn)定的統(tǒng)一接口方便用戶進(jìn)行擴展,而借助各種各樣的協(xié)處理器,AMD64系統(tǒng)的性能將獲得空前強化。
如果從邏輯層面來看,AMD HyperTransport協(xié)處理器系統(tǒng)的實質(zhì)與英特爾Many Core平臺其實完全相同,兩者的區(qū)別更多是在物理組成方式:Many Core將專用的DSP邏輯直接整合于處理器內(nèi)部,AMD的協(xié)處理器系統(tǒng)則是借助HyperTransport總線在外部掛接,這樣用戶就不必為了獲得額外的性能購買新機,直接選擇相應(yīng)的協(xié)處理器掛接即可。由于協(xié)處理器類型將會非常豐富,每個用戶都能從中找到最適合自己的產(chǎn)品,這在無形之中增強了AMD HyperTransport協(xié)處理器平臺之于Many Core平臺的競爭力。
評論