基本資料
上市年份 | 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 |
---|
歷史
在
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,條件暫存器單元/分支單元
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個
同步多執行緒,
Power5和
Power6都是兩個。同步多執行緒是充分利用亂序架構的好方法,相對來說,順序架構利用起來就比較難。近年來處理器的發展是追求低功耗、大規模並行,越來越走向多路處理了,既然走向了
多核心,那么走向更多路的
SMT同步多執行緒也就順理成章了,相對來說Power7的功耗並不高,見後。在並行編程方面,進展比較緩慢,但進步總是有的。
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個虛擬機
評測
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伺服器(
小型機)市場的華山論劍中力拔頭籌。下圖是權威諮詢機構IDC 09年5月公布的關於小型機市場份額的數據圖。
從圖中我們可以清楚的看到隨著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。
全文總結
作為RISC架構處理器的新代表,Power7+在製程工藝上提升到了32nm。IBM系統與科技事業部Power Systems總經理Ross Mauri曾經表示,IBM會信守承諾,保持每三年進行一次晶片的升級。這也就是說Power8將在2013年推出,到時候Power8的核芯數會是多少,製程工藝會不會提升到22nm製程?我們拭目以待吧。