在這個(gè)移動(dòng)設(shè)備成為主要計(jì)算平臺(tái)的大時(shí)代,稍微關(guān)注行業(yè)的人都聽(tīng)說(shuō)過(guò)ARM,該公司作為技術(shù)推動(dòng)者,提供各種處理器架構(gòu)以及核心參考設(shè)計(jì),基本上已成為當(dāng)今所有移動(dòng)設(shè)備的動(dòng)力之源,并在過(guò)去的5~7年里,引領(lǐng)著智能手機(jī)和平板電腦SoC性能的飛速發(fā)展。
ARM的雄心遠(yuǎn)遠(yuǎn)超出了移動(dòng)和嵌入式設(shè)備領(lǐng)域。從商業(yè)意義上來(lái)看,服務(wù)器和相關(guān)基礎(chǔ)設(shè)施等高端領(lǐng)域有著更大的利潤(rùn)空間,對(duì)于像ARM這樣的公司來(lái)說(shuō),這是一個(gè)非常有利可圖的市場(chǎng)。
不過(guò),盡管ARM在移動(dòng)和嵌入式設(shè)備領(lǐng)域取得了巨大的成功,但迄今為止始終未能觸及更高性能產(chǎn)品的領(lǐng)域。
雖然在過(guò)去的十年中,許多關(guān)于“ARM將掀起服務(wù)器和基礎(chǔ)架構(gòu)市場(chǎng)革命”的預(yù)言層出不窮,也有不同的供應(yīng)商試圖實(shí)現(xiàn)這一目標(biāo),然而前幾代產(chǎn)品并沒(méi)有獲得成功,ARM的服務(wù)器生態(tài)系統(tǒng)也遇到了相當(dāng)大的困難。
服務(wù)器領(lǐng)域,多事之秋
去年年中,全新的Cortex A76架構(gòu)橫空出世,ARM對(duì)其寄予厚望,以至于隨后公開(kāi)分享了未來(lái)三年的CPU路線(xiàn)圖,并宣布將在PC筆記本電腦領(lǐng)域與Intel展開(kāi)正面競(jìng)爭(zhēng)。盡管驍龍8CX等產(chǎn)品的上市還需要等待很久,但外媒Anandtech已經(jīng)拿到了首批搭載Cortex A76的移動(dòng)設(shè)備,并驗(yàn)證了ARM的所有性能和效率聲明。
最近,ARM又發(fā)布了新星架構(gòu)Neoverse,并希望通過(guò)新一代處理器設(shè)計(jì)大幅提升其性能,并提高在服務(wù)器和基礎(chǔ)設(shè)施領(lǐng)域的競(jìng)爭(zhēng)力。
這些新架構(gòu)對(duì)ARM來(lái)說(shuō)都很重要,它們代表了市場(chǎng)的一個(gè)轉(zhuǎn)折點(diǎn):ARM處理器的性能表現(xiàn)已經(jīng)接近了Intel和AMD處理器,且ARM有信心保持每年25~30%的性能提升,大幅超越Intel和AMD的迭代幅度。
過(guò)去幾個(gè)月對(duì)于ARM服務(wù)器生態(tài)系統(tǒng)來(lái)說(shuō)是非常值得欣喜的。在去年的Hotchips大會(huì)上,富士通展示了全新的A64FX高性能計(jì)算處理器,不僅代表了公司從SPARC架構(gòu)體系轉(zhuǎn)向ARMv8架構(gòu)體系,還提供了第一款在ARM架構(gòu)中實(shí)現(xiàn)新SVE(可擴(kuò)展矢量擴(kuò)展)的芯片。
Cavium的ThunderX2也取得了令人印象深刻的性能飛躍,使其新處理器成為首批能夠與Intel和AMD競(jìng)爭(zhēng)的處理器。
前陣子,我們又看到了華為推出的全新鯤鵬920服務(wù)器芯片,該芯片有望成為業(yè)界性能最高的ARM服務(wù)器CPU。
上述三種產(chǎn)品之間最大的共性是,每種產(chǎn)品都代表了各供應(yīng)商在實(shí)施基于ARMv8架構(gòu)許可的定制微體系結(jié)構(gòu)方面所做的努力。這實(shí)際上引出了一個(gè)問(wèn)題:ARM自己的服務(wù)器和基礎(chǔ)設(shè)施市場(chǎng)計(jì)劃是什么?
此次,我們將詳細(xì)介紹Neoverse N1這個(gè)新平臺(tái),它們將成為未來(lái)幾年ARM的基礎(chǔ)設(shè)施戰(zhàn)略的核心,并初步實(shí)現(xiàn)服務(wù)器生態(tài)系統(tǒng)。
Neoverse N1 CPU:無(wú)妥協(xié)性能
Neoverse N1平臺(tái)的核心是Neoverse N1 CPU,即CPU品牌與平臺(tái)品牌有相同的命名。ARM所描述的平臺(tái)不僅是CPU核心,還包括周?chē)幕ミBIP,使整個(gè)系統(tǒng)可以擴(kuò)展到多核系統(tǒng)。
Neoverse N1平臺(tái)和CPU代表了ARM首款專(zhuān)為服務(wù)器和基礎(chǔ)設(shè)施市場(chǎng)設(shè)計(jì)的專(zhuān)用計(jì)算IP。這是對(duì)過(guò)去IP產(chǎn)品的重大改變,其中將為消費(fèi)產(chǎn)品和行業(yè)解決方案提供相同的CPU IP。這些IP家族之間的新技術(shù)區(qū)別促使ARM為新的基礎(chǔ)架構(gòu)目標(biāo)產(chǎn)品采用新的營(yíng)銷(xiāo)名稱(chēng),因此Neoverse品牌誕生,與面向消費(fèi)者的Cortex CPU品牌區(qū)別開(kāi)來(lái)。
Neoverse N1平臺(tái)代表了ARM奧斯汀設(shè)計(jì)中心“第二代奧斯汀家族”的第一次迭代。Neoverse N1原名為“戰(zhàn)神”,代表了與Cortex A76相對(duì)應(yīng)的服務(wù)器處理器核心。同時(shí),奧斯汀團(tuán)隊(duì)可能已經(jīng)完成了第二次迭代所需的Zeus架構(gòu)的設(shè)計(jì)工作;隨后Poseidon架構(gòu)將成為這一家族的最后一次迭代,然后將接力棒傳遞給由法國(guó)的索菲亞團(tuán)隊(duì)設(shè)計(jì)的下一個(gè)架構(gòu)家族。
由于Neoverse N1是Cortex A76架構(gòu)的兄弟,兩款核心之間自然有很多相似之處。我們?nèi)ツ暝敿?xì)介紹了Cortex A76架構(gòu),這些設(shè)計(jì)細(xì)節(jié)也同樣適用于Neoverse N1,二者僅在適應(yīng)基礎(chǔ)設(shè)施用例方面有些差異。
就高層設(shè)計(jì)目標(biāo)而言,ARM的目標(biāo)似乎相當(dāng)直接:創(chuàng)建一個(gè)毫不妥協(xié)的架構(gòu),并成為未來(lái)幾年內(nèi)可重復(fù)使用的基礎(chǔ)。
特別值得一提的是,我們從Cortex A76上可以看出,ARM正在調(diào)整架構(gòu)設(shè)計(jì),使其能夠在基礎(chǔ)設(shè)施部署中以最高頻率運(yùn)行。這與Intel和AMD在服務(wù)器CPU上采用的策略形成了鮮明的對(duì)比。
ARM在服務(wù)器CPU上的優(yōu)勢(shì)在于可以同時(shí)優(yōu)化性能、功耗和面積,而Intel和AMD不得不在這些指標(biāo)中做出妥協(xié),使其產(chǎn)品雖然與對(duì)應(yīng)的消費(fèi)級(jí)產(chǎn)品有著類(lèi)似的架構(gòu),但頻率往往非常有限,這取決于給定的SKU針對(duì)的是哪個(gè)細(xì)分市場(chǎng)。
Neoverse N1的流水線(xiàn)結(jié)構(gòu)與Cortex A76相同,均為11級(jí)短流水線(xiàn)設(shè)計(jì),前端都是4寬的讀取/解碼器。ARM將其稱(chēng)為“手風(fēng)琴”管道,因?yàn)楦鶕?jù)指令長(zhǎng)度不同,它可以在延遲敏感的情況下將第二預(yù)測(cè)階段與第一獲取階段重疊,將調(diào)度階段與第一發(fā)布階段重疊,將流水線(xiàn)長(zhǎng)度減少到9級(jí)。
執(zhí)行后端也看起來(lái)與Cortex A76完全相同,擁有2個(gè)處理加減運(yùn)算的簡(jiǎn)單ALU、1個(gè)處理乘除運(yùn)算的復(fù)雜ALU,以及2個(gè)處理向量和浮點(diǎn)運(yùn)算的全寬128位SIMD流水線(xiàn)。
數(shù)據(jù)吞吐量是處理器架構(gòu)的一項(xiàng)重要指標(biāo),ARM為Neoverse N1設(shè)計(jì)了兩個(gè)128位加載/存儲(chǔ)單元,能夠維持足夠的帶寬來(lái)提供和服務(wù)執(zhí)行流水線(xiàn)。
架構(gòu)前端與Cortex A76同樣非常相似,大容量的L1和L2具有低延遲訪(fǎng)問(wèn)性能。這里的ARM還采用了業(yè)界公知的一些最大的分支目標(biāo)和方向預(yù)測(cè)緩沖器,嘗試保持?jǐn)?shù)據(jù)流經(jīng)核心,并最小化分支預(yù)測(cè)和緩存命中失敗的概率來(lái)提高性能。
在緩存層次結(jié)構(gòu)方面,Neoverse N1與Cortex A76相差很大。二者的L1緩存容量均為64KB,讀取延遲為4個(gè)周期,但是Neoverse N1上最大的不同在于緩存是完全一致的。
需要注意的是,硬件I-cache的一致性并不是ISA所要求的,到目前為止,通常都是通過(guò)軟件維護(hù)操作來(lái)完成的。
為N1實(shí)現(xiàn)硬件一致性對(duì)ARM來(lái)說(shuō)非常重要,因?yàn)樗鼧O大地提高了性能并簡(jiǎn)化了虛擬環(huán)境的實(shí)現(xiàn),如果ARM想要在超大規(guī)模客戶(hù)中具有競(jìng)爭(zhēng)力,就必須具備這些特性。擁有I-Cache的一致性被認(rèn)為是一個(gè)關(guān)鍵的支持因素,可以使系統(tǒng)具有非常大的內(nèi)核計(jì)數(shù),ARM表示16核以上的系統(tǒng)都必須具備這一特性。
L2緩存可選擇512KB或1MB的配置,使用512KB配置時(shí)與Cortex A76基本相同,而1MB緩存則可以應(yīng)對(duì)內(nèi)存占用更大的應(yīng)用程序。不過(guò),將L2緩存加倍到1MB并不是沒(méi)有代價(jià)的,這會(huì)讓緩存的延遲增加2個(gè)周期,達(dá)到11個(gè)周期的負(fù)載使用延遲。
Neoverse N1與Cortex A76的一個(gè)很大的區(qū)別在于,在進(jìn)行大尺度緩存操作時(shí),Neoverse N1不會(huì)去尋找集群,而是會(huì)使用mash互聯(lián)的方式。
如圖所示,該連接首先通過(guò)一個(gè)CAL或組件聚合層。每個(gè)CAL最多支持兩個(gè)接口,這就是為什么我們?cè)诿總€(gè)“集群”中只能看到兩個(gè)CPU(它本身并不是真正的集群)。然后CAL連接到網(wǎng)格的XP(交叉點(diǎn)),它本質(zhì)上是網(wǎng)絡(luò)的交換機(jī)/路由器組件。每個(gè)XP都有兩個(gè)可用端口;在ARM參考設(shè)計(jì)示例中,第二個(gè)端口連接一個(gè)系統(tǒng)級(jí)緩存。
在64核系統(tǒng)搭配2MB系統(tǒng)級(jí)緩存的示例系統(tǒng)中,整個(gè)64MB緩存的平均負(fù)載使用延遲為22ns。ARM給出的延遲數(shù)據(jù)是納秒數(shù)而不是周期數(shù)的原因是系統(tǒng)級(jí)緩存和mesh運(yùn)行在與CPU異步的頻率上,通常是內(nèi)核頻率的2/3左右。
直接連接是Neoverse N1和CMN-600的一個(gè)整體特征。這個(gè)特性只存在于這個(gè)平臺(tái)上,而在Cortex架構(gòu)上是不可能實(shí)現(xiàn)的。本質(zhì)上,它刪除了DSU的所有L3和探聽(tīng)過(guò)濾器邏輯,而是直接將CPU內(nèi)核連接到CMN的CHI接口。因此,內(nèi)存控制器和CPU核心之間的通信本質(zhì)上只需要通過(guò)一個(gè)中間層,即mash網(wǎng)絡(luò)本身。
直接從內(nèi)存控制器向CPU數(shù)據(jù)傳輸可能有點(diǎn)難以解釋?zhuān)?dāng)CPU向內(nèi)存控制器發(fā)出數(shù)據(jù)請(qǐng)求時(shí),它能夠立即同時(shí)首先向其發(fā)送“預(yù)取”類(lèi)型請(qǐng)求,同時(shí)通過(guò)mesh網(wǎng)絡(luò)中XP主節(jié)點(diǎn)的探聽(tīng)過(guò)濾器正常傳輸命令,然后將請(qǐng)求路由到內(nèi)存控制器。因此,內(nèi)存控制器將提前知道請(qǐng)求的到來(lái),并且已經(jīng)開(kāi)始獲取數(shù)據(jù),從而隱藏部分有效的內(nèi)存延遲,而不是整個(gè)傳輸按串行順序進(jìn)行。
預(yù)取對(duì)整個(gè)系統(tǒng)的性能非常重要,智能管理數(shù)據(jù)預(yù)取可以有效優(yōu)化系統(tǒng)級(jí)帶寬。據(jù)說(shuō)在具有64核心和8個(gè)DDR4 3200內(nèi)存通道的Neoverse N1參考系統(tǒng)中,可以實(shí)現(xiàn)高達(dá)175GB/s的內(nèi)存帶寬。ARM還公布了延遲數(shù)據(jù),但ARM的數(shù)據(jù)表示LMBench數(shù)據(jù),同時(shí)配置了256MB測(cè)試深度的2MB大頁(yè)面。選擇大頁(yè)面可以減少TLB的遺漏,并更接近實(shí)際的內(nèi)存延遲,這就是ARM在這種情況下發(fā)布度量的基本原理。
我們還沒(méi)有機(jī)會(huì)測(cè)試啟用了大頁(yè)面的競(jìng)品系統(tǒng),但是AMD的EPYC 7601(LRDIMM DDR4 2666 19-19-19)可在芯片的高速緩存層次結(jié)構(gòu)的末端通過(guò)類(lèi)似于LMBench的測(cè)試來(lái)實(shí)現(xiàn)約73ns的延遲,而定制開(kāi)發(fā)的延遲測(cè)試將TLB失敗最小化后延遲約為57ns。Intel W-3175X(RDIMM DDR 2666 24-19-19)在相同測(cè)試下延遲分別為94ns和64ns。
使用臺(tái)積電7nm工藝制造的Neoverse N1芯片面積非常小,在使用512KB二級(jí)緩存時(shí)核心面積約為1.2平方毫米,與麒麟980所用Cortex A76的1.26平方毫米幾乎相同,將L2緩存加倍到1MB后,核心面積也只有1.4平方毫米。
在頻率范圍方面,ARM的設(shè)想是在0.75V電壓下達(dá)到2.6GHz,在1V電壓下可實(shí)現(xiàn)3.1GHz。在這條頻率曲線(xiàn)末端,提升44%的功耗只能得到19%頻率和性能提高,因此大多數(shù)供應(yīng)商都希望更接近功率曲線(xiàn)中更有效的部分。
不過(guò)從絕對(duì)數(shù)字來(lái)看,Neoverse N1的功耗只有1~1.8W,這為64核SoC提供了充足的空間,ARM對(duì)于64核Neoverse N1參考設(shè)計(jì)的總功率預(yù)算約為105W。
Neoverse N1超大規(guī)模參考設(shè)計(jì)
ARM提供Neoverse N1的完整參考設(shè)計(jì),其中包含一組完全由ARM自己驗(yàn)證的IP。這套參考設(shè)計(jì)的目標(biāo)是為供應(yīng)商提供“甜點(diǎn)”配置選項(xiàng),這樣他們就可以用相對(duì)最少的努力來(lái)實(shí)現(xiàn)最優(yōu)的性能。
Neoverse N1的參考設(shè)計(jì)中可采用64或128核心配置,集成在具有64 MB或128MB 系統(tǒng)級(jí)緩存的CMN-600 mash網(wǎng)絡(luò)中。I/O接口方面,128條PCI-E 4.0通道分別用于I/O和CCIX接口,可提供足夠的I/O帶寬。
在內(nèi)存方面,ARM為其配置了8通道DDR4控制器,最高支持3200MHz。不過(guò)實(shí)際上,ARM已經(jīng)放棄了自行研發(fā)內(nèi)存控制器,因?yàn)榇蠖鄶?shù)情況下客戶(hù)會(huì)使用各自的內(nèi)部設(shè)計(jì),或者選擇從其他第三方供應(yīng)商(如Cadence或Synopsys)處選擇方案。
對(duì)于目前的參考設(shè)計(jì)來(lái)說(shuō),ARM自己的DMC-520內(nèi)存控制器仍然是最新的,且對(duì)于公司來(lái)說(shuō)是一個(gè)很好理解的模塊。不過(guò)在未來(lái),像DDR5這樣的較新的內(nèi)存控制器也將不得不依賴(lài)于第三方IP。
SoC的物理實(shí)現(xiàn)將使用便于設(shè)計(jì)的可復(fù)用分層構(gòu)建塊。每個(gè)CPU模塊由兩個(gè)Neoverse N1內(nèi)核、一組系統(tǒng)級(jí)緩存,以及CMN的交叉點(diǎn)和本地節(jié)點(diǎn)的一部分組成。通過(guò)翻轉(zhuǎn)和鏡像來(lái)復(fù)制CPU模塊,即可生成最終的SoC頂層網(wǎng)格。
在7nm工藝節(jié)點(diǎn)上,ARM的64核Neoverse N1參考設(shè)計(jì)搭配64MB高速緩存,芯片尺寸接近400平方毫米,可能略高于供應(yīng)商想要的可制造性目標(biāo)。為了緩解這種擔(dān)憂(yōu),ARM同時(shí)提出了小芯片設(shè)計(jì)的想法,讓多個(gè)小芯片通過(guò)CCIX鏈路進(jìn)行通信,保證了必要的靈活性,供應(yīng)商可自行決定如何設(shè)計(jì)解決方案。
智能網(wǎng)卡的集成能力也是其設(shè)計(jì)和靈活性的一個(gè)重要方面,為了在大型系統(tǒng)中最大限度地提高計(jì)算能力,加速網(wǎng)絡(luò)連接實(shí)際上是在盡可能密集且有效的形式因素下實(shí)現(xiàn)高吞吐量的關(guān)鍵。
CMN-600允許在其交叉點(diǎn)上設(shè)置從端口,通過(guò)高達(dá)128GB/s的高帶寬總線(xiàn)與內(nèi)存管理單元連接,可輕松外掛其他固定功能的硬件模塊。
CCIX對(duì)ARM非常重要,因?yàn)樗蛊洚a(chǎn)品組合能夠與第三方IP產(chǎn)品集成。 為外部IP模塊啟用高速緩存一致性是一個(gè)非常有吸引力的功能,因?yàn)樗蟠蠛?jiǎn)化了供應(yīng)商的軟件設(shè)計(jì)。 基本上這意味著軟件只是看到一個(gè)巨大的內(nèi)存塊,而非相干系統(tǒng)需要驅(qū)動(dòng)程序和軟件知道并跟蹤內(nèi)存的哪個(gè)部分是有效的,哪些不是。 在IP集成方面,ARM提供與CMN-600集成的CCIX一致網(wǎng)關(guān),而另一方面,它是第三方IP提供商提供CCIX轉(zhuǎn)換層的責(zé)任。
對(duì)ARM來(lái)說(shuō),CCIX非常重要,它可讓其產(chǎn)品組合能夠與第三方IP產(chǎn)品集成。為外部IP塊啟用緩存一致性是一個(gè)非常有吸引力的特性,可大大簡(jiǎn)化供應(yīng)商的軟件設(shè)計(jì),不再需要系統(tǒng)、驅(qū)動(dòng)和軟件跟蹤哪些是有效內(nèi)存。在IP集成方面,ARM提供了與CMN-600集成的CCIX相干網(wǎng)關(guān),而第三方IP提供商則提供CCIX翻譯層。
在芯片的邏輯設(shè)計(jì)中,供應(yīng)商還必須設(shè)計(jì)一套健壯的配電網(wǎng)絡(luò),以支撐實(shí)際使用情況中各種突發(fā)且嚴(yán)苛的電能需求。這對(duì)許多供應(yīng)商而言都是一個(gè)非常頭疼的問(wèn)題,因?yàn)樵O(shè)計(jì)需要復(fù)雜的模型,且在大多數(shù)情況下,配電網(wǎng)絡(luò)需要過(guò)度設(shè)計(jì)以提供穩(wěn)定性保證,這反過(guò)來(lái)又增加了實(shí)施的復(fù)雜性和成本。
ARM旨在通過(guò)以專(zhuān)用微控制器的形式提供極細(xì)粒度的DVFS(動(dòng)態(tài)電壓頻率調(diào)整)機(jī)制來(lái)緩解這些問(wèn)題。控制器訪(fǎng)問(wèn)CPU核心內(nèi)部的詳細(xì)活動(dòng)監(jiān)視單元,查看實(shí)際有多少晶體管正在積極工作,并將此信息反饋給系統(tǒng)控制器以更改DVFS狀態(tài)。這使供應(yīng)商能夠?qū)⑵渑潆娋W(wǎng)絡(luò)設(shè)計(jì)為更保守的容差,從而節(jié)省實(shí)施成本。
性能預(yù)測(cè)
關(guān)于性能和效率的討論,必然需要用具體的數(shù)字來(lái)衡量。在ARM公布Neoverse N1時(shí),大多數(shù)性能數(shù)據(jù)都是相對(duì)于Cortex A72的改進(jìn),這并沒(méi)有將Neoverse N1真正置于競(jìng)爭(zhēng)格局中最相關(guān)的數(shù)據(jù)點(diǎn)。Cortex A72是一款2015年推出的架構(gòu),兩款產(chǎn)品之間有著3~4年的時(shí)間跨度。
與相同頻率且同樣配有系統(tǒng)級(jí)緩存的Cortex A72平臺(tái)相比,全新的Neoverse N1平臺(tái)直接以碾壓的姿態(tài)獲得完勝。在SPEC的單線(xiàn)程測(cè)試中,Neoverse N1的整數(shù)運(yùn)算PPC(每時(shí)鐘性能)和絕對(duì)性能相比Cortex A72增長(zhǎng)了60%~70%,浮點(diǎn)運(yùn)算性能則更令人印象深刻,增幅高達(dá)100%~120%。且鑒于Neoverse N1還有許多其他SoC級(jí)別的改進(jìn)及軟件優(yōu)化,實(shí)際的性能表現(xiàn)將會(huì)更高。
與現(xiàn)有解決方案相比,ARM再次迭代了非常大幅的性能演進(jìn),在向量工作負(fù)載中實(shí)現(xiàn)了超過(guò)2倍的性能提升。自然,Neoverse N1支持ARMv8.2指令集也意味著它支持8位點(diǎn)積和FP16半精度指令,這些指令特別適合機(jī)器學(xué)習(xí)工作負(fù)載,實(shí)現(xiàn)了比前一個(gè)平臺(tái)近5倍的性能提升。
對(duì)于運(yùn)行速度約為2.6GHz的64核Neoverse N1超大規(guī)模參考設(shè)計(jì),在105瓦TDP下,其SPECint2006單線(xiàn)程得分約為37,而多線(xiàn)程得分預(yù)計(jì)約為1310。
不過(guò)這一性能不是在實(shí)際運(yùn)行的產(chǎn)品上測(cè)出的,而是在ARM的服務(wù)器群上使用RTL模擬環(huán)境中估算出來(lái)的。
Neoverse N1的單線(xiàn)程得分,明顯高于在同源的Cortex A76上測(cè)量的26分,撇開(kāi)軟件和編譯器的考慮不提,造成42%性能差異的原因之一可能是Neoverse N1擁有更好的內(nèi)存和緩存系統(tǒng),整個(gè)系統(tǒng)帶寬比Cortex A76這種移動(dòng)SoC高6倍,在單線(xiàn)程工作負(fù)載中,線(xiàn)程可以完全訪(fǎng)問(wèn)64MB系統(tǒng)級(jí)緩存,這比Cortex A76設(shè)計(jì)的L3緩存大16倍。
ARM強(qiáng)調(diào),在改善生態(tài)系統(tǒng)性能的眾多努力中,除了提供更好的硬件之外,還需要提供更好的軟件。在過(guò)去的幾年里,ARM投入了大量精力來(lái)改進(jìn)開(kāi)源工具和編譯器,比如將最新版GCC9與舊版的GCC5進(jìn)行比較,其整數(shù)和浮點(diǎn)工作負(fù)載的性能提高了13~15%,且這些優(yōu)化是面向?qū)嶋H用例的改進(jìn),而不是旨在提升SPEC跑分的針對(duì)性的改變。
就單線(xiàn)程性能而言,Neoverse N1看起來(lái)非常出色,它以很大的優(yōu)勢(shì)擊敗了目前性能最佳的ARM服務(wù)器CPU,即Cavium的ThunderX2。
既然是面向服務(wù)器領(lǐng)域的產(chǎn)品,免不了要與老牌供應(yīng)商Intel和AMD進(jìn)行對(duì)比,在Intel和AMD最新的、也是最好的Xeon W-3172X以及EPYC 7601上,同樣使用GCC8編譯一組二進(jìn)制文件進(jìn)行。
Intel的Xeon W-3172X很難說(shuō)是最具代表性的超大規(guī)模CPU,但它4.5GHz的單核睿頻頻率可提供多核CPU中最強(qiáng)的單線(xiàn)程性能。 AMD的EPYC 7601則是一個(gè)更有代表性的數(shù)據(jù)點(diǎn),其3.2GHz的頻率和Neoverse N1很有的比,實(shí)際成績(jī)來(lái)看也確實(shí)如此。
再來(lái)看SPECrate2006的多線(xiàn)程測(cè)試,這是所有平臺(tái)的最佳擴(kuò)展場(chǎng)景,沒(méi)有序列化或線(xiàn)程間通信,測(cè)試套件只是并行運(yùn)行多個(gè)進(jìn)程。
從ARM給出的模擬測(cè)試結(jié)果來(lái)看,64核的Neoverse N1以105瓦的TPD實(shí)現(xiàn)了極高的性能和效率,x86解決方案甚至很難能夠競(jìng)爭(zhēng)。
雖然測(cè)試比較的是64核ARM平臺(tái)與32/28核x86平臺(tái),貌似使用AMD即將推出的64核Rome處理器才更公平,但從數(shù)據(jù)來(lái)看,即使AMD的64核處理器能實(shí)現(xiàn)目前雙倍的性能,其TDP也不太可能降低到Neoverse N1這樣105 瓦的水平(EPYC 7601的TDP 是180瓦)。
總結(jié)
Neoverse N1看起來(lái)是一款優(yōu)秀的架構(gòu),它保持了ARM一貫領(lǐng)先的電源效率,實(shí)現(xiàn)了峰值計(jì)算性能和總體吞吐量之間的最佳平衡。
ARM對(duì)Neoverse N1及其最終的繼任者抱有很高的期望,希望從Intel等供應(yīng)商中搶走x86處理器根深蒂固的市場(chǎng)份額。ARM正在盡最大努力,雖然Neoverse N1不會(huì)成為旗艦x86的核心競(jìng)爭(zhēng)對(duì)手,但在可以輕松擴(kuò)展到更多核心的工作負(fù)載中,它會(huì)構(gòu)成重大威脅。
當(dāng)然,在實(shí)際硬件產(chǎn)品出現(xiàn)之前,我們還不能下任何定論,但ARM此前對(duì)Cortex A76的性能預(yù)測(cè)非常符合實(shí)際設(shè)備上的測(cè)量結(jié)果,因此我們有理由給予Neoverse N1的性能預(yù)測(cè)以信任,實(shí)現(xiàn)預(yù)測(cè)中的性能肯定是有希望的。
盡管新的硬件IP令人印象深刻,但同樣重要的是ARM在加強(qiáng)ARM軟件生態(tài)系統(tǒng)方面的努力。與不同行業(yè)的硬件和軟件合作伙伴合作,試圖促進(jìn)軟件堆棧和與ARM的互操作性,這不僅有利于使用ARM自己的硬件IP的供應(yīng)商,而且有利于選擇使用自己的定制CPU和SoC設(shè)計(jì)的供應(yīng)商。同樣,那些試圖改進(jìn)和加強(qiáng)自己產(chǎn)品的供應(yīng)商,也將反過(guò)來(lái)加強(qiáng)ARM的生態(tài)系統(tǒng)。本質(zhì)上,這是許多公司之間的集體努力,未來(lái)將繼續(xù)獲得動(dòng)力。
可以看出,ARM正非常認(rèn)真地對(duì)待基礎(chǔ)設(shè)施建設(shè),過(guò)去的一年對(duì)于ARM生態(tài)系統(tǒng)來(lái)說(shuō)是革命性的,我們第一次看到了ARM廠(chǎng)商平臺(tái)與Intel和AMD等主流廠(chǎng)商競(jìng)爭(zhēng)。雖然ARM沒(méi)有透露誰(shuí)將首先使用Neoverse N1平臺(tái)的信息,但ARM正無(wú)可辯駁地成為行業(yè)主流。
據(jù)傳Neoverse N1將在未來(lái)12~18個(gè)月內(nèi)進(jìn)行商業(yè)部署,這將是ARM的關(guān)鍵時(shí)刻。如果一切進(jìn)展順利,ARM和合作伙伴實(shí)現(xiàn)了承諾的改進(jìn),未來(lái)1~2年里,服務(wù)器行業(yè)必將迎來(lái)一次重大轉(zhuǎn)變。