加入RUN!PC粉絲團
 
企業採購 - 基礎架構
分享到Plurk
分享到FaceBook
 
處理器效能史大躍進
雙路效能新王者Xeon 5500猛虎出閘
文/不煩.責任編輯/何信達

按照既有Tick-Tock戰略計畫之進程,繼Core 2微架構及Penryn處理器家族之後,Intel如期推出Nehalem微架構處理器。該家族橫跨DT、NB、工作站及伺服器等平台,除了NB平台的Clarksfield、8路伺服器的Beckton,以單路伺服器及工作站的Bloomfield之外,最早讓世人了解全新Nehalem微架構規格及效能的是Core i7處理器(代號為Bloomfield)。如今採用Xeon 5500正式型號的Nehalem-EP處理器(原代號Gainestown),一上市之初即挾著屢破30項世界紀錄的雄姿,向2路伺服器界展現其傲人的實力。

在此之前,Xeon 5400 Harpertown處理器雖然也是四核處理器,但卻是由兩顆雙核的Penryn合併而成,如今Xeon5500終於以原生四核之姿面世,這點在電晶體數即可看出,由兩個Die合成的Xeon 5400電晶體數多達8.2億顆,5500只有7.81億顆。但後者Die尺寸卻比前者大得多,前者為263平方釐米,後者為214平方釐米,這是因為過去在晶片組中的記憶體控制器,被整合進Xeon 5500之中的原故,所以處理器尺寸會比較大。另一個值得注意的地方是Xeon 5500所搭配的晶片組,其所搭配的並非和Core i7的X58晶片組一樣,而是Intel 5520與較低階的5500晶片組,目前市面上以5520晶片組最為常見,但由於型號實在與Xeon 5500系列的處理器型號太像,所以難免會搞混。
Xeon 5500擁有許多全新架構上的變革及突破性的技術加持,其中最引人注目的包括Intel QuickPath Interconnect(QPI)互聯架構、超執行緒(Hyper Threading Technology;HTT)、整合式記憶體控制器(Integrated Memory Controller;IMC)、三層式快取、兩層式變換後備緩衝區(Traslation Look-aside Buffer;TLB)、整合電力閘(Integrated Power Gates)及智慧型電源管理等全新架構及技術。也因為如此,Xeon 5500甫一出道就屢屢在2路伺服器上締造全新效能紀錄,Intel甚至宣稱Xeon 5500是Pentium Pro推出後,15年來處理器效能史上的一大突破。

圖1 Xeon 5500系列。



圖2 30項破世界效能紀錄。



圖3 Intel-Nehalem家族成員。



圖4 Nehalem模組化架構。



圖5 Xeon5500系統架構圖。



圖6 新一代的10GbE控制器Intel 82599在4埠的傳輸下,效能可大幅提升!


QPI打通2路任督二脈記憶體頻寬大突破Xeon 5500最吸引人的一大變革,莫過於全面放棄延用已久的FSB匯流排,而改採QPI點對點互聯架構。雖然同屬點對點架構的AMD HyperTransport早已推出許多,但對廣大的Intel Xeon伺服器用戶來說,絕對是個具有劃時代意義的福音。透過QPI全新匯流排架構,Xeon伺服器上各插槽處理器之間,以及處理器與北橋晶片或記憶體之間的溝通,不再需要再敲FSB的大門,就可以直接互相聯繫,從此以後,終於可以向困擾已久的FSB效能瓶頸說再見。與Core i7不同的,Xeon 5500擁有2條QPI,其最高雙向鏈路總頻寬可達25.6GB/s,約為FSB 1600頻寬的兩倍之多。脫離了FSB束縛並擁有如此高I/O頻寬的Xeon 5500,其效能無怪乎有如猛虎出閘一般。不過並非所有Xeon 5500系列成員都擁有如此驚人的頻寬,原則上只有Xeon 5550以上才如此,也就是擁有6.4GT/s單向頻寬。凡是型號尾數非零者,皆屬Xeon 5500之低階成員,其QPI頻寬為4.8GT/s,在兩者之間的中階成員則擁有4.8GT/s的QPI速率。
既然CPU可與記憶體直通,所以也沒有再透過北橋媒介的必要,因此從Xeon 5500系列起開始了另一個創舉,該處理器中開始內建IMC控制器,從此記憶體規處理器控管。從此北橋晶片中不再內建有記憶體控制器,角色上也轉換成為純粹的I/O Hub,所以又被稱為IOH晶片。QPI加上IMC,也使得記憶體的資料傳輸路徑變短,原有延遲也獲得大幅改善。在記憶體種類上,Xeon 5500只支援DDR3模組,目前市面上大致又分成RDIMM(Registered DIMM)及UDIMM(unbuffered DIMM)兩種類型,前者容量較大,最高8GB,若以最多18條記憶體插槽的雙路Xeon 5500伺服器來計算,最高可擴充至144GB(8Gx16),此外,RDIMM並支援記憶體定址同位元防護(Memory Address Parity Protection)等防護機制。至於後者容量較小,最高單片容量以2GB較為常見,所以整個伺服器最多只能擴充到24GB(2Gx12)左右。不過,UDIMM最大優勢在於低功耗及低成本。所以兩者定位不同,而且兩者不可混插。
藉由IMC控制器,每顆處理器都有自己專屬的記憶體頻寬及3個DDR3通道,其最高記憶體頻寬高達32GB/s。值得注意的,除了容量不同外,並非所有Xeon 5500家族成員都用同一種頻率的DDR3模組,原則上,會依處理器之高中階三級,分別採用DDR1333、1066及800等不同模組。

