AMD走出自己的路 小芯片設(shè)計(jì)如何打造業(yè)界最強(qiáng)64核EPYC?
2019年5月,AMD迎來了自己的50歲生日。在X86這個(gè)行業(yè),她只比老大哥Intel小一歲,后者去年迎來了自己的50周歲紀(jì)念日。50年來,這兩家企業(yè)幾乎主宰了全球半導(dǎo)體市場(chǎng)的風(fēng)云變化,基本上Intel占主導(dǎo)地位,而AMD扮演挑戰(zhàn)逆襲者的角色。
AMD的最近一次逆襲,還得從5年前更換CEO說起。2014年10月份,即將發(fā)布Q2季度財(cái)報(bào)的AMD公司宣布CEO羅瑞德退位,這個(gè)職務(wù)將由時(shí)任COO的蘇姿豐博士(Lisa Su)接任。那時(shí)候的她,剛剛加入AMD公司2年而已。
彼時(shí)的AMD仍然處于蟄伏階段。在CPU及GPU領(lǐng)域,AMD的兩大對(duì)手Intel、NVIDIA已是如日中天,而當(dāng)時(shí)的AMD并沒有能足夠與之博弈的處理器和顯卡產(chǎn)品—;—;如今給AMD帶來巨大轉(zhuǎn)機(jī)的Zen處理器當(dāng)時(shí)還在開發(fā)當(dāng)中。不過,CEO蘇姿豐是標(biāo)準(zhǔn)的女強(qiáng)人,AMD不服輸?shù)难允强淘诠亲永锏摹?/p>
剛剛接任CEO沒多久,蘇姿豐就在接受媒體采訪時(shí)表態(tài)—;—;“我們不會(huì)活在Intel陰影下”,這句話不是蘇姿豐擔(dān)任CEO之后AMD才做的,多年來AMD實(shí)際上一直在這樣做。AMD希望尋求一條不同于Intel的發(fā)展之路。
太遠(yuǎn)的不說,從X86處理器進(jìn)入64位時(shí)代開始,AMD首次在64位指令集上做到了胳膊擰過大腿—;—;大家津津樂道的K8大錘處理器最關(guān)鍵的成功不是架構(gòu),而是搶先了64位指令集,如今我們?cè)谟玫腦86_64指令集的名字是AMD64,Intel后來也遵從了這一指令集。
在這之后,AMD在X86處理器發(fā)展上一直在走自己的路。2011年,AMD推出了推土機(jī)Bulldozer架構(gòu),這款處理器的設(shè)計(jì)思路非常先進(jìn),2個(gè)整數(shù)單元+1個(gè)彈性浮點(diǎn)單元的設(shè)計(jì)迎合了AMD收購(gòu)ATI之后意圖打造的CPU+GPU協(xié)同發(fā)展的理念,這種模塊化設(shè)計(jì)是X86發(fā)展的一個(gè)里程碑。
推土機(jī)首發(fā)桌面8核處理器
再后來,AMD推出了我們今天討論的主角Zen核心,這一代的處理器架構(gòu)設(shè)計(jì)可謂具有突破性的改進(jìn),也同時(shí)延續(xù)了AMD自己的特色。它的問世不但讓AMD實(shí)現(xiàn)了逆襲,也給AMD打下了未來十年的基礎(chǔ),目前發(fā)展到了Zen2,從路線圖上看,Zen4架構(gòu)已經(jīng)在研發(fā)了。
Zen架構(gòu)實(shí)現(xiàn)52% IPC性能提升 模塊化設(shè)計(jì)重出江湖
十年磨一劍,終成大器!2017年3月2日,AMD終于拿出了Zen核心的銳龍?zhí)幚砥鳎胤蹈咝阅芴幚砥魇袌?chǎng)。Zen架構(gòu)的到來,給了AMD扭轉(zhuǎn)局勢(shì)的機(jī)會(huì)。在K10、推土機(jī)兩代架構(gòu)之后,這是AMD再一次沖擊X86市場(chǎng),AMD也多次表態(tài)要再現(xiàn)輝煌,奪回失地。
關(guān)于第一代Zen架構(gòu)的改進(jìn)細(xì)節(jié),這里就不一一贅述了。兩年前發(fā)布的產(chǎn)品在網(wǎng)上已經(jīng)有大量評(píng)測(cè)和解析了,我們只提AMD在重新設(shè)計(jì)了內(nèi)核、SMT多線程、緩存、Infinity Fabric總線等單元之后,Zen架構(gòu)實(shí)現(xiàn)的目標(biāo)吧。
AMD之前宣稱Zen架構(gòu)實(shí)現(xiàn)了40%以上的IPC提升,不過最終發(fā)布時(shí),AMD表示其實(shí)際IPC性能提升了52%,遠(yuǎn)超預(yù)期。相比以往的K10、推土機(jī)架構(gòu)有了質(zhì)的改變,比對(duì)手?jǐn)D牙膏式的架構(gòu)升級(jí)也是天翻地覆的變化。
在上述架構(gòu)改變中,AMD重新設(shè)計(jì)的CCX(CPU Complex)架構(gòu)是最重要的。每個(gè)CCX單元有4個(gè)CPU核心,每個(gè)核心各自有64KB L1 I-Cache(指令緩存)、32KB L1 D-Cache(數(shù)據(jù)緩存)、512KB L2緩存,L3緩存高達(dá)8MB,但是4個(gè)核心共享的。
這樣4核CPU組合的CCX算是AMD Zen架構(gòu)的一個(gè)模塊,在第一代中桌面處理器最多8核16線程,里面是2個(gè)CCX單元,二者之間使用Infinity Fabric總線(簡(jiǎn)稱IF總線)連接,而IF總線又是Zen架構(gòu)的另一個(gè)僅次于CCX的創(chuàng)舉。
桌面處理器銳龍7 1800X的物理核心如下圖所示:
桌面版銳龍7 1800X處理器開蓋后的核心
用于服務(wù)器版的Naples處理器最多32核64線程,也就是8組CCX單元,分配在4組CCD(Core Chiplet Die)單元中。不過這時(shí)候AMD還沒有正式用CCD這個(gè)命名,直到現(xiàn)在的Zen2架構(gòu)中才出現(xiàn)這個(gè)命名。
服務(wù)器版EPYC 32核(Naples)處理器開蓋后的核心
桌面版因?yàn)樽疃?核,所以只有1個(gè)CCD單元,外面看起來跟原生8核沒什么區(qū)別,而服務(wù)器版是32核,有4組CCD單元,可以更清晰地顯示出AMD在Zen(改進(jìn)型Zen+是一樣的架構(gòu))的設(shè)計(jì)思路—;—;那就是模塊化。不過,這個(gè)模塊化跟推土機(jī)的模塊化不一樣,屬于創(chuàng)新模塊,不是將內(nèi)核模塊,而是將CCD模塊化,需要多少核心就配置相應(yīng)的CCX/CCD核心即可。
摩爾定律放緩 AMD另辟蹊徑:Zen2走向混合小芯片設(shè)計(jì)
在14nm Zen及改進(jìn)型的12nm Zen+這兩個(gè)系列的產(chǎn)品中,AMD解決了高性能處理器的有無問題,52%的IPC性能提升徹底改變了AMD處理器的處境,不過Zen第一代的產(chǎn)品依然談不上完美,AMD要在新一代的Zen2架構(gòu)上解決兩個(gè)問題。
一個(gè)問題是繼續(xù)提升Zen的IPC性能,另一方面則是要繼續(xù)擴(kuò)展Zen處理器的并行性,也就是更多的CPU核心。盡管AMD在Zen一代上已經(jīng)實(shí)現(xiàn)了桌面8核、服務(wù)器32核,核心數(shù)上繼續(xù)領(lǐng)先,但這還沒有達(dá)到AMD的目標(biāo),要大幅超出才行。
前一個(gè)問題要靠繼續(xù)挖掘Zen架構(gòu)的潛力,后一個(gè)問題就不只是架構(gòu)設(shè)計(jì)的問題了。工程實(shí)現(xiàn)上難度更大,因?yàn)锳MD在Zen2架構(gòu)上要做64核128線程,并首發(fā)7nm工藝,將打造迄今為止最強(qiáng)大的X86處理器。
在友商也只能做到28核的情況下,AMD做64核處理器最挑戰(zhàn)的地方是什么?答案很簡(jiǎn)單,那就是成本,因?yàn)槟柖稍谧罱鼛啄曛幸呀?jīng)放緩了,AMD如果繼續(xù)按照原有的思路做下去,那64核EPYC處理器的成本是難以想象的。
對(duì)于這一點(diǎn),AMD有著清醒的認(rèn)識(shí),此前AMD CEO蘇姿豐在2017年的一次會(huì)議中就對(duì)比過先進(jìn)工藝對(duì)成本的影響。統(tǒng)一以250mm2的核心來算,45nm節(jié)點(diǎn)的成本算作1,32、28nm節(jié)點(diǎn)開始提升,20nm節(jié)點(diǎn)就變成2倍成本了,到了7nm成本躍升為4倍,未來的5nm更夸張,成本將是之前的5倍。
很顯然,在Zen2架構(gòu)確定要上7nm的時(shí)候,如果按照之前的路線走,后果就只有兩種—;—;要么造不出來,要么造出來成本極高,因?yàn)榘凑誂MD之前估算的那樣,如果是原生64核,那么核心面積接近800mm2了, 這幾乎是現(xiàn)有193nm ArF光刻機(jī)的處理極限,制造難度太大了。
當(dāng)然,我們現(xiàn)在都知道了Zen2架構(gòu)不會(huì)采用這樣的原始方式,因?yàn)锳MD在這一代X86處理器上用了升級(jí)的Chiplets混合小芯片設(shè)計(jì),這也是未來處理器的發(fā)展方向。它比第一代Zen的小芯片更為高明,讓Zen2有了脫胎換骨的變化,以一種更巧妙的方式實(shí)現(xiàn)了首款64核128線程X86處理器。
Zen2小芯片架構(gòu)分析:CPU核心面積大降 IO搭配更靈活
什么是chiplets小芯片設(shè)計(jì)?業(yè)界并沒有統(tǒng)一的定義,簡(jiǎn)單來說這是一種新興的芯片設(shè)計(jì)思路,將大芯片化為多個(gè)小芯片,每個(gè)芯片的功能則比較單一,而且可以搭配不同的工藝,以實(shí)現(xiàn)提高性能、增加良率、降低成本的目的。
在7nm Zen2處理器上,AMD實(shí)現(xiàn)混合小芯片設(shè)計(jì)的方式就是將CPU與IO單元分離,分別稱為CCD(Core Chiplet Die)、IOD(IO Die),在一代Zen架構(gòu)中每個(gè)CCD單元都是一樣的,每顆CCD都包含IO部分,1-4組CCD單元實(shí)現(xiàn)了8-32核的并行;而在Zen 2架構(gòu)中,IO核心被分離了出來,1個(gè)IO核心連接所有CPU核心。
而且這個(gè)IO核心不需要使用7nm工藝,而是14nm(EPYC霄龍)或者12nm(Ryzen銳龍)工藝,核心面積分別是416mm2、125mm2,里面根據(jù)需要集成了不同數(shù)量的DDR主控、PCIe主控、IF總線等IO單元。
Zen2架構(gòu)的CPU剝離了IO單元,變成了純粹的CPU微內(nèi)核,再加上7nm工藝相比14nm工藝帶來了一倍左右的晶體管密度提升,所以在核心面積上7nm Zen2大幅縮小,單個(gè)小芯片面積只有74mm2,整合的L3緩存高達(dá)16MB,而Zen一代上一個(gè)芯片的面積是213mm2,其中核心部分只占120mm2,其余的都是IO單元的面積,由此可見Zen2架構(gòu)采用小芯片設(shè)計(jì)帶來的優(yōu)勢(shì)極其明顯。
那么AMD采用小芯片設(shè)計(jì)到底有多大的收益呢?我們可以確定的是這種設(shè)計(jì)的良率會(huì)很高。到底有多高?AMD官方?jīng)]有公布過具體數(shù)據(jù),不過第三方分析稱8核Zen2的良率達(dá)到了93.5%,在臺(tái)積電7nm 12英寸晶圓上可以生產(chǎn)出749個(gè)8核處理器,生產(chǎn)32核心也有187個(gè),成本優(yōu)勢(shì)明顯。
當(dāng)然,這樣的算法只是用于評(píng)估Zen2采用小芯片設(shè)計(jì)帶來的成本優(yōu)勢(shì),真實(shí)成本要比純代工成本高很多,還得算上研發(fā)、封裝測(cè)試成本。但怎么來算,這種設(shè)計(jì)都賦予AMD在成本控制上極高的靈活性,遠(yuǎn)非原生大核心可比的。
最后還有一個(gè)問題值得關(guān)注,那就是延遲,雖然CPU、IO核心分離解決了超多核心的并行問題,但是IO、CPU分離開來也會(huì)導(dǎo)致延遲增加,這跟原生多核相比是個(gè)劣勢(shì)。不過AMD在Zen2架構(gòu)也針對(duì)此做了改進(jìn),包括IF2總線及緩存上的改進(jìn)。
作為Zen2處理器CPU、IO及CPU核心之間的總線,IF2代采用了總線頻率、內(nèi)存頻率分離式設(shè)計(jì),保證可以達(dá)到更高頻率和盡可能低的延遲,總線速率從前代的10.7GT/s提升到了18GT/s,數(shù)據(jù)傳輸更快。
而且每個(gè)CCD單元有各自的Infinity Fabric PHY物理層,通過它和I/O Die芯片內(nèi)的數(shù)據(jù)總線(Data Fabric)進(jìn)行高速互連通信—;—;注意,兩顆CPU芯片之間沒有直接通信,都要經(jīng)過I/O Die,這樣可以保證不同核心、緩存之間的延遲是一致的。
此外,緩存方面也做了改進(jìn),一方面Zen2架構(gòu)的L3緩存翻倍,每個(gè)CCX單元配備的L3緩存從8MB翻倍到了16MB,8核處理器是32MB L3緩存,64核的EPYC處理器最多擁有256MB L3緩存,遠(yuǎn)高于前代及對(duì)手產(chǎn)品。
另一方面,Zen2的內(nèi)存頻率也大幅提升,前代EPYC支持的內(nèi)存頻率不過2666MHz(桌面Ryzen為2933MHz),這一代官方數(shù)據(jù)是服務(wù)器和桌面都可以支持3200MHz,但這個(gè)數(shù)據(jù)可能比較保守,據(jù)稱桌面端可以一鍵超頻到4200MHz,高者可達(dá)DDR4-5133Mhz。
還有一點(diǎn)需要強(qiáng)調(diào)的是,Zen2率先支持了PCIe 4.0標(biāo)準(zhǔn),在IO的帶寬上也有了長(zhǎng)足的提升和保障。
64核EPYC處理器性能碾壓式勝利 打破140多項(xiàng)世界紀(jì)錄
得益于Zen2架構(gòu)的性能改進(jìn)及64核128線程的超多核心,第二代霄龍EPYC 處理器一經(jīng)問世就打破了多項(xiàng)性能世界紀(jì)錄,官方最新統(tǒng)計(jì)顯示有140多項(xiàng)記錄被64核128線程的EPYC刷新。
AMD打破性能記錄的領(lǐng)域設(shè)計(jì)HPC、浮點(diǎn)運(yùn)算、整數(shù)運(yùn)算、Java、DB/ERP、能耗、大數(shù)據(jù)、云計(jì)算及渲染等,幾乎囊括了每一個(gè)需要高性能計(jì)算的市場(chǎng)。
64核EPYC處理器的性能不只是AMD官方自吹自擂,許多第三方評(píng)測(cè)網(wǎng)站也證明了AMD所言不虛—;—;InsideHPC、Serverthehome、TheNextPlatform等專業(yè)網(wǎng)站也做了大量EPYC處理器性能測(cè)試,結(jié)果也顯示64核128線程的EPYC處理器在性能上有非常明顯的優(yōu)勢(shì),大幅領(lǐng)先對(duì)手的28核56線程至強(qiáng)。
AMD不只是在性能上有優(yōu)勢(shì),同時(shí)價(jià)格上也要比對(duì)手便宜—;—;64核128線程的EPYC 7742處理器只要6950美元,而對(duì)手的28核至強(qiáng)8280處理器售價(jià)超過1萬美元,頂配版要1.3萬美元,是AMD 64核的2倍左右。
上面價(jià)格對(duì)比不僅顯示了AMD EPYC霄龍?zhí)幚砥鞯母咝詢r(jià)比,實(shí)際上也反映了與友商的成本差距—;—;AMD采用的小芯片設(shè)計(jì)大幅降低了成本,而友商原生28核的設(shè)計(jì)使得制造難度極高,成本很難降低。
AMD對(duì)核心永遠(yuǎn)不滿足 引爆X86核戰(zhàn)
2019年是AMD成立50周年,X86處理問世41年。在過去幾十年的歷史中,X86處理器的舞臺(tái)上主要留下了AMD及Intel兩家公司,期間雖然大部分時(shí)間都是Intel在主導(dǎo)X86發(fā)展,但AMD也屢次實(shí)現(xiàn)了技術(shù)創(chuàng)新上的反超,像64位,成就AMD曾經(jīng)輝煌的超傳輸總線技術(shù)等等,如今,在多核X86上,AMD再次占了上風(fēng)。
為了盡可能提升多核性能,AMD在第一代Zen處理器上首次使用了chiplets技術(shù)。而在最新的Zen2處理器上,AMD又首創(chuàng)了Hybrid Multi-die架構(gòu)的混合小芯片Chiplets設(shè)計(jì),計(jì)算die和IO die采用不同的制程,賦予X86多核處理器極高的靈活性,使得AMD解決了7nm等先進(jìn)工藝制造成本高、難度高、良率低的問題,可以更靈活地?cái)U(kuò)展CPU核心。這種堆積木的混合式組合使得桌面處理器達(dá)成達(dá)成了16核,服務(wù)器處理器輕松達(dá)到64核128線程。
最后的結(jié)果也證明,AMD這次賭對(duì)了。它不僅在桌面處理器上創(chuàng)造了世界首款12核、16核游戲處理器銳龍9系列,在服務(wù)器市場(chǎng)上更是憑借64核128線程大殺四方,性能及售價(jià)雙重優(yōu)勢(shì)明顯。
AMD引爆了X86處理器的“核戰(zhàn)”,而且是主動(dòng)出擊,這也給對(duì)手Intel出了一個(gè)難題。后者目前最強(qiáng)的至強(qiáng)處理器也只有28核56線程,核心數(shù)方面與EPYC二代差距甚大,在性能上已經(jīng)無法與之競(jìng)爭(zhēng),而且成本上更無還手之力—;—;AMD EPYC 64核在核心數(shù)翻倍的情況下售價(jià)只有一半左右,這樣的吸引力對(duì)云計(jì)算、數(shù)據(jù)中心等客戶是無法抵抗的。
更可怕的是,似乎AMD未來也不會(huì)停止這樣的核戰(zhàn)。AMD CTO Mark Papermaster在接受采訪時(shí)表示,市場(chǎng)對(duì)處理器核心數(shù)沒有天花板限制,軟件正在快速針對(duì)多核CPU進(jìn)行優(yōu)化,可以充分發(fā)揮多核多線程的優(yōu)勢(shì)。AMD在核心數(shù)方面不會(huì)停止進(jìn)步。
根據(jù)AMD官方發(fā)布的路線圖,現(xiàn)在7nm Zen2架構(gòu)之后的兩代處理器已經(jīng)確定,Zen3已經(jīng)完成研發(fā),Zen3之后,Zen4架構(gòu)也在按計(jì)劃研發(fā)設(shè)計(jì)中。雖然具體規(guī)格現(xiàn)在還沒有確切消息,不過可以確定的是—;—;AMD在X86處理器上已經(jīng)重回領(lǐng)導(dǎo)者地位了。