複製鏈接
請複製以下鏈接發送給好友

Power7

鎖定
IBM Power 7處理器採用了IBM的45nm SOI銅互聯工藝製程,典型的Power 7處理器具有八個核心,提供4核、6核、8核心型號,晶體管數量達到了12億,核心面積567mm2,從這裏可以明顯看出Power7的與眾不同,作為對比,同樣八核心的Nehalem-EX具有23億個晶體管,整整多了一倍。
中文名
Power7
上市年份
2010
設計廠商
IBM
最高設計頻率
2.4 GHz 至 4.25 GHz
核心數
4、6、8

Power7基本資料

表 1
上市年份
2010
設計廠商
IBM
最高設計頻率
2.4 GHz 至 4.25 GHz
製造工藝
45 nm
指令集構架
Power ISA v2.06
核心數
4, 6, 8
L1緩存
32+32 KB/core
L2緩存
256 KB/core
L3緩存
32 MB

Power7發展歷史

x86處理器Nehalem佔據人們視線許久之後,其強有力的對手RISC陣營的一個重要的支柱:POWER架構最近開始動作連連,除了Freescale在嵌入式處理器市場的動作之外,IBM也開始在企業級微處理器市場出擊,在前幾天與硅谷中心地帶——斯坦福大學舉行的Hot Chips 21上,IBM宣佈了最新一代POWER架構——Power 7處理器的詳細資料。
關於為什麼具有這個差別後面將會談到。
距離上一代Power6推出已經經過了三年(2006年Power6推出),三年的時間內,CISC,或者説x86處理器已經有了不少的變化,Power7的情況又如何呢?請看下文。
和以往的IBM Power處理器不太一樣,IBM Power7是一個單晶片的八核處理器,而不是如Power5那樣由多個晶圓合體(Power7據説支持單個處理器兩個晶圓,也就是形成一個16核心處理器)。IBM Power7是一個典型的多核心處理器。
單個IBM Power7核心
IFU:Instruction Fetch Unit,指令拾取單元
CRU/BRU:Condition Register Unit/Branch Unit,條件寄存器單元/分支單元
LSU:Load/Store Unit,存取單元
ISU:Instruction Schdule Unit,指令調度單元
DFU:Decimal Fixed Point Unit,十進制整數單元
FXU:Fixed Point Unit,整數單元
VSX FPU:Vector-Scalar Extension Floating Point Unit,向量/標量擴展浮點單元
通常,一條指令從左下開始順時針執行到右下
Power7處理核心的最大特點是它具有12個執行單元,以及4個同步多線程。這12個執行單元是:
兩個FXU整數單元+一個DFU十進制整數單元:十進制整數單元的用途目前暫時難以看到
四個VSX FPU向量/標量擴展浮點單元:和傳統的FPU不同,它可以進行向量計算。Power7基於Power Architecture版本2.06,擴展了指令集以支持向量運算,對比於通常的SIMD,向量運算會具有更高的效率,它可以更好地利用寄存器
共四個LSU存取單元:內存存取——Load兩個,Store兩個——因此它緊挨着L1,以及L2
一個CRU條件寄存器單元和BRU分支單元:POWER架構和我們常見的x86不同,有些時候,一種特別的浮點運算是由額外的單元執行而不是由通用整數單元執行,這就是和POWER架構的condition register條件寄存器相關的運算,它由CRU來執行
BRU分支單元執行分支指令,實際上,它和CRU結合緊密,因此合在一起;CRU和BRU都有點偏向於控制單元(如IFU和ISU這樣的就是徹頭徹尾的控制單元),控制着指令的走向,因此它們靠近IFU指令拾取單元,也靠近L1/L2的位置
Power7是OOOE(Out-of-Order Execution,亂序執行)架構的處理器,和上一代Power6的IOE(In-Order Execution,順序執行)不同——有趣的是,Power5是OOOE的,也就是説,Power7又變回去了。
順序執行的結構簡單,可以獲得較高的運行頻率,亂序執行則可以獲得更好的運行效率,但是設計會變得複雜——設計不是問題,問題是發熱量也隨之增大。從結果來看,Power7的頻率應該比Power6低一點。至於執行效率本身,亂序本身顯然更好,Power7的流水線級數進行了縮減和優化以提升運行頻率。
Power7的內核相對來説是非常複雜的,12個相對獨立執行單元的設計可不常見,如Nehalem約有9個執行單元(不過執行端口只有6個:三個運算端口,三個存取端口。三個運算端口可以同時執行三個整數運算和三個浮點運算)。Power7在每個時鐘週期可以分發6條指令,Nehalem則是4條,在單位時鐘的微指令執行能力上,Power7大約是Nehalem的1.5倍。
強大的執行能力讓Power7可以具有更多的多線程能力:每個Power7具有4個同步多線程Power5Power6都是兩個。同步多線程是充分利用亂序架構的好方法,相對來説,順序架構利用起來就比較難。近年來處理器的發展是追求低功耗、大規模並行,越來越走向多路處理了,既然走向了多核心,那麼走向更多路的SMT同步多線程也就順理成章了,相對來説Power7的功耗並不高,見後。在並行編程方面,進展比較緩慢,但進步總是有的。
顯然,多線程技術將會越來越盛行,我們熟悉的x86世界:AMD已經宣佈要採用多線程技術,而Intel的Nehalem將來可能會進化到4個多線程。
IBM Power7具有4層緩存架構——這取決於你怎麼看,我們暫且這麼認為。首先每個核心具有單獨的32KB的L1(筆者認為應該是L1-I和L1-D分別32KB)和256KB的L2,以及32MB的L3(或者説L4)緩存,為什麼説它有四層緩存呢?因為在這32MB L3(L4)當中,有4MB的緩存,其延遲只是L3(或者説L4)的1/5,特別快,足以認為它形成了一個新的緩存層。這個緩存層屬於L3的一部分,可以被其他核心訪問。L2緩存的延遲為8個時鐘週期,比Nehalem的10個時鐘週期要快一些。
Power7的L3——L4緩存值得一提,它的容量達到了32MB(包括特別快速的L3或者説L2.5在內)!實際上,這些緩存(至少是大部分)屬於DRAM(Dynamic RAM,動態內存),和通常CPU使用的SRAM(Static RAM,靜態內存)不同,IBM稱之為eDRAM,embedded DRAM,集成動態內存。DRAM也就是我們通常的內存條使用的技術。
DRAM和SRAM的區別是:DRAM使用一個晶體管和一個電容存儲一個bit,由於電容會漏電,因此必須週期性地充電以維持數據,優點是簡單、便宜;SRAM則用6個晶體管Nehalem則使用了8個晶體管以降低功耗)組成的雙穩態觸發器電路來存儲一個bit,不需要週期性地充電,速度很快,然而佔地面積大,耗電高,造價也高。
為什麼要用DRAM呢?不是説DRAM的速度慢麼?這要從多個方面來考慮:首先是容量,Power7本身的8個核心以及4路多線程要求具有大容量的緩存以維持一定的性能水準,至少要達到30MB;其次是功耗,假如採用SRAM的話,其功耗將會非常高的:32MB的緩存會消耗大量的電力,並且設計更加複雜,多個核心的內部互聯也變得麻煩(4核心的Itanium 3 Tukwila具有30MB的SRAM L3,不過目前處於難產階段),使用DRAM的話,功耗將得到降低,同時佔地面積也更小,互聯線路也簡單了。唯一的缺點是性能,這一點無法避免,這應該就是L2.5或者説L3存在的原因,這個特別快速的4MB區域可能仍然是SRAM構成的。
大容量的L3通過內部互聯結構連接,據説處理器核心互聯的帶寬達到了500GB/s!經過了大容量L3(L4)的篩選之後,仍然需要大量的內存帶寬,Power7提供了兩個DDR3內存控制器,每個控制器支持4個DDR3通道,大約支持到主流水準:DDR3-1600,這樣內存控制器可以提供100GB/s的帶寬!內置內存控制器的設計並不容易,需要提供各種RAS特性,並需要面對多種不同廠商不同型號不同參數的內存模組。Nehalem支持三個DDR3通道,Nehalem-EX也只支持4個。
為了更好地支持多個內存通道,並提高性能,Power7每個內存控制器都具有16KB的重調度緩存來重新排序內存存取請求。
Power7的一個重點是多路處理器,Power7實現了SMP的硬件一致性處理。一般而言,隨着處理器數量的增多,處理器互聯總線的帶寬需求呈非線性的增長,受限於總線技術,一般的SMP系統在4路到8路左右就已經達到了飽和(x86的SMP機器都在這個範圍左右),更大的系統就必須採用其它的拓撲結構了。
Power7通過三個方面的設計來達到32路SMP能力:巨大的帶寬、特別的拓撲結構和特別的一致性協議。Power7的處理器間總線可以提供360GB/s的帶寬。
Power7使用了一個兩層的拓撲模型:4個處理器組成一個本地SMP組(需要7個本地I/O總線),然後8個SMP組之間兩兩直接互聯(每個SMP組需要7個外部I/O總線),為了實現這個目標,Power7提供了兩個總線:一個用於本地SMP,一個用於遠程SMP。總線的位寬是120Byte。
此外為了支持這個拓撲結構,Power7的一致性協議混合了兩種一致性消息的廣播方法:一種是全局廣播,一種是本地SMP組的猜測性廣播。這個一致性協議定義了13種狀態(Nehalem使用的MOESI是5種),並通過緩存線上額外的設置位,Power7最終實現了複雜的結構,在32路處理器、8核心、總共256個處理內核的SMP系統裏,可以同時維持20000個緩存一致性操作。
顯然,Power7打造了新的一代的頂級處理器平台:8核、4線程、32MB緩存,以及32路256核1024線程的大型SMP機器,Power7是目前處理器設計的巔峯之作。
它不能運行WINDOWS系統
頻率3.0GHz到4.1GHz
理論運算能力為每核心33.12GFLOPS,每顆處理器264.96GFLOPS。
全系列POWER7處理器均支持“智能線程”(Intelligent Threads)技術,根據任務需求動態調節處理器性能,比如當需要監控數百萬家庭用電量時優化為多線程處理,而當需要實時處理數據庫業務時又對較少線程高速運算進行優化。
如果應用軟件需要大容量內存,POWER7處理器還支持一項“Active Memory Expansion” 技術,通過內存壓縮,讓軟件可見的內存量最高兩倍於實際物理內存IBM表示通過該技術,SAP軟件可用內存量比系統實際內存可多出50%,可處理業務量將增加65%
POWER7系統還為虛擬機應用進行了優化,每個處理器核心支持10個虛擬機鏡像。目前的8路64核系統可支持單系統最高640個虛擬機同時運行。他們還將推出32路256核POWER7系統,最高同時運行1000個虛擬機