HTT讓各核戰力加倍、Turbo Boost兼具效能與節能

圖7 有無HTT架構之差異比較。



圖8 Turbo Boost技術示意圖。



圖9 整合式電力閘閒置核心電源管理圖。


在效能上,HTT技術、多層次共享快取機制及SSE4.2指令集皆扮演極其重要的角色。雖然該技術早在Pentium 4時即已採用,但卻是讓Xeon 5500如虎添翼的一大推手。具備雙向HTT的Xeon 5500處理器之每顆核心可同時執行兩道執行緒,如此一來,每顆核心就如同吃了倍稱功力的大補丸一般。同時在作業系統中,原本四核的處理器,一旦啟動HTT,便會出現8顆邏輯處理器。對企業來說,比起購買更多的核心,HTT會是最划算的功能。原則上,唯有型號尾數是零者才支援HTT,這些處理器在規格標示上會顯示4(8),亦即四核8執行緒之意。
再就多層次共享快取機制的改進而言,其最顯著的改變莫過於全新3層式快取及兩層式TLB機制的支援,前者提供高達8MB超大容量的L3共用快取,對於虛擬位址與實體位址轉換效率之提升助益不小。此外,Xeon 5500 L3快取採用包含式(Inclusive)快取機制,所謂包含式指的是L1及L2的所有資料都會在L3中複製一份。所以某資料若在L3中找不到,那麼處理器就可判定所有核心中全都不會有該資料,便可直接進主記憶體找資料。反之,若某資料在L3中找到,亦可確定該資料也必定在某核心的L1或L2之中,處理器會向速度較快的L1/L2中撈資料,以加快速度。全新SSE4.2指令集共加入7條全新指令,其中包括可加速XML分析效能的STTNI指令、專門取代迴圈冗餘校正的CRC32指令、可提升DNA基因比對及語音識別等應用性能的POPCNT指令。總之,這些指令分別在不同專屬應用之性能強化上,扮演重要角色。
Xeon 5500並擁有極佳的智慧型電源管理機制,在處理器中具備功率控制單元(Power Control Unit;PCU) ,它會藉由整合式功率感測器之偵測,動態管理處理器的功耗及效能。此外,最引人矚目的莫過於全新整合式功率閘極(integrated power gates)及Turbo Boost功能之支援,藉由兩個技術,可視情況動態調整每個核心的電壓及頻率,並分別為不同核心進行超頻或降低功耗。只要有任何處理器核心處於閒置狀態,上述兩個功能會立即偵測到,並將電力降低至近似完全關閉的地步。對企業來說,這是一個兼具效能及節能的極佳方案。

進化虛擬機器及 動態資料中心基礎平台
過去為了徹底解決資料中心常久以來在建置、管理、維護成本上的沈重負荷,以及異質平台之間運算、儲存等資源的移轉、分配、調度及相容性上的種種問題,兼具彈性化、低成本及資源整合能力的虛擬化技術遂成為最佳熱門解決方案。一開始伺服器虛擬化主要在解決伺服器整合(Server Consolidation)問題,然後逐漸應用在動態資源管理的議題上,如今隨著雲端技術的快速發展,在企業內部私有雲端服務環境下,虛擬動態資料中心的自動化、可擴展性及隨需性等重要議題遂成為當前最受注目的焦點。

圖10 Xeon 5500與5300虛擬效能比較圖


