IA-64微處理器與HP高性能服務(wù)器體系結(jié)構(gòu)
為進(jìn)一步提高處理器的總體性能,要求處理器不僅要能更快地執(zhí)行指令,而且還要在每個(gè)周期中執(zhí)行更多的指令,以處理更多的信息,即通常所說的“并行執(zhí)行”。而傳統(tǒng)IA-32微處理器架構(gòu)存在一些基本的性能限制。因此,美國HP和Intel公司幾年前開始合作開發(fā)IA-64架構(gòu)的處理器。通過把RISC和超長指令字VLIW技術(shù)結(jié)合起來,在微處理器級(jí)上改進(jìn)性能,以增加指令級(jí)上的并行性,這就是采用全新結(jié)構(gòu)的IA-64微處理器Itanium——“安騰”。
在該構(gòu)架中定義了一種新的被稱作“顯式并行指令計(jì)算”的全新系統(tǒng)架構(gòu)技術(shù)。每個(gè)指令周期可執(zhí)行20條指令,大致是RISC指令集的4倍,是CISC(復(fù)雜指令結(jié)構(gòu))指令集的5倍。此技術(shù)能在原有的條件下獲得最大限度的并行能力(即并行工作的潛力),并以明顯的方式傳達(dá)給硬件。同時(shí),在EPIC技術(shù)的基礎(chǔ)上定義了一種新的64位指令架構(gòu)(ISA)。新的64位ISA采用全新的方式,把顯式并行性能與推理和判斷技術(shù)結(jié)合起來,打破了傳統(tǒng)架構(gòu)的順序執(zhí)行限制和局限性(如錯(cuò)誤預(yù)測分支、存儲(chǔ)等待等),使并行能力達(dá)到了新的水平,圖1、圖2是EPIC的硬件微型體系結(jié)構(gòu)圖。
從上圖可看出,IA-64很像其他的64位RISC CPU:指令的長度是固定的,由一個(gè)指令、兩個(gè)輸入和一個(gè)輸出寄存器組成;指令只對(duì)寄存器操作;超標(biāo)量,具有多個(gè)不同的流水線或執(zhí)行單元,能夠并行執(zhí)行許多指令。具體來說,IA-64主要特性表現(xiàn)在以下幾個(gè)方面:
1.IA-64結(jié)構(gòu)把三種指令捆綁成128位長的單一指令,處理速度更快
IA-64屬于VLIW(超長指令集)架構(gòu),VLIW的架構(gòu)簡單,他將超標(biāo)量芯片的協(xié)調(diào)并行工作所必需的一部分控制電路交由編譯器處理,從而簡化了CPU的結(jié)構(gòu)。
2.位模板控制并行指令的執(zhí)行
每個(gè)128位IA-64捆綁指令包含一個(gè)由幾位組成的模板,它通過編譯程序明確告訴CPU可以并行執(zhí)行的指令。因此,CPU就不必倉促分析運(yùn)行時(shí)的指令流來找出隱含的并行性,并把這種信息裝入機(jī)器代碼。每一種指令包括三個(gè)通用寄存器(GPR)字段,并且這種字段是整數(shù)和浮點(diǎn)(FP)運(yùn)算指令特有的。這就是說,IA-64處理器將具有128個(gè)整數(shù)指令寄存器和128個(gè)浮點(diǎn)指令寄存器。所有的寄存器都是可編程的隨機(jī)存取寄存器;而x86只有8個(gè)整數(shù)指令寄存器和8個(gè)浮點(diǎn)指令棧。IA-64處理器由于不存在寄存器不足的問題,指令位更寬,寄存器等候時(shí)間更少。
3.預(yù)測指令消除錯(cuò)誤預(yù)測
IA-64編譯程序?qū)⒗妙A(yù)測技術(shù)來消除錯(cuò)誤預(yù)測分支指令引起的不良后果,并要求跳過超出分支指令的代碼塊。當(dāng)CPU在運(yùn)行時(shí)遇到一個(gè)預(yù)測的分支指令,它將沿著分支指令的所有目的地開始執(zhí)行該代碼,從而盡可能多地利用并行性。當(dāng)CPU發(fā)現(xiàn)實(shí)際分支指令執(zhí)行結(jié)果時(shí),保存有效結(jié)果而放棄無效結(jié)果。
4.推測性裝入指令
IA-64編譯程序掃描源代碼,從寄存器中發(fā)現(xiàn)即將到來的指令裝入,并加上推測裝入指令和推測檢校指令。在運(yùn)行時(shí),第一個(gè)指令在編譯程序要求數(shù)據(jù)之前,推測裝入指令確定從寄存器裝入數(shù)據(jù)。在讓編譯程序使用數(shù)據(jù)之前,推測檢校指令檢查裝入。推測裝入有助于消除存儲(chǔ)器存取時(shí)間長的問題,并幫助提高并行性。
IA-64系統(tǒng)使用基于Infiniband技術(shù)的總線結(jié)構(gòu),它以交換式系統(tǒng)總線代替目前的共享式總線為核心,將NGIO和FutureIO兩種技術(shù)合二為一,使系統(tǒng)總線、內(nèi)存總線帶寬和I/O總線帶寬都將大大提高。IA-64系統(tǒng)帶寬在2Gb/s以上,而目前的IA-32架構(gòu)的典型系統(tǒng)帶寬是1.06Gb/s,PCI帶寬一般是0.4Gb/s。
另外,IA-64還包括一系列的內(nèi)置特征,以延長計(jì)算機(jī)的正常運(yùn)轉(zhuǎn)時(shí)間,減少宕機(jī)時(shí)間。機(jī)器檢測體系在內(nèi)存和數(shù)據(jù)路徑中提供了錯(cuò)誤恢復(fù)和糾錯(cuò)能力,能讓IA-64平臺(tái)從預(yù)先導(dǎo)致系統(tǒng)失敗的錯(cuò)誤中恢復(fù)過來。
總之,與傳統(tǒng)的體系結(jié)構(gòu)相比,基于IA-64的處理器可以提供更高的指令級(jí)并行性(ILP)。這是通過使用推測和預(yù)測等先進(jìn)技術(shù),并輔以大量的內(nèi)部硬件資源來實(shí)現(xiàn)的。這些技術(shù)使編譯器能夠發(fā)揮最大效能來安排指令執(zhí)行,而同時(shí)使處理器亦發(fā)揮最佳效能來執(zhí)行指令。這種編譯器和處理器間的合力也正是IA-64有別于其它體系結(jié)構(gòu)的優(yōu)勢所在。
HP Superdome服務(wù)器
體系結(jié)構(gòu)
HP公司最先推出其支持IA-64的HP 9000 Unix服務(wù)器系列的新成員-Superdome,中文名字“超騰”。它既可支持Intel IA-64芯片體系結(jié)構(gòu),又可支持HP公司的PA-RISC 8600 CPU及其后繼產(chǎn)品,并分別以16、32和64路CPU配置提供產(chǎn)品。
HP Superdome服務(wù)器采用HP可擴(kuò)展計(jì)算結(jié)構(gòu)(SCA),基于全局共享內(nèi)存,即高速緩存一致性的非一致內(nèi)存訪問體系結(jié)構(gòu)(cc-NUMA),屬于第三代NUMA系統(tǒng)。其內(nèi)存帶寬為61.44Gb/s,I/O帶寬為7.6Gb/s。包括I/O在內(nèi)的所有資源均透明存取,本地節(jié)點(diǎn)保持大量相關(guān)緩存,使本地訪問內(nèi)存的次數(shù)最多,8節(jié)點(diǎn)交叉互聯(lián)支持高達(dá)256條內(nèi)存請(qǐng)求,使遠(yuǎn)程節(jié)點(diǎn)存取的平均等待時(shí)間明顯降低。
HP Superdome服務(wù)器采用模塊化設(shè)計(jì),由不同的功能模塊構(gòu)成,并以基本節(jié)點(diǎn)中配置2-16路CPU,2-4個(gè)基本節(jié)點(diǎn)組成的多節(jié)點(diǎn)系統(tǒng)中配置32或64路CPU的產(chǎn)品形式出現(xiàn)。圖3所示為6路HP Superdome服務(wù)器基本節(jié)點(diǎn)體系結(jié)構(gòu)?;竟?jié)點(diǎn)中的模塊主要是CPU擴(kuò)展模塊(又稱Cell模塊)、交叉開關(guān)模塊、磁盤存儲(chǔ)器擴(kuò)展模塊、基本的I/O等模塊;在多節(jié)點(diǎn)系統(tǒng)中,還包括路由器互聯(lián)模塊、PCI擴(kuò)展模塊、XIO擴(kuò)展模塊和圖形擴(kuò)展等模塊。
HP Superdome其核心采用了HP的Hyper Plane非阻塞8×8縱橫交叉開關(guān)技術(shù)(如圖4),交叉帶寬為61.4Gb/s,可將所有的處理器和存儲(chǔ)器通過交叉開關(guān)連接在一起,實(shí)現(xiàn)了從CPU 和I/O管道到存取系統(tǒng)的順利訪問。這些處理器、存儲(chǔ)器和交叉開關(guān)的結(jié)合組成了稱為NUMAlink的互聯(lián)結(jié)構(gòu),并提供最大16路CPU的基本節(jié)點(diǎn)配置。
為了進(jìn)一步增強(qiáng)擴(kuò)展能力,HP Superdome服務(wù)器使用了一種基于共享內(nèi)存的互連技術(shù)——即采用先進(jìn)的路由芯片,通過使用特殊的傳輸介質(zhì)構(gòu)成具有高帶寬和極低延遲的互聯(lián)網(wǎng)絡(luò)。路由芯片將所有基本節(jié)點(diǎn)上的交叉開關(guān)連接起來,形成一個(gè)單一的、連續(xù)的達(dá)1Tb的存儲(chǔ)空間。并且處理器和本地以及遠(yuǎn)程存儲(chǔ)器之間的通信寬帶(雙向)由原來的1.6Gb/s提高到3.2Gb/s,從而使4個(gè)基本節(jié)點(diǎn)連接組合成一個(gè)最多可配置4*16=64路CPU的并行服務(wù)器系統(tǒng),以提供對(duì)cc-NUMA真正的支持,如圖5。
目前,HP Superdome服務(wù)器的操作環(huán)境是64位的HP-UX UNIX操作系統(tǒng),該系統(tǒng)提供了完全的64位環(huán)境,包括64位系統(tǒng)內(nèi)核與地址空間,64位文件大小和文件系統(tǒng)大小,64位文件數(shù)據(jù)類型,能夠支持15000個(gè)應(yīng)用,與Superdome服務(wù)器的硬件結(jié)構(gòu)協(xié)同,完全可滿足包括電子商務(wù)、數(shù)據(jù)庫、ERP、科學(xué)計(jì)算等關(guān)鍵應(yīng)用的要求。
結(jié)語
并行處理是高性能計(jì)算的核心技術(shù)。其在微處理器這一系統(tǒng)級(jí)別的主要特征是盡可能提高指令級(jí)并行的能力;在服務(wù)器這樣的計(jì)算機(jī)系統(tǒng)級(jí)別,則主要是提高多個(gè)微處理器或微處理器單元協(xié)同工作的效率。而Intel IA-64微處理器和HP Superdome服務(wù)器的體系結(jié)構(gòu)可以說是充分體現(xiàn)了這一趨勢,因此具有了優(yōu)秀的性能,逐漸成為各自領(lǐng)域的領(lǐng)導(dǎo)產(chǎn)品?!?/P>
參考文獻(xiàn):
1. David A. Patterson & John L. Hennessy“Computer Architecture A Quantitative Approach”機(jī)械工業(yè)出版社 1999年.
2. “HP 9000 Enterprise Server Overview”惠普公司內(nèi)部資料.
3. Tam, S. Et. Al, “Clock Generation & Distribution For the First IA-64 Microprocessor”, IEEE Journal of Solid State Circuits, Vol.35, Issue 11, Nov2000.
4. Rusu, S. & Singer G, “The First IA-64 Microprocessor”, IEEE Journal of Solid State Circuits, Vol.35, Issue 11, Nov2000.
作者簡介:
曾 田:女,武漢數(shù)字工程研究所工程師,研究方向:實(shí)用計(jì)算機(jī)體系結(jié)構(gòu)。
吳向軍:男,高級(jí)工程師,武漢凌久新技術(shù)公司網(wǎng)絡(luò)事業(yè)部,技術(shù)總監(jiān)。
圖1 IA-64微處理器的硬件體系結(jié)構(gòu)框圖
圖2 IA-64微處理器EPIC機(jī)制圖
圖3 16路HP Superdome服務(wù)器基本節(jié)點(diǎn)體系結(jié)構(gòu)
圖4 8×8 Crossbar縱橫交叉互聯(lián)芯片內(nèi)部結(jié)構(gòu)圖
圖5 64路HP Superdome服務(wù)器結(jié)構(gòu)框圖(4個(gè)基本節(jié)點(diǎn)并行)
評(píng)論