李實
作為業(yè)界百年巨頭,IBM的大中型電腦在銀行、金融等行業(yè)依舊有著不可小覷的地位和勢力,而這類產(chǎn)品的核心正是IBM自研的Power處理器。雖然Power處理器不是民用設(shè)計,離普通用戶很遠,但是其強勁的性能和復(fù)雜的設(shè)計,也一直是其他廠商可望不可即的存在,在業(yè)內(nèi)也有著獨立的地位。在今年的HotChips年會上,IBM披露了全新Power 10處理器,并宣布它將在未來12個月內(nèi)開始銷售。那么,Power 10處理器都有怎樣的出色設(shè)計和強勁性能呢?今天本文就和大家一起來解讀一下這款處理器的設(shè)計和優(yōu)勢。
IBM在2020年8月17日的HotChips年會上詳細介紹了其最新的Power10處理器。作為目前非x86架構(gòu)中最強大的處理器之一,Power架構(gòu)和相關(guān)生態(tài)圈在金融、商業(yè)、醫(yī)療保健和政府行業(yè)中依舊有著不可替代的作用和地位。上一代Power 9發(fā)布于2017年,一經(jīng)發(fā)布就引發(fā)業(yè)界關(guān)注,Power 9擁有最多24核心96線程、全新的微架構(gòu)、OMI內(nèi)存、NVLink支持、PCIe 4.0支持等多項進步,是當時最強悍的企業(yè)級處理器之一。時過境遷,在經(jīng)過多年的研發(fā)后,IB M又推出了全新Power 10。這一次,憑借7nm工藝、再度升級的架構(gòu)以及大幅加強的AI算力,Power 10又將給業(yè)內(nèi)帶來深遠的影響。
Power 10的發(fā)展歷史和設(shè)計理念
IBM在發(fā)布會上先回顧了IBM Power系列近幾代的發(fā)展歷史。首先從Power 7家族開始,Power 7和Power7+采用的是45n m和32n m工藝,進行了多核優(yōu)化,最多8個核心32線程,支持eDRAM L3緩存。Power 7之后是Power 8,后者的工藝升級到了22nm,核心數(shù)量升級到了12核心,每個核心支持8線程SMT,12核心總計可以執(zhí)行96個線程。在互聯(lián)方面,Power 8支持PCIe 3.0和NVLink,還加入了OpenPOWER聯(lián)盟,從這一代開始,IBM開始開源Power處理器的部分特性以吸引全球相關(guān)業(yè)者基于Power處理器推出產(chǎn)品。離我們最近的一代是Power 9家族,采用14nm工藝,核心數(shù)量升級到了最多24個,線程數(shù)量最多高達96個,這也是當前Power處理器家族的主力產(chǎn)品。
在2020年,Power 10終于正式上線。簡單來說,Power 10在單個系統(tǒng)中最多可以支持60個核心,每個插槽最多支持30個核心,每個核心可以根據(jù)配置情況的不同,支持SMT4或者SMT8,因此30個核心的處理器最多可以擁有240個線程。Power 10在處理器設(shè)計上采用了模塊化方案,處理器之間通過專用總線互聯(lián)。微架構(gòu)方面,Power 10使用的是新的CPU微架構(gòu),整個處理器還增強了AI性能、提高了能耗比、增強了硬件安全特性、企業(yè)級性能等。通用互聯(lián)架構(gòu)方面,Power 10支持目前最先進的PCIe 5.0技術(shù),整體硬件架構(gòu)設(shè)計非常激進。
在簡單介紹了IBM Power系列處理器發(fā)展的相關(guān)內(nèi)容后,IBM給出了設(shè)計Power 10的五大重點,這五大重點包括:
1.數(shù)據(jù)的帶寬、容量、可組合性和規(guī)模,Power 10系統(tǒng)將帶來TB/s的單個插槽數(shù)據(jù)帶寬,PB級別的系統(tǒng)存儲容量,每個集群最高擁有16個處理器插槽。
2.強大的企業(yè)級核心。Power 10擁有新的核心架構(gòu),整體設(shè)計更為靈活,緩存更大且延遲更低。
3.端到端的安全功能。IBM提供了PowerVM管理程序,可以配合軟件協(xié)同實現(xiàn)對硬件的優(yōu)化。
4.能源效率的改進。依靠全新工藝和架構(gòu),Power 10的能效比是Power 9的三倍。
5.AI性能的增強。相比Power 9,Power 10在數(shù)學(xué)矩陣方面的性能達到了前者的10倍至20倍。
Power 10的宏觀結(jié)構(gòu)
IBM在處理器設(shè)計的相關(guān)信息披露上還是相當積極的,發(fā)布會上展示了Power 10的大量新特性和晶元結(jié)構(gòu)圖??梢钥吹?,一個完整的Power 10核心擁有16個CPU核心,每個CPU核心可執(zhí)行最多8個線程也就是SMT8,每個CPU核心L2緩存的容量為2MB,L3緩存容量為8MB。IBM在L3緩存的設(shè)計上分為2個區(qū)域,每個區(qū)域64MB,分配給每個CPU核心為8MB。在CPU核心和L3緩存的外圍,則布置了SMP、內(nèi)存、各類加速器、各種計算集群和PCI界面。再向外一層則是PowerAXON互聯(lián)界面和內(nèi)存控制器(OMi)部分。
IBM給出了有關(guān)Power 10功能特性的詳細表格。在工藝和封裝方面,Power 10采用的是三星7nm工藝,這也是該工藝首次應(yīng)用在規(guī)模如此巨大的核心上。值得一提的是,三星7nm工藝使用的是EUV光刻,這意味著三星已經(jīng)成熟掌握了EuV高世代光刻技術(shù),并能夠開始量產(chǎn)如此復(fù)雜的CPU核心。Power 10處理器有180億晶體管,整體面積高達602平方毫米,擁有18個金屬層,配置方案為單核配置或者雙核配置。
在計算功能設(shè)計方面,Power 10處理器出于良率考慮,目前只開放了最多15個核心,再加上sMT8,因此單個Power 10處理器最多能實現(xiàn)120個線程。L3緩存方面,最多120HB容量,但是采用了低延遲和NuHA的設(shè)計方案。整個CPU設(shè)計還增強了企業(yè)級功能、AI和安全功能等。在性能方面,IBM提到Power 10的SIHD性能在普通情況下是Power 9的2倍,在矩陣計算中是Power 9的4倍。另外在L1緩存方面,Power 10的L1 MMU性能是Power 9的4倍。
內(nèi)存方面,Power 10設(shè)計了名為Open Memory Interface(開放性內(nèi)存系統(tǒng),簡稱0MI)的系統(tǒng),這個系統(tǒng)能夠支持各類不同的內(nèi)存,在配置DDR4的時候,其8通道內(nèi)存最多可以實現(xiàn)410GB/s的帶寬,但是在換用GDDR6的時候,帶寬會提升至800GB,s甚至更高。另外在0MI的支持下,Power 10支持存儲容量可高達2PB。
在外部互聯(lián)方面,IBM的PowerAXON互聯(lián)界面帶來了多核心之間的互聯(lián)功能,PowerAXON能夠提供高達1TB/s的互聯(lián)帶寬,并且還可以最多連接16個插槽或者設(shè)備,它也可以借助OpencAPI功能幫助系統(tǒng)連接更多的內(nèi)存、加速器或者I/O設(shè)備。
獨特的CPU配置方案和互聯(lián)系統(tǒng)
Power 10的CPU配置方案在業(yè)內(nèi)算得上是很獨特的。它目前有2種規(guī)格,其中一種是單核心方案,被稱為SCM,整個處理器包括15個核心和120個線程,運行頻率高達4GHz,整個系統(tǒng)可以配置1個或者16個插槽(主機)。另一個方案是雙核心方案,在這種情況下,2個Power 10 CPU核心被封裝在一個基板上,被稱為DcM,形成了等效1204平方毫米、擁有360億晶體管的巨大核心。這個核心的最大CPU內(nèi)核數(shù)量為30個,線程數(shù)量為240,頻率方面相比單核心產(chǎn)品要稍微低一些,運行頻率為3.5GHz,整個系統(tǒng)可以配置1個或4個插槽的方案。
接下來IBM重點介紹了Power 10的互聯(lián)系統(tǒng)。Power 10是通過PowerAXON和OMI在多個處理器之間組建互聯(lián)體系的。先來看PowerAXON,對SCM配置的Power 10處理器來說,PowerAXON互聯(lián)總線布置在CPU的4個角落,每個角落有32個總線通道,每個總線通道的帶寬是32GT/s,那么整個Power10能夠提供的PowerAXON互聯(lián)總線就是4×4×8×32GT/s=512GB/s。在互聯(lián)方面,每16個總線通道組成一個鏈接端子可以和外界進行互聯(lián),整個SCM配置的Power 10總計擁有8個通道,使用其中6個就可以和16個處理器實現(xiàn)高速互聯(lián)。
除了PowerAXON外,OHI也值得一提。整個Power 10的OMI總計有2個,分別分布在處理器的左右兩邊,每個OHI有8×8個32GT/s的通道,單個OMI可以實現(xiàn)256GB/s的連接,那么2個OMI就能實現(xiàn)512GB/s的連接。OHI除了連接內(nèi)存外,還可以連接SCH處理器。換句話來說,Power 10處理器的互聯(lián)包含了橫向的PowerAXON和縱向的OMI,最終可以利用處理器本身的互聯(lián)端口實現(xiàn)16個處理器的大規(guī)?;ヂ?lián)方案。
IBM還給出了Power 10在互聯(lián)方面的示意圖。其中SCM處理器之間的互聯(lián)可以通過PowerAXON和OHI完成,此外,OMI還留下了一部分空間用于連接內(nèi)存。前文提到過,每個OMI內(nèi)存連接能夠為每個處理器插槽提供高達4TB的內(nèi)存空間,搭配DDR4帶寬為410GB/s,其他還可以根據(jù)情況支持GDDR系列,以及存儲加密等功能。
除了上述內(nèi)容外,本次Power 10還借助PowerAXON帶來了內(nèi)存聚合功能。內(nèi)存初始化的時候可以將另一個節(jié)點的內(nèi)存映射為它自己的內(nèi)存,多個節(jié)點可以通過集群共享不同的內(nèi)存。借助這個功能,在節(jié)點中直接連接鄰居節(jié)點的內(nèi)存作為共享加載/存儲內(nèi)存。和其他方案不同的是,內(nèi)存可以作為低延遲的本地內(nèi)存使用或者作為NUHA延遲的遠程內(nèi)存使用。IBM舉了一個例子,比如一個集群中有8個節(jié)點,每個節(jié)點都有8TB內(nèi)存,總計64TB內(nèi)存的話,工作負載A對延遲要求比較敏感,那么可以將本地的4TB內(nèi)存作為低延遲內(nèi)存使用,滿足自己的計算需求。工作負載B對延遲不敏感,但是需要大容量的話,可以借用其他空余內(nèi)存,實現(xiàn)24TB的容量。工作負載c需要一部分低延遲內(nèi)存和一部分大容量內(nèi)存,那么可以利用本地的8TB低延遲內(nèi)存搭配16TB高延遲內(nèi)存使用,這樣一來,對一個集群中存在的所有工作任務(wù)都可以根據(jù)需求將所有64TB內(nèi)存作為自己的內(nèi)存,再根據(jù)其他占用或者空閑情況進行調(diào)配,大大提高內(nèi)存使用的靈活性和效率。
IBH提到,目前內(nèi)存聚合功能可能不僅僅是單個集群中多個節(jié)點之間的內(nèi)存容量聚合,還涉及集群之間的內(nèi)存容量聚合,甚至可以建立專用的內(nèi)存服務(wù)器,和無內(nèi)存節(jié)點之間共享使用,非常方便。
互聯(lián)性能方面,從IBM給出的數(shù)據(jù)顯示,Power 10的內(nèi)存性能在各個情況下都是Power 9系統(tǒng)的3倍以上,在使用DDR5 OMI內(nèi)存的時候,性能甚至可以達到Power 9的4倍以上,提升幅度令人驚訝。
POWer 10的CPU內(nèi)核:面向企業(yè)級計算和AI優(yōu)化
由于Power 10的定位是面向企業(yè)和政府等行業(yè)用戶,因此其在設(shè)計方面自然也針對企業(yè)級計算進行了大量優(yōu)化。IBM給出了一些數(shù)據(jù),比如Power 10的整體性能相比Power 9增加了30%,單核心性能增加了20%,性能功耗比相比Power 9處理器每核心達到了2.6倍,每個插槽達到了3倍之多。
在AI優(yōu)化方面,Power 10的核心加入了全新設(shè)計的4倍SIMD矩陣核心、2倍SIMD普通核心、新的ISA Prefix融合、增強的控制和分支單元、2倍的讀取單元、4倍的MMU以及4倍的L2緩存設(shè)計。由于整體計算規(guī)模大幅度增加,因此Power 10的AI計算性能相比之前的產(chǎn)品有了相當顯著的提升。
Power 10在架構(gòu)方面做出了很多優(yōu)化,IBM列出了最重要的四條內(nèi)容。其中第一條是Prefix架構(gòu),這個新架構(gòu)極大地擴展了操作碼空間、并行尋址、MHA掩蔽等操作的性能。第二條是新的指令和數(shù)據(jù)格式,這個內(nèi)容主要是加入了用于控制流和操作對稱的新標量指令以及用于提升AI操作吞吐量和數(shù)據(jù)的新指令。第三是高級系統(tǒng)功能和易用性改善,包括存儲控制、debug、內(nèi)存的冷頁面和熱頁面追蹤、復(fù)制粘貼的擴展等。第四是動態(tài)的能源管理,第五則是安全的云數(shù)據(jù)和云計算功能等。
最后再來看看Power 10的內(nèi)核。IBM給出了一張簡圖用于描述Power 10的內(nèi)核設(shè)計。從這個內(nèi)核設(shè)計可以看出,Power 10分為性能和功耗兩個部分,其中前者包含了所有的性能增強,后者包含了一些功耗方面的控制。性能增強部分本文之前已有介紹,包括增加的SIMD、更大的緩存、更低的延遲、更出色的分支預(yù)測技術(shù)等。后者則主要包括工藝提升、時鐘門控電路提升、架構(gòu)設(shè)計的優(yōu)化、減少的端口和訪問等。在架構(gòu)方面,IBM也給出了一些簡略信息。處理器的前端設(shè)計除了常規(guī)部分外,IBM還提到了LI指令緩存采用748KB、6路方案,執(zhí)行部分包括4個執(zhí)行區(qū)塊,每個都是128bit的規(guī)格,另外還加入了一個2×512bit的MMA也就是SIMD向量引擎和矩陣數(shù)學(xué)輔助加速單元,這是Power 10處理器計算性能最強大的部分。其余的部分包括:Load排序采用了SMT模式下128隊列、ST模式下64隊列的設(shè)計,Load失誤部分采用12個隊列的設(shè)計、指令拾取部分則是16個并行的模式等??偟膩碚f,就現(xiàn)有的消息來看,Power 10的內(nèi)核整體設(shè)計延續(xù)了之前Power 9的優(yōu)勢,但是在很多地方做出了加強,尤其是在計算能力和方面等。最終IBM給出了一個算法,Power 10能夠在性能是Power 9 1.3倍的基礎(chǔ)上,功耗降低至Power 9的0.5倍,因此最終Power 10的能耗比相比Power 9提升了2.6倍,令人稱贊。
余威猶在的Power家族
IBM的Power家族和相關(guān)處理器產(chǎn)品已經(jīng)伴隨整個業(yè)界許多年,在英特爾突飛猛進、AMD攻城略地甚至英偉達都進積極進入更多市場的今天,IBM的Power系列處理器看起來似乎“人淡如菊”,相當?shù)驼{(diào)。不過,低調(diào)歸低調(diào),Power系列處理器由于面向的市場和傳統(tǒng)市場完全不同,更加偏向穩(wěn)定以及追求安全性的企業(yè)、金融、政府市場,因此數(shù)據(jù)互聯(lián)能力、整個處理器的穩(wěn)定和持續(xù)工作能力反而更為重要,這也是IBM在Power 10中進一步提升數(shù)據(jù)互聯(lián)性能的原因。另外,在AI計算大行其道的現(xiàn)在,有關(guān)AI計算的加速也在Power 10中得到了體現(xiàn)。從Power 10的整個處理器架構(gòu)來看,毫不夸張地說,這幾乎是目前最龐大、最復(fù)雜和具有最多先進功能的高性能處理器產(chǎn)品。現(xiàn)在的IBM雖然遠沒有巔峰時期那么強大,但是“余威猶在”四個字用來形容它非常恰當,很多行業(yè)依舊無法離開IBM,Power 10的未來也讓人看好。