這幾年在The Next Platform上,,我們?cè)谝恢彼伎家院?a class="innerlink" href="http://forexkbc.com/tags/IBM" target="_blank">IBM在 Power10處理器方面會(huì)做什么的同時(shí),,我們也一直在進(jìn)行相應(yīng)的分析,試圖明確已經(jīng)采用獨(dú)特內(nèi)存架構(gòu)十多年的Big Blue能做什么,。
現(xiàn)在我們知道了,。Power10不僅是一個(gè)設(shè)計(jì)精美的芯片,更是一個(gè)由其主要內(nèi)存緊密鏈接在一起的系統(tǒng)集群(在涉及到系統(tǒng)時(shí)可能會(huì)非常緊密),。自從公司參與美國(guó)國(guó)防高級(jí)項(xiàng)目研究機(jī)構(gòu)的超級(jí)計(jì)算體系結(jié)構(gòu)探索以來(lái),,這種體系結(jié)構(gòu)就一直在不斷發(fā)展,這項(xiàng)探索推動(dòng)Power7處理器的兩個(gè)超級(jí)計(jì)算機(jī)變體于2010年誕生,。這兩種機(jī)器都是PERCS項(xiàng)目的成果,, 并且于2006年11月,DARPA投入2.44億美元用于IBM未來(lái)硬件和軟件的開(kāi)發(fā),。借助Power10,,IBM可以擴(kuò)展和商業(yè)化多年以前PERCS項(xiàng)目奠定的技術(shù)基礎(chǔ)。
這種新架構(gòu)是無(wú)法一次性介紹清楚的,。因此,,我們將分為兩部分,首先討論P(yáng)ower10處理器,,然后再討論這種新的內(nèi)存體系結(jié)構(gòu),。此外,我們將討論一個(gè)簡(jiǎn)單的問(wèn)題:IBM是如何在橡樹(shù)嶺國(guó)家實(shí)驗(yàn)室和勞倫斯·利弗莫爾國(guó)家實(shí)驗(yàn)室輸?shù)袅藘纱伟賰|億級(jí)超級(jí)計(jì)算交易的,。有了IBM的支持,,這本來(lái)就可以達(dá)成協(xié)議,而且這還可能意味著未來(lái)的AMD Epyc處理器將具有類(lèi)似的基于SerDes的內(nèi)存和I / O控制器以及基于硬件的內(nèi)存和全局尋址,。
話不多說(shuō),,讓我們深入研究探討Power10處理器。
任何其他名字的云端
首先,,據(jù)我們所知,,IBM并沒(méi)有給Power10芯片起代號(hào)。即使這是事實(shí),,但這還是也難以讓人相信,,而且要是真的沒(méi)有命名,那就太愚蠢了,。有了多種語(yǔ)言版本的代號(hào),,在進(jìn)行相關(guān)交流時(shí)會(huì)非常方便。此外,,名字要酷,,這一點(diǎn)很重要。畢竟我們是人類(lèi),,標(biāo)簽不僅具有意義,,還要具有魔力,。因此,我們將在Power10芯片上賦予一個(gè)代號(hào),,這是對(duì)IBM工程師所做工作的一種洗禮,,也是為出于某些原因而無(wú)法解決這類(lèi)問(wèn)題的銷(xiāo)售人員提供幫助。
在IBM內(nèi)部,,低端Power9芯片被稱(chēng)為“ Nimbus”,,而針對(duì)大型NUMA鐵的高端Power9芯片被稱(chēng)為“ Cumulus”,這兩者都與當(dāng)今服務(wù)器基礎(chǔ)架構(gòu)日趨多云的性質(zhì)保持一致,。這些是大的“暴風(fēng)云”,,有時(shí)會(huì)合并為“積雨云”,從地面一直延伸到地面以上12公里,。對(duì)于Power10,,鑒于其更具空靈的本性,我們正式將其稱(chēng)為“卷云”,,即高聳在對(duì)流層外緣9至12公里間稀疏的龍鳳祥云,。
既然第一個(gè)問(wèn)題已經(jīng)解決了,那就來(lái)談?wù)処BM有望在一年后上市的Cirrus處理器,。
William Starke和Brian Thompto于本周在Hot Chips上發(fā)表了有關(guān)Power10的演講,。Starke是Power10處理器的首席架構(gòu)師,并參與了IBM幾代Power芯片的設(shè)計(jì),。Starke在2019年8月與我們談?wù)摿薖ower10會(huì)對(duì)帶寬方面給予多少關(guān)注,,然后我們還討論了Power9的“ Axone”處理器問(wèn)題。該處理器是實(shí)現(xiàn)Power10內(nèi)存子系統(tǒng)原型Power9芯片的推動(dòng)者,,該消息本該于去年宣布,,但至今還沒(méi)有任何動(dòng)靜。(我們的猜測(cè)是,,該原型旨在為購(gòu)買(mǎi)IBM級(jí)計(jì)算機(jī)的HPC中心提供一個(gè)軟件開(kāi)發(fā)平臺(tái),,但前提是IBM能拿下美國(guó)能源部的合同。)Thompto是Power10的核心架構(gòu)師,,專(zhuān)門(mén)負(fù)責(zé)對(duì)Cirrus核心進(jìn)行重新設(shè)計(jì),,重點(diǎn)是提高核心各個(gè)方面的能源效率
Power10內(nèi)核遵循新的Power指令集版本3.1,該版本于去年8月在OpenPower Foundation下開(kāi)工,。根據(jù)Thompto的說(shuō)法,,Power10內(nèi)核已添加了200多個(gè)新指令,這些指令旨在使微體系結(jié)構(gòu)在某些功能上更高效,,此外還增加了新功能,。以下是Power10內(nèi)核支持的重要新指令和數(shù)據(jù)格式的細(xì)分:
對(duì)于商業(yè)和HPC工作負(fù)載而言, Power10芯片在其矢量和矩陣數(shù)學(xué)單元中支持混合精度浮點(diǎn)數(shù)和整數(shù)格式非常重要,這使其能夠在本地處理器上支持機(jī)器學(xué)習(xí)訓(xùn)練和推理工作負(fù)載,。我們非常懷疑是否能在Power10芯片方面經(jīng)行有效的機(jī)器學(xué)習(xí)培訓(xùn),,但我們確信,推理將在主機(jī)處理器而不是在加速器上進(jìn)行,,因?yàn)橥评韺⑿枰度氲綉?yīng)用程序中,,并且與應(yīng)用程序中的其他處理過(guò)程非常緊密地結(jié)合在一起。如果推理將成為商業(yè)應(yīng)用程序中相對(duì)較少和稀疏的部分,,那么這才有意義。
以下是Power10芯片上SIMD向量引擎和矩陣數(shù)學(xué)輔助(MMA)單元的提要和速度,,表明Power10內(nèi)存所粘貼的DDR4內(nèi)存緩沖區(qū)上的OpenCAPI內(nèi)存接口(OMI)的路徑一直使用到矩陣數(shù)學(xué)單元的路徑,。
上面顯示的數(shù)據(jù)是針對(duì)胖Power10內(nèi)核的,該內(nèi)核具有同時(shí)設(shè)置的線程,,每個(gè)內(nèi)核具有八個(gè)線程(在IBM中稱(chēng)為SMT8模式),。對(duì)于IBM鎖定為SMT4模式的Power10芯片,將每個(gè)內(nèi)核的SIMD和MMA單元數(shù)量減少一半,,然后將芯片上的內(nèi)核總數(shù)乘以2,。同樣,它只是為了性能和每個(gè)內(nèi)核軟件許可調(diào)整硬件,。
如您所見(jiàn),,向量單元支持標(biāo)準(zhǔn)的32位單精度浮點(diǎn)數(shù)和64位雙精度浮點(diǎn)數(shù),這些浮點(diǎn)數(shù)是HPC工作負(fù)載的主體,,并且也經(jīng)常被AI工作負(fù)載使用,。但是Power10上的數(shù)學(xué)單元還支持兩種16位半精度浮點(diǎn)格式– IEEE float-16格式和Google更好的Bfloat-16替代方案,其動(dòng)態(tài)范圍比FP16大,,并且實(shí)際上與FP32相同,。在不犧牲數(shù)字動(dòng)態(tài)范圍的情況下,犧牲一些精度對(duì)于AI來(lái)說(shuō)是一個(gè)折衷方案,,這對(duì)機(jī)器學(xué)習(xí)訓(xùn)練和推理結(jié)果的影響很小,,并且允許在任何給定時(shí)間內(nèi)通過(guò)數(shù)學(xué)單元運(yùn)行更多數(shù)據(jù)。而這對(duì)機(jī)器學(xué)習(xí)結(jié)果有巨大的影響,。英特爾于6月宣布的“ Cooper Lake” Xeon SP處理器在其矢量引擎中支持Bfloat16處理,,Nvidia的“ Ampere” A100 GPU加速器也支持。顯然,,谷歌的TPU AI引擎也支持它發(fā)明的Bfloat16格式,,Tachyum的未來(lái)Prodigy處理器和Arm Holdings的Neoverse Arm服務(wù)器芯片設(shè)計(jì)也將支持這種格式。Ampere Computing和Marvell都為未來(lái)的Arm服務(wù)器芯片設(shè)計(jì)提供了Bfloat16支持,。
Power10芯片還支持4位,,8位和16位整數(shù)運(yùn)算,這對(duì)于機(jī)器學(xué)習(xí)推理工作負(fù)載最為重要,。數(shù)學(xué)單元根據(jù)具體情況累積為64位或32位,,并提供Power9芯片SIMD處理能力的兩倍和矩陣數(shù)學(xué)能力的4倍至32倍,。這對(duì)于處理器而言是一個(gè)巨大的提速障礙,并且許多客戶(hù)將能夠使用Power10芯片進(jìn)行推理而無(wú)需使用加速器-就像他們?cè)跀?shù)據(jù)中心中使用Intel CPU一樣,。
讓我們把Power10內(nèi)核放大,,然后逐步研究微體系結(jié)構(gòu),再研究片上系統(tǒng),。讓我們看一看power10的核心部分:
同樣,,這是Power10內(nèi)核的SMT8版本,您可以在內(nèi)核上看到2 MB的L2緩存段,,它是Power9內(nèi)核上的L2緩存的四倍,。加載和存儲(chǔ)單元的數(shù)量是存儲(chǔ)單元的兩倍,而內(nèi)存管理單元的數(shù)量則是存儲(chǔ)管理單元的四倍,,它們分別裝入SIMD和矩陣數(shù)學(xué)單元,,分別是Power9的2倍和4倍?;陔p插槽Power10服務(wù)器的硅前仿真,,與標(biāo)準(zhǔn)的4 GHz時(shí)鐘周期的雙插槽Power9服務(wù)器相比,此設(shè)置可產(chǎn)生比雙插槽Power9服務(wù)器高約20%的單線程性能,,并且平均核心性能提高了30%( 大概包括來(lái)自那些SIMD和MMA單元的少量數(shù)學(xué)運(yùn)算),。
深入研究微體系結(jié)構(gòu),下圖是Power10內(nèi)核的工作流程:
這張圖只顯示了SMT8設(shè)置的一半,,這一半很難繪制出來(lái),,但是其等效于SMT4內(nèi)核。您可以在系統(tǒng)的核心看到四個(gè)128位執(zhí)行片,,它們的前端是48 KB L1指令高速緩存,,后端是32 KB L1數(shù)據(jù)高速緩存。如您所見(jiàn),,此Power10內(nèi)核的許多功能是Power9內(nèi)核的2倍或4倍,,盡管其中一些功能僅作了適度的改進(jìn)。加起來(lái),,SMT8內(nèi)核平均可多完成30%的工作,,而且由于設(shè)計(jì)的原因,該過(guò)程從與Power9一起使用的GlobalFoundries的14納米工藝縮減到了三星的7納米工藝(其中還有一些額外的IBM產(chǎn)品)不僅是三星的V1流程),,每個(gè)內(nèi)核的功耗也減少了一半,。這是每瓦性能提高2.6倍的一個(gè)因素,聽(tīng)起來(lái)不同系列之間相差很多,,但您必須記住,,Power9和Power10系列之間也差不多有四年的時(shí)間。
這是令人印象深刻的改進(jìn),但是IBM是否能用兩年時(shí)間完成這項(xiàng)工作,?
IBM相對(duì)于Power Systems機(jī)器中的Nimbus和Cumulus接口,,使接口的功率或多或少保持恒定,但并未透露這些接口的功率是多少,。Starke所說(shuō)的是,,再次針對(duì)4 GHz性能進(jìn)行了標(biāo)準(zhǔn)化的Power10插槽,其整數(shù)性提升至約3.25倍,,浮點(diǎn)或Java性能約3倍,,以及Power9插槽的內(nèi)存帶寬性能約2.25倍。
該內(nèi)存帶寬數(shù)據(jù)是基于STREAM Triad基準(zhǔn)測(cè)試的,,這一點(diǎn)很有趣,,因?yàn)檫@使Power9上的直接連接的DDR4內(nèi)存與OMI內(nèi)存相對(duì),在OMI內(nèi)存上有由Power10芯片上的Serdes驅(qū)動(dòng)的DDR4記憶棒上的緩沖區(qū),。SerDes和緩沖區(qū)設(shè)置增加了大約10納秒的內(nèi)存訪問(wèn)時(shí)間,因此它不是免費(fèi)的,,而是正常的,。但是有趣的一點(diǎn)是,因?yàn)镺MI SerDes并非是針對(duì)DDR4進(jìn)行硬編碼的(但緩沖芯片是),。當(dāng)DDR5內(nèi)存出現(xiàn)時(shí),,它會(huì)位于相同的緩沖區(qū)后面,并且可以直接交換到Power10機(jī)器中,,此時(shí)內(nèi)存性能會(huì)在無(wú)需更改處理器或系統(tǒng)時(shí)即可突然再次翻倍,。
干得漂亮。
在討論了上述的Power10通用接口性能提升之后,,我們可能應(yīng)該看看該個(gè)接口,。因此,這里是已硬化為SMT8模式的Power10芯片,,其功能標(biāo)記為:
如您所見(jiàn),,Power10裸片上有16個(gè)內(nèi)核,但是IBM僅為其中的應(yīng)用激活15個(gè)(如果是SMT4模式則為30個(gè))內(nèi)核,。因?yàn)榭紤]到三星7納米工藝的良率,,第16個(gè)內(nèi)核并不是多余的(盡管IBM從統(tǒng)計(jì)學(xué)上來(lái)考慮的話的確如此),三星正在使用IBM Power10來(lái)制造其首個(gè)服務(wù)器芯片,。Power10的存在使得用于客戶(hù)端設(shè)備和智能手機(jī)的Samsung Exynos處理器看起來(lái)像個(gè)玩具,。相比之下,確實(shí)如此,。無(wú)論如何,,在某個(gè)時(shí)候,當(dāng)收益提高時(shí),IBM將能夠出售該第16核,,并且我們肯定他們會(huì)這么做,。
Power10芯片有180億個(gè)晶體管,目前還很輕,,它的面積為602平方毫米,,堆疊了18層金屬。該芯片具有128 MB的L3緩存,,我覺(jué)得很有趣的是IBM沒(méi)有像Power7,,Power8和Power9那樣使用嵌入式DRAM設(shè)計(jì),而是使用了三星蝕刻的常規(guī)SRAM,。Starke表示,,由于流程縮減,IBM可以做到這一點(diǎn),。
這是一點(diǎn)很有趣,。多年來(lái),我們?cè)赑ower10幕后看到的所有路線圖都將其固定在48個(gè)核心上,。如今,,由于上面提到的良率問(wèn)題,我們非常懷疑IBM是否會(huì)將48個(gè)內(nèi)核塞入甚至7納米的單片芯片中,,我們只是認(rèn)為IBM會(huì)基本上縮小Power9芯片,,增加改進(jìn)的I / O和內(nèi)存SerDes。并將其中兩個(gè)以SMT4模式放入單個(gè)插槽中,,以達(dá)到48核,。當(dāng)然這只是一個(gè)計(jì)劃,而不是IBM實(shí)際所做的,。
確切來(lái)講,,IBM一直向整個(gè)計(jì)劃靠近,創(chuàng)建了具有16個(gè)SMT8內(nèi)核或32個(gè)SMT4內(nèi)核的芯片,,并且還配備了雙芯片模塊選件,,以使內(nèi)核數(shù)量增加一倍,同時(shí)時(shí)鐘頻率適度減少在鐵心上保持最高速度,,并且仍保持在為自己的電源系統(tǒng)設(shè)置的散熱范圍內(nèi),。因此,它可以在一個(gè)接口中提供30個(gè)較大或60個(gè)較小Power10內(nèi)核,,每個(gè)接口總共240個(gè)線程,。
為了讓其正常運(yùn)行,有16個(gè)x8(八通道)OMI內(nèi)存接口,,總帶寬為1 TB /秒(車(chē)道以32 GT / sec的速度運(yùn)行),,還有16個(gè)PowerAXON x8接口也以32的速度運(yùn)行GT /秒,,并提供1 TB /秒的帶寬。這些PowerAXON接口可以運(yùn)行NUMA或OpenCAPI接口,,并且沒(méi)有充分的理由說(shuō)明它們不能運(yùn)行與Nvidia A100 GPU加速器一起使用的NVLink 3.0協(xié)議,,但事實(shí)是它們卻沒(méi)有。(嗯……)Power10處理器還具有兩個(gè)PCI-Express 5.0控制器,,每個(gè)控制器有16條通道,,在您意識(shí)到IBM希望通過(guò)PowerAXON鏈接將很多東西加入Power10芯片之前,這聽(tīng)起來(lái)并不多,。我們將看看IBM是否在這些PCI-Express 5.0控制器上支持Intel的CXL協(xié)議,。這使其沒(méi)有理由不正常運(yùn)行,并且從理論上講,,IBM不能通過(guò)PCI-Express鏈接支持AMD Radeon Instinct和Intel Xe GPU加速器,。但是,除非使用PCI-Express開(kāi)關(guān),,否則這將限制每個(gè)CPU,,使只能連接兩個(gè)GPU設(shè)備。目前尚不清楚是否可以通過(guò)PCI-Express協(xié)議在CPU和GPU內(nèi)存之間提供一致性,,但是從理論上講,,如果IBM仍想出售混合CPU-GPU系統(tǒng),則沒(méi)有理由不起作用,。至少在我們看來(lái)是如此。
這是IBM最初考慮在服務(wù)器中安裝Power10的方式:
我們認(rèn)為這些主題會(huì)有所變化,,并且Power10的SMT4變體也可以根據(jù)需要提供,。但是,正如您所看到的,,IBM將把其N(xiāo)UMA大部件集中在單芯片模塊上,,像在Power8和Power9機(jī)器中所做的那樣擴(kuò)展到16個(gè)插槽,但在具有以下功能的機(jī)器中使用的Power10雙芯片模塊最多達(dá)到四個(gè)接口,。為了使每個(gè)插槽的內(nèi)核數(shù)量增加一倍,,IBM只需將時(shí)鐘速度降低大約12.5%(從大約4 GHz降低到大約3.5 GHz),但這仍然可以將性能提高1.9倍,,并且使該系統(tǒng)擁有更多的I / O和同樣多的內(nèi)存容量,。所以說(shuō)這是一場(chǎng)公平交易。
順便說(shuō)一句,,這并不是IBM首次采用雙芯片模塊,。無(wú)論客戶(hù)是否知道,具有Power5 +,,Power6 +,,Power7 +和Power8處理器的系統(tǒng)都具有DCM的一些變體,。
HotChips 2020:采用三星7nm工藝的IBM POWER10 處理器
在日前舉辦的Hot Chips 2020會(huì)議上,IBM 介紹了公司最新一代的處理器——POWER10的一些進(jìn)展,。Power10對(duì)Power9進(jìn)行一些重大改進(jìn),。IBM聲稱(chēng)在相同的功率范圍內(nèi),其容量和處理器能效比上一代芯片提高了3倍,。
Power10處理器具有動(dòng)態(tài)執(zhí)行寄存器控制功能,,這意味著用戶(hù)可以設(shè)計(jì)出更能抵抗攻擊且性能損失可忽略不計(jì)的應(yīng)用程序。除此之外,,它還附帶有IBM所謂的“內(nèi)存啟動(dòng)”功能,,該功能使集群中任何基于Power10的系統(tǒng)都可以與其他系統(tǒng)共享內(nèi)存。同時(shí),,在等式的AI方面,,IBM表示,與Power9相比,,Power10處理器在企業(yè)AI推理任務(wù)方面的性能將提高10到20倍,。