對於動態資料中心來說,選擇好的硬碟虛擬平台,就如同選擇好的虛擬化軟體一樣重要。對此,Intel宣稱具備破紀錄高效能、超大記憶體頻寬、強大I/O處理能力,以及強大散熱效率的Xeon 5500系列伺服器,將可為動態資料中心提供最佳效能均衡平台。一般來說,在虛擬化架構中的實體主機上,會運行所謂的底層系統,然後再將這些底層系統匯集成為伺服器群集池(Server Pool),然後再於該Server Pool上建立可供對外服務的虛擬化主機,即使Server Pool背後有某台實體主機掛點,也不會讓對外服務受到任何影響。就高可用性的觀點來看,在建置成本、備援切換速度、可靠性、軟硬體維護成本等方面,虛擬化的表現都比其他N+1備援或負載平衡等HA方案都來得好。
對此,Xeon 5500所支援的新一代Intel VT技術,可讓不同世代的伺服器及其資源極具彈性地整合在同一個虛擬Server Pool之中。同時該平台並可整合內建整合式交換介面的全新10Gb乙太網路控制器,如此一來便可建立一個結合儲存及網路的整合式網路。具備超高I/O頻寬的Xeon 5500不但可有效提升虛擬化的效能,同時新一代Intel VT技術並可為原生虛擬化提升最多2.1倍的效能,並可減少虛擬化雙向延遲達40%。
有別其他軟體虛擬化方案,Intel VT是一種硬體輔助式(Hardware-assists)虛擬化技術,該技術大致劃分成VT-x、VT for Directed I/O(VT-d)及VT for Connectivity(VT-c)三大類技術,並分別個自獨立地內建在Xeon處理器、晶片組及網路卡之中。三類技術中,VT-x早在第一代Intel VT時即已推出,VT-x中的VTFlexPriority及VT FlexMigration都是較早推出且耳熟能詳的技術。
前者是透過處理器中的APIC中斷控制器或TPR暫存器,依照優先順序來監控過濾可能對系統效能造成不良衝擊的不要必中斷請求。同時VT FlexPriority會產生一個可被讀取,甚至客端系統能在不受VMM干擾下進行變更的TPR5虛擬複製分身,藉以提升系統的效能。後者最大效益在於能提供一個無縫、無停機之系統資源及工作負載的移轉機制,該無縫移轉適用於當前,甚至未來的Intel處理器伺服器。藉由該技術,虛擬管理軟體(Hypervisors)可建立一套橫跨所有伺服器的一致指令集,如此即可達成跨世代伺服器間的無縫移轉。
隨著Xeon 5500的問世,全新VT-x技術如記憶體分頁化虛擬機制(Extended Page Tables;EPT)與虛擬處理器ID(VPID)也隨之推出,兩者皆屬改善過去虛擬化中無謂延遲的一種技術。過去軟體式的Shadow Page Table分頁虛擬化及頻頻的位址轉換作業,對運算資源來說,無異一大負擔,負荷之餘若有錯誤發生往往會造成虛擬機器中斷跳出的情形。透過效能遠甚從前的硬體輔助式EPT技術,並且讓每個虛擬機器管理程式擁有專屬的分頁表,如此即可進行分頁表的編修,以及分頁錯誤控制等作業,系統運算資源的負荷得以大減,整體效能提升自然不在話下。VPID技術是用來專門解決虛擬機器每次進入時,虛擬實體間位址轉換頻頻需要寫到處理器TLB表中所造成的延遲問題。該技術會透過對特定虛擬機器轉換作業之監控,讓之後該虛擬機器之進出,不必再將轉換寫到TLB表中。對於虛擬機器進出時間之縮短及延遲改善會有顯著的幫助。

圖11 Intel VT-c之VMDq及VMDc技術示意圖。


隨著每台伺服器上整合的客端虛擬系統愈來愈多時,整個系統I/O的流量會變大,也會變得更加複雜。通常符合上述狀況的純軟體虛擬環境中,VMM管理軟體會被迫涉入插手每一筆I/O流量,過度頻繁的VMM插手行為,當然會讓資料傳輸變慢,並造成主機處理器的沈重負擔。
對此,VT-d技術可使VMM管理工具安全地將特定I/O裝置指派到特定客端系統上,同時,每個裝置在系統記憶體中會被賦予一個專屬的區域,同時只有裝置本身或指派的客端系統才能存取。換句話說,一旦上述初始指派作業完成,資料只會在指定的客端系統及裝置間傳輸,如此一來,VMM便無需再頻頻插手其間,主機處理器也能因鬆了口氣,資料傳輸效能也能獲得改善。同時,特定指派有如專屬通道一般,如此也能提升資料傳輸的安全性及可靠性。
再就伺服器網卡上的VT-c虛擬化技術來說,其最主要技術由原先的虛擬機器裝置佇列(Virtual Machine Device Queues;VMDq)技術,又新增了虛擬機器直連技術(Virtual Machine Direct Connect;VMDc)。過去虛擬環境裡,VMM管理軟體必須將所有單獨資料封包加以排序並傳送到指定的虛擬機器上,如此可能耗費過多的處理器週期。對此,VMDq技術會讓Intel網路卡上的專屬硬體來接手上述排序工作。並讓所有VMM軟體負責指定好預先排序封包群組(Presorted Packet Gorups)與客端系統間的路徑。因此每個客端系統皆有專屬的封包路由路徑,VMDq並可藉此有效控管所有虛擬機器的資料流量。如此一來,I/O延遲問題迎刃而解,並讓處理器週期用在必要的應用上,進而降低CPU使用率。據Intel表示,VT-c技術可讓I/O整體頻寬加倍,並達到接近虛擬應用原生頻寬的效能,如此每台伺服器可整合更多的應用,也不會造成太大的I/O瓶頸。
虛擬機器直連技術(Virtual Machine Direct Connect;VMDc)是Xeon 5500上的新功能,該技術藉由PCI-SIG SR-IOV(Single Root I/O Virtualization)標準,讓虛擬機器可以直接存取網路I/O硬體裝置,這對虛擬效能的提升很有幫助。前文提到的VT-d技術,可在客端系統及裝置上的I/O埠之間建立一個專屬通道。SR-IOV標準則進一步延伸此一基礎,在裝置上的每個I/O埠提供更多的直連通道。換句話說,若有10個客端系統想要存取公司網路,透過10Gb伺服器網卡上的單一連接埠,可讓每一個客端系統都能分配到安全且專屬的1 GB/s連線。這些直連連線會繞過VMM管理軟體的指令轉換,以更小的處理器負荷來加快I/O效能。