Power7評測

8核5GHz RISC處理器新代表IBM Power7+
在服務器市場,代表開放性架構的x86服務器儘管在銷量上可佔到總體的80%,但市場分額只能保持在50%上下,原因在於企業關鍵業務上,小型機向來都是首選。小型機,一種介於PC服務器和大型機之間的高性能計算機,一般認為,傳統小型機是指採用RISC、MIPS等專用處理器,主要支持UNIX操作系統的封閉、專用的計算機系統,所以又稱RISC服務器或Unix服務器。不久前,IBM發佈了其最新的RISC處理器Power7+。
IBM在8月底的時候公佈的Power7+處理器結構,同時還發布了採用Power7+的大型機zEnterprise EC12,現在採用Power7+處理器的服務器也將在10月3號首次問世,Power7+作為32nm製程工藝的IBM最新Power架構處理器,有8個核芯,主頻超過5GHz。
自從1993年Power1問世以來,Power架構已經有將近20年的歷史。基本上是每三年更新一代,IBM也憑藉着Power架構處理器,逐漸開拓Unix服務器市場。
憑藉這Power架構處理器這柄利器,IBM在Unix服務器(小型機)市場的華山論劍中力拔頭籌。
隨着Power4/5/6的發佈,IBM的份額是節節高升。曾長期佔據主導地位的Sun和惠普現在被IBM超過,根據權威諮詢機構Gartner和IDC的統計數據,2009年第三季度,IBM在Unix服務器市場佔據40%的份額,其次分別是惠普(30%)和Sun(不少於25%)。IBM、HP和Sun在小型機市場形成了三國鼎立之勢。
憑藉着Power架構系列處理器的強勁表現,IBM在小型機上超過了曾長期佔據主導地位的惠普和Sun。>>
8月28號,在硅谷舉行的Hot Chips 24 芯片大會上,IBM芯片領域的專家介紹了Power架構的最新一代處理器8核Power7+。IBM zEC12採用的IBM Power 7+處理器,主頻高達5.5GHz,而核心數也確定為6個。
最新的Power7+處理器採用的是32nm製程工藝,8核芯架構,此次Power7+處理器的發佈,吻合了IBM Power架構處理器每三年更新一代,且在兩代之間的X+發佈的規律。
此前的Power7是在2010年2月8號發佈的,IBM在紐約正式發佈其Power7處理器
典型的Power7處理器是單晶片的,具有八個核心,另外也提供4核與6核型號。晶體管數量為12億,核心面積567mm2。採用的是IBM的45nmSOI銅互聯工藝製程。
Power7處理器共有三級緩存,同時還集成了兩個四通道DDR3內存控制器,持續內存帶寬100GB/s,每個通道的速度為6.4Gbps,最大可以訪問32GB(使用兩根16GB內存條)。Power7處理器最大可以訪問256GB。SMP帶寬360GB/s,整個芯片總帶寬高達590GB/s。>>
從Power7到Power7+,最大的變化在於製程工藝從45nm提升到了32nm,在向上擴展(scale up)和向外擴展(scale out)上都有提升。
向上擴展上,雖然Power7+還是和Power7一樣是8核芯架構,但是主頻提高了不少,雖然IBM沒有正式給出Power7+的主頻數據,但是由於製程工藝從之前的45nm提升到32nm,有專業人士分析稱Power7+的主頻相比Power7提升了25%左右。大部分Power7處理器的主頻在3GHz到4GHz,而據報道稱Power7+處理器的主頻則是在5GHz以上,之前有消息稱應用在IBM最新大型機的Power7+主頻高達5.5GHz。
除了在主頻上的提升外,Power7+的L3緩存有提升,是Power7的2.5倍,此前Power7處理器中8個核芯共享25MB的三級緩存。在Power7+中,共享的L3緩存增加到了80MB,大約是此前的2.5倍。
而在橫向的向外擴展上,Power7+注重了帶寬上的考慮,此前在Power7處理器中,有一個QCM(quad-chip module)模式,就是將4個8核芯的Power7封裝在在一起,而在Power7+中,同樣有這種模式,只不過將原來封裝在一起的四個處理器改為了兩個,也就是DCM(dual-chip module)模式。
這種將多個處理器封裝在一起的好處是能夠提供高系統I/O帶寬。提供系統等的性能。單處理器的Power7+相比於Power7性能上有30%左右的提升,而DCM模式的Power7+相比於Power7則是有接近50%的性能提升。>>
首批採用Power7+處理器的是IBM大型機zEnterprise EC12,而不久前,IBM宣佈將會在10月3日發佈採用Power7+的RISC服務器。
目前IBM的RISC服務器採用的處理器多為Power7。IBM實際上在2011年2就宣佈停產Power6和Power6+處理器,基於這些處理器的產品也將陸續停止出售。
在2006年2月的國際固態電路會議(ISSCC)上,IBM 公佈了Power6處理器,那年10月的微處理器論壇和次年2月的ISSCC上披露了更多細節,最終在07年5月24日於北京召開的“Power6大突破,創"芯"世界”新聞發佈會上正式發佈了這款取代Power5+的新一代處理器。
有小幅改進的Power6+處理器是在2009年4月正式公佈的,但實際上在08年10月發佈的Power 560和570系統已經運用了Power6+處理器。從Power3起,IBM每三年發佈新一代的Power處理器,而在這三年中間又會發布X+處理器,Power7於2010年2月正式發佈,Power7+處理器則是在2012年9月發佈。
Power 7+ 派生處理器
第一個PowerPC處理器PowerPC 601,基本上是一個部份基本指令用微碼模擬的RSC處理器,採用了Motorola 88000為基礎的總線設計。這允許IBM在許多任務作站機器上使用這個處理器,只需要更換主板。自此 PowerPC和POWER架構有些許分岐,但大部份在指令層級仍然保持兼容。
使用在太空應用的抗輻射設計RAD6000處理器是一個POWER/RSC的派生架構。
IBM RS64家族處理器根基於PowerPC(因此也包括POWER),使用在RS/6000和AS/400產品線。它對商用工作優化,沒有POWER產品線應有的浮點運算。它被POWER4取代。
IBM Gekko處理器是修改過的PowerPC 750CXe,使用在任天堂Gamecube。任天堂的Wii使用更新的Gekko,Broadway。
Cell處理器也是從POWER架構派生。它具有一個複雜的多線程超標量核心,和稱作SPE (Synergistic Processing Elements)的八個獨立矢量處理器核心。這個處理器支撐了Sony的Playstation 3、Toshiba的數字電視系統,和IBM的高性能電腦。
微軟最新一代的遊戲主機Xbox 360使用一個循序運行的三核Xenon處理器,它基於PowerPC,擁有修改過的矢量單元,時鐘頻率3.2 GHz。
全文總結
作為RISC架構處理器的新代表,Power7+在製程工藝上提升到了32nm。IBM系統與科技事業部Power Systems總經理Ross Mauri曾經表示,IBM會信守承諾,保持每三年進行一次芯片的升級。這也就是説Power8將在2013年推出,到時候Power8的核芯數會是多少,製程工藝會不會提升到22nm製程?我們拭目以待吧。