5G時代到來,Arm又有什么大招?
在過去的十年中,我們記錄了ARM處理器在數據中心(特別是通用服務器)的崛起。這是充滿希望和失望的十年。但是數據中心正在發生變化,計算、存儲和網絡必然被推到網絡的邊緣,更接近終端用戶,因為許多現代應用的延遲要求較低,而且集中移動和存儲數據的巨大成本可能只是臨時使用。因此,ARM今天的機會或許比10年前開始這一征程時要好。
本文引用地址:http://www.j9360.com/article/201903/398482.htmARM Holdings是軟銀集團的一個部門,擁有ARM架構并將其授權給無數芯片開發商用于各種設備,ARM Holdings已經在智能手機領域占據主導地位,在平板電腦領域占有相當大的份額。在數據中心和邊緣的各種輔助計算設備(如4G蜂窩網絡)領域,ARM Holdings在所有芯片制造商中(包括英特爾的X86)占據最大份額。
隨著5G網絡的出現,數據中心將變得更加前沿,因為5G最終將提供只有光纖有線網絡才能提供的帶寬和延遲。但在短期內,5G帶寬的增長仍將相當可觀,峰值下載速度可能達到20 GB/秒,而4G的峰值速度為1 GB/秒;理論上,上載速度通常是下載速度的一半。5G網絡的實際性能將取決于蜂窩無線網絡中使用頻譜的哪一部分,以及蜂窩設備所在的地形(包括建筑物)。重點是,網絡性能提高20倍,延遲降低60到120倍,這將極大地改變世界使用蜂窩網絡的方式。
毫無疑問,蜂窩運營商和為這些設備創建應用的用戶將使用這些帶寬,他們將需要在5G基站和各種邊緣位置進行足夠的網絡化、存儲和計算,從而實現傳統有線電信接入點的前端(最終網絡必須在某個地方通過線路進行通信)或提供緩存服務來加速應用程序。如果網絡本身是快速的,那么緩存就變得不那么必要了,網絡不僅僅是傳遞數據,而是能夠進行計算和操作。
ARM知道這波浪潮即將到來,于是在去年年底發布了它的Neoverse架構,以更好地滿足數據中心的需求和計算方面的優勢。ARM的授權商一直難以在數據中心處理器領域取得不錯的銷售業績。Marvell的ThunderX2絕對是可以基于概念證明的,Ampere(它從AppliedMicro購買了X-Gene芯片)有希望,亞馬遜似乎對它自己開發的“Graviton”ARM服務器芯片非常認真,即使AMD、高通和Broadcom退出了,Calxeda還沒有真正開始,三星也停止了。然而,在邊緣,ARM集體面臨來自英特爾和AMD的激烈競爭,它們都擁有各自的Xeon和Epyc平臺,但ARM是老牌廠商,它們是后起新貴。
通過這種方式,“Helios”Neoverse E1處理器瞄準了邊緣,這是本周在巴塞羅那舉行的世界移動大會(現在被稱為MWC,這很愚蠢)的一個熱門話題,對于ARM在服務器計算方面的愿景而言,這可能比一周前公布的“Ares”Neoverse N1處理器更重要。非常清楚的是,N1處理器將會有邊緣變體,如果客戶想要它們,可能會有E1處理器的數據中心版本,這實際上取決于ARM的合作伙伴。Helios E1芯片非常有趣,我們認為它將會出現在內核數據中心和邊緣設備中。重要的是,ARM已經推出了一款低功耗設備,其目標是更全面的計算——也就是E1——以及一個更強大、更傳統的CPU,可以在其家庭數據中心領域與Xeon競爭,ARM的芯片合作伙伴可以向上或向下擴展每個設計,以填補細分市場的空白。他們并不需要做很多工作,而過去并非如此,希望這將幫助ARM的合作伙伴更及時地將產品推向市場。英特爾10納米的制造停滯不會永遠持續下去。
增強競爭優勢
從概念上講,Neoverse E1芯片與N1芯片的關系就像英特爾的Atom芯片與Xeon芯片的關系一樣。當然,這個類比并不完美。Atom芯片具有超線程,也就是英特爾的同步多線程實現,即SMT,它虛擬化了芯片指令流水線,使其在操作系統中看起來像兩個線程,而不是一個物理線程。(其他供應商可以做四路甚至八路SMT,但英特爾一直選擇雙向SMT。)Atom芯片有順序執行,這犧牲了20年前在RISC/Unix平臺上首次出現的無序執行所能獲得的一些性能,這是Xeon系列的一部分,也是數據中心中幾乎所有其他處理器的一部分。
Neoverse N1和E1處理器都支持其流水線上的無序執行,但ARM首次在其ARMv8架構上用Helios E1芯片實現了SMT。直到最近,ARMv8體系結構的被授權方才將無序執行和SMT添加到他們創建的內核中,但是現在ARM正在做這項繁重的工作。Cortex-A57芯片針對的是平板電腦和具有適度計算需求的設備,具有亂序執行,后續的Cortex-A73和Cortex-A75處理器也是如此。但是這些都不像Helios E1那樣有SMT。
這種SMT以及ARM在單個芯片上創建的將內核結合在一起的網狀互連,將是提高邊緣設備性能的重要因素,例如5G基站中的25瓦至35瓦處理器,位于數據中心的其他類型的協處理器和加速器,如SmartNIC,以及數據傳輸設備,如內核路由器,它們的計算中有多個100 Gb/秒的端口。
ARM基礎設施業務營銷副總裁Mohamed Awad表示,這些都是Helios E1處理器目標市場的一部分。他最近在奧斯汀舉行的ARM技術日(ARM Tech Day)上談到了潛在的使用案例?!?/p>