已準備待緒的新一代10GbE控制器
隨著Xeon 5500的上市,Intel也同時推出支援PCIe 2.0並提供I/O虛擬最佳化機制的第三代雙埠(Dual-Port)10GbE控制器-Intel 82599,該控制器支援整合式網路,可讓LAN、SAN及行程間通訊(Inter-process Communication;IPC)流量共享同一個乙太網。在產品型式上,該控制器採取整合式實體層(Integrated PHY)設計,可彈性地供SFP+標準網卡、主機板內建LAN(LOM),以及刀鋒伺服器夾層卡(Mezzanine Card)量產設計之用。在效能上,Xeon 5500伺服器搭配82599控制器所展現的雙向頻寬可破50Gbps大關,遠比前代伺服器的17Gbps快得多。

圖12 FCoE卸載等最佳化技術示意圖。



圖13 Intel 82599控制器。


面對今後的資料中心發展,具備將伺服器、儲存及網路作業整合至單一網路的乙太網路光纖通道(Fiber Channel over Ethernet;FcoE),會是最具低成本與低功耗的方案之一。為了加速FCoE的普及,Intel及Cisco等廠商皆開始推出FcoE原生控制器單元(Native Initiators),該驅動元件可解決當前各家FC硬體私有堆疊之不相容問題,就如同當前主要作業系統皆已內建iSCSI原生Initiators一樣,FcoE原生Initiators在於讓所有伺服器在出貨時都能支援FcoE,對於FcoE,乃至資料庫中心的普及皆有極大幫助。
在整合網路方面,Intel 82599同時支援FcoE原生控制器單元及iSCSI可信賴原生控制器元。面對FCoE,該控制器可透過資料路徑中FCoE協定的卸載,來減少與資料路徑內FCoE協定處理有關的CPU負荷。再藉由CRC卸載及直接資料配置(Direct Data Placement)功能,來加速資料路徑傳輸效能。透過FCoE分段傳輸(FCoE Transmit Segmentation)機制,可藉由主記憶體單一表頭之完整FC序列,讓FCoE Initiator能傳送更多的FCoE封包,如此可降低CPU的負荷。
對於iSCSI,82599不需藉助專屬iSCSI網路卡,就可讓SAN及LAN共享乙太網路架構。該控制器可加速iSCSI流量,並支援iSCSI Boot功能,也就是可經由iSCSI遠端啟動系統之功能,同時提供額外之網路管理功能。此外,該控制器除了藉由TCP Receive-side Coalescing引擎,加速Iscsi外,並分別透過TCP Checksum卸載來降低CPU使用率,以及TCP分段卸載(TCPSegmentation Offload)來提高iSCSI整體頻寬。此外,Xeon 5500並支援CRC指令集,該指令集更在不造成系統效能影響的情況下,提供更快速有效的資料完整性檢查(Data Integrity Check)。
除了FCoE 及iSCSI外,關於乙太網路儲存最佳化之技術尚有資料中心橋接(Data Center Bridging;DCB)機制,該機制會依據特定工作負載流量控制、頻寬配置及精準的壅塞管理來為龐大的流量進行分類,進而讓乙太網路能夠同時處理LAN及儲存之工作負載。



相關連結文章
新一代Xeon 5500伺服器速覽




【原文刊載於RUN!PC雜誌:2009年06月號】