“E1將支持bot舊式軟件和開源軟件,因此它可以快速插入并執行OPNFV和ONAP,并支持DPDK。”Awad解釋說。他使用開放式網絡功能虛擬化平臺(電信公司和服務提供商創建并使用的參考平臺)和開放式網絡自動化平臺的字母組合,顧名思義,它是一個用于運行的編排和自動化框架,在其中運行網絡功能,這些功能過去被硬化到無數供應商的非常昂貴的設備中。DPDK是Data Plane Development Kit的縮寫,Data Plane Development Kit是英特爾創建的數據包處理引擎,已開源并交給Linux Foundation管理,現在支持X86、Power和ARM架構?!叭绻憧紤]一下從邊緣到內核的基礎設施,就會看到有很多設備和軟件都與之相關,我們推出的Neoverse E1平臺可以支持該舊式軟件,但可以過渡到此開源軟件?!?/p>
Helios芯片的可擴展性將取決于有多少E1內核被網格化,以及Helios內核相對于“Cosmos”系列的前身Cortex-A53的固有性能,后者廣泛用于各種網絡、安全、存儲適配器,以及家電。如果你把邊緣和數據中心使用的所有處理器(包括4G基站)加上數據中心的服務器、存儲和網絡,再加上分布在數據中心和邊緣的所有安全和網絡設備,那么在2011年,ARM占有大約5%的份額。而2018年,當3億個芯片出貨到IT的這個領域時,ARM占有27%的份額,而且這一份額仍在增長。(因此,我們假設這些是收入份額,但考慮到有許多不同類別的機器,看看收入份額會很有趣??傊X才是最重要的。)這些芯片不包括WiFi路由器或任何距離家庭或辦公室最后一英里的設備——這是計算和存儲的優勢。并且,也許最重要的是,這使得ARM架構在所有芯片制造商中處于領先地位,比英特爾還大,但我們不知道有多少,因為ARM沒有共享這些數據。

你可能想知道為什么ARM不能只用一個降速的N1芯片來完成所有這些邊緣工作。從某種意義上說,確實如此,但它需要更多的架構調整,而不僅僅是減少內核和緩存,從而減少插槽和功率。ARM架構和技術團隊的系統架構師和杰出工程師Rob Dimond表示,用于處理數據傳輸工作負載的計算需要能夠在未來十年內處理10倍的增長系數。如果你計算一下,這意味著吞吐量類型的處理器每年大約增長60%,這意味著那些面向線程密集的軟件和相對低功耗的處理器,而不是面向具有更快時鐘和大量緩存的大型內核,這兩種處理器都會產生大量熱量。
正如我們去年秋天解釋的那樣,Neoverse N1系列的承諾是每年在套接字級別上提高30%的性能。沒錯,ARM正在證明,與早期的Cosmos Cortex-A73處理器相比,在64核Ares芯片上運行的各種工作負載可以在1.7X和2.5X之間進行,因此它的增長率遠遠超過了60%。與此類似,Helios芯片的內核運行速度比Cortex-A53參考架構快2.1倍,整個速度比后者高出2.7倍,但這一最初的提升可能并非每一代都能持續下去。尤其是如果ARM試圖堅持為E1設計提供年度升級節奏,正如它對N1設計所承諾的那樣。
深入研究HELIOS E1
雖然Ares N1處理器將支持32位ARMv7和64位ARMv8指令,但為了節省Helios E1處理器的功耗和芯片面積并為SMT騰出空間,32位處理和內存尋址能力被放棄。以下是ARM為E1開發的SMT模型的細節:

隨著時間的推移,ARM將SMT增加一倍到4個線程,然后再增加到8個線程,以達到每個套接字60%的性能提升目標,這并不是沒有道理的。SMT8在銷售Sun Microsystems的T系列芯片時確實發揮了作用,對于IBM的Power8、Power9和Power10處理器來說,SMT8仍然非常有用,可以提高線程之類工作負載的吞吐量。同樣,在以后的幾年里,最終看到SMT出現在Neoverse N2或N3或N4處理器中也就不足為奇了。

順便說一句,E1芯片上的SMT可以通過軟件切換來打開和關閉,因此對于那些在每個內核單個線程以更高的時鐘速度運行時可以做得更好的工作負載而言,可以切換模式。
整個E1設計側重于平衡套接字中的吞吐量和內核中的原始計算,并最大限度地提高邊緣工作負載、數據中心數據平面和控制平面,以及具有網絡、存儲和安全功能的服務器加速器的每瓦吞吐量。
E1內核有32 KB或64 KB的L1緩存(帶奇偶校驗)和32 KB到64 KB的L1數據緩存(其中有ECC擦除)。每個內核還可以擁有64 KB到256 KB的L2緩存,前端是L1緩存,也有ECC擦除。內核還可以包含加密引擎和NEON AdvSIMD浮點單元,如下所示:

Helios的E1集群上最多可以有八個內核,繞內核的電路具有異步橋接,可連接高達4 MB的L3高速緩存,以及用于外圍設備的各種總線接口,包括上述用于固定功能加速器的接口。你可以在E1芯片上有多個集群,cookie將它們切割到網格互連上。據推測,客戶可以抓取內核并在E1內核之間進行網狀互連,就像N1設計中所做的那樣,而不是對它們進行集群,或者將集群拆分成chiplet,并使用CCIX端口將chiplet連接在一起,N1芯片也會是這樣。(我們必須要看看ARM的合作伙伴如何利用所有這些好處。)
如果您想研究內核流水線,并將其與Neoverse中的Ares N1芯片進行比較和對比,請參見下面的框圖:

N1和E1有很多不同之處,最大的區別在于N1有一個固定的10級整數流水線,而不是可以從11級擴展到9級的可變的“手風琴”流水線。你可以看到三個寬流水線和兩個SMT流,它們使用一對匹配的64位浮點單元實現兩個64位整數單元。
這對浮點數單位在E1上的數量是在N1上的一半??紤]到每個人都期望在邊緣進行大量推理,因此,對于與機器學習推理相關的混合精度數學,更精簡的E1數學單元可能仍然有用。浮點數單元可以在每個周期中一起執行8個FP16操作,或者4個FP32操作,或者16個INT8格式的“點積”指令。(最后一點就是推理最有可能發揮作用的地方。)如果你看看Helios E1芯片的原始整數性能,它是關閉線程時Cortex-A53的1.4倍,打開SMT2時的1.8倍。使用浮點時,在激活SMT2的情況下,Cortex-A53和2.4X之間的性能提升為2倍。
總而言之,臺積電在7nm制程中采用的裸片尺寸為0.46 mm2,2.5 GHz的頻率,功率為183毫瓦。ARM為被授權方提供的參考設計芯片上有一對八核集群,由CMN-600網格互連和掛在網格上的兩個DDR4內存控制器連接。這些內核的功耗預算低于4瓦,整個片上系統的功耗低于15瓦,SPECint_rate2006為153,可以25 Gb/秒的速度發送數據,這就是目前超大規模數據中心服務器端口所做的工作。在一個小型5G基站部署中,一個E1集群用于控制平面,另一個用于數據平面,無線電和安全電路將被添加到其中。在該小型5G蜂窩基站上運行OpenSSL和DPDK的E1參考平臺,其性能將是基于Cortex-A53芯片的同類平臺的2.7倍,每瓦功率性能提高2.4倍。
這些都是相當不錯的比較,但真正的考驗是它們如何堆疊到真正的芯片,特別是嵌入式芯片,英特爾和AMD正在向市場推出嵌入式芯片,以處理相同的邊緣工作負載。到目前為止,我們還沒有看到這樣的比較基準。
以下是另一個示例,說明如何在軟件定義的網絡設備上使用在3×5網格上實施的E1和N1處理器組合,來創建在E1上運行的高吞吐量數據平面,以及在N1上運行的強大控制平面,從而能夠以100 Gb/秒的線速執行數據包處理:

我們可以想象E1和N1芯片的各種用途和各種配置。和ARM團隊一樣,現在的問題是:ARM的哪些合作伙伴要做什么才能將基于這一創新技術的芯片推向市場?此外,他們會有多大的沖動去小題大做呢?希望能有更多的合作伙伴,并少些麻煩。時間是很寶貴的。
評論