博客專欄

EEPW首頁 > 博客 > 一個號稱“萬能”的CPU架構(gòu)

一個號稱“萬能”的CPU架構(gòu)

發(fā)布人:旺材芯片 時間:2022-09-14 來源:工程師 發(fā)布文章

來源:半導(dǎo)體行業(yè)觀察


為數(shù)眾多的半導(dǎo)體初創(chuàng)公司希望打入市場,它們要么擁有一些大型 AI 訓(xùn)練芯片,要么擁有一些超快速的小型推理設(shè)備,或者可能是針對一個特定問題的 HPC 專注設(shè)計。一些公司資金充裕,其中不乏融資超過1億美元的公司,還有一些資金支持超過10億美元。在本文中,我們著眼于 Tachyum,這是一家美國/歐盟芯片初創(chuàng)公司,它于2018 年首次出現(xiàn)在我們的視野中,其高性能、高頻率的處理器設(shè)計令人驚嘆,涵蓋了諸多細分市場。在 2022 年的今天,他們已經(jīng)修改了早期的設(shè)計,總而言之,它看起來更像是一個可以真正打破常規(guī)的計算架構(gòu)。


我們所要討論的是擁有 128 核、每核 2×1024 位向量、5.7 GHz、1 TB/秒的 DRAM的龐然大物。有人說我們的數(shù)據(jù)中心的熱余量用完了,這顯然是錯誤的,Tachyum 證明了這一點。在本文中,我們將介紹新設(shè)計與舊設(shè)計的比較,以及我們可以從 Tachyum 的披露中收集到哪些信息。


Tachyum Prodigy 2022

今天,Tachyum 仍然稱他們的架構(gòu)為“Prodigy”。但他們已經(jīng)根據(jù)客戶的反饋對其進行了徹底改革。VLIW 捆綁包被更傳統(tǒng)的 ISA 取代, 硬件調(diào)度功能更強大,提高了每個時鐘的性能。緩存層次結(jié)構(gòu)也發(fā)生了重大變化。2022 Prodigy 的變化足夠廣泛,以至于對 2018 年 Prodigy 所做的大部分分析都不再適用。
在高層次上,2022 Prodigy 仍然是一個非常廣泛的架構(gòu),具有巨大的向量單元:圖片與 2018 Prodigy 一樣,2022 Prodigy 的目標(biāo)是極高的時鐘速度和高內(nèi)核數(shù)。事實上,這些目標(biāo)已經(jīng)被提高了,時鐘速度從 4 GHz 提高到 5.7 GHz,內(nèi)核數(shù)從 64 增加到 128。本文中我們將更深入地了解細節(jié)。再見捆綁包,你好 Sane ISATachyum 最初試圖通過將指令集與底層硬件實現(xiàn)緊密聯(lián)系來簡化 CPU 設(shè)計。VLIW 包允許非常簡單的解碼和映射邏輯。編譯器協(xié)助調(diào)度,它會設(shè)置“停止位”來標(biāo)記可以并行發(fā)布的指令組。這種方案表面上類似于 Nvidia 在 Kepler 和后來的 GPU 架構(gòu)中使用靜態(tài)調(diào)度,并讓內(nèi)核跳過硬件中的依賴檢查。
但是將 ISA 綁定到硬件會產(chǎn)生前向兼容性問題。例如,如果新架構(gòu)具有不同的指令延遲,則必須設(shè)置不同的停止位。Tachyum 的潛在客戶不會接受產(chǎn)品世代之間的 ISA 更改。在實踐中,像將 ARM 支持添加到復(fù)雜的軟件項目這樣“簡單”的事情可能需要 18 個月以上的時間。支持新的 ISA 必須是一次性投資,而不是每次 CPU 升級都會重復(fù)的投資。
最新的 Prodigy 架構(gòu)通過放棄原來的 VLIW 方案轉(zhuǎn)而采用更傳統(tǒng)的 ISA 來解決這個問題。指令有四個或八個字節(jié)長。編碼不再包含“停止位”,這意味著現(xiàn)在Prodigy 在硬件中進行依賴性檢查,而不是依賴硬件來標(biāo)記獨立指令組。前端和分支預(yù)測盡管放棄了 VLIW 設(shè)置,Prodigy 仍然可以維持每個周期 8 條指令——對于目標(biāo)為 5.7 GHz 的 CPU 來說,這是一項了不起的成就。根據(jù) Rado所說,這個內(nèi)核寬度對于在 AI 和 HPC 負載中實現(xiàn)最大性能是必要的。在整數(shù)工作負載中,4 寬的內(nèi)核就足夠了,而增加到 8 寬的內(nèi)核只會將性能提高 7-8%。但是,AI 或 HPC 程序中的一次循環(huán)迭代可能會執(zhí)行兩條向量指令、兩次加載、遞增循環(huán)計數(shù)器并有條件地分支。將內(nèi)核寬度提高到 8 寬將使 Prodigy 在每個周期完成一個循環(huán)迭代。圖片為了保持這種吞吐量,Prodigy 可以從 L1 指令高速緩存中提取每個周期128 字節(jié)??紤]到 64 個字節(jié)足以包含 8 條指令,這絕對是大材小用。Tachyum 可能選擇了更多的獲取帶寬,以在所占用的分支周圍保持高吞吐量。Prodigy 沒有大的 L0 BTB,因此與 Zen 3 和 Golden Cove 相比,它可能會在所采用的分支周圍遇到更多的指令獲取停頓問題。通過一次獲取 128B 字節(jié),前端可以在 BTB 延遲丟失一個周期后“趕上”。
Prodigy 的分支預(yù)測器也得到了改進。BTB容量翻倍至2048條,預(yù)測算法是2018 Prodigy中g(shù)share one的改進版。但總的來說,Prodigy 的預(yù)測器與最新的 AMD、ARM 和 Intel 高性能內(nèi)核中的預(yù)測器不同。AMD 的 Zen 3 有一個 6656 入口的主 BTB。ARM 的 Neoverse V1 擁有 8192 個 BTB 入口,而英特爾的 Golden Cove 擁有令人難以置信的 12K 入口 BTB。BTB 容量并不是唯一的缺點。Prodigy 繼續(xù)使用綁定到指令緩存的 BTB。這簡化了設(shè)計,因為無需進行單獨的 BTB 查找——L1i 查找為您提供指令字節(jié)和分支目標(biāo)。AMD 的 Athlon 也做了類似的事情,ARM 在 2010 年代中期使用了這個方案。但是來自 AMD、ARM 和 Intel 的現(xiàn)代內(nèi)核已經(jīng)轉(zhuǎn)移到解耦 BTB,允許它們在代碼占用量超過 L1i 容量時保持高指令帶寬。對于耦合的 BTB,L1i 未命中意味著 BTB 未命中。并且不知道下一個分支將去哪里,這大大降低了在指令緩存未命中后您可以有效預(yù)取的距離。但是 Tachyum 正在使用標(biāo)準單元庫,并以非常高的時鐘速度為目標(biāo),而使用這些標(biāo)準單元庫的解耦 BTB 被認為過于昂貴。
為了解決這個問題,Tachyum 將 L1i 容量增加到 64 KB,是 2018 年 Prodigy 的四倍,以確保 L1i 失誤減少。Rado 指出,specint2017 中的 64 KB L1i 未命中率低于 0.5%。我們對 Ampere Altra 的 64 KB L1i 的觀察大致一致。更大的 L1i 還有助于提高電源效率,并最大限度地減少與 L2 帶寬上的數(shù)據(jù)端的爭用。圖片ARM 采用了更大的 64 KB L1i 高速緩存,效果極佳,并且 L1i 未命中率低。
2022 Prodigy 還繼續(xù)依賴于相當(dāng)過時和基本的 gshare 預(yù)測算法,而現(xiàn)代 CPU則使用更復(fù)雜的技術(shù),可以在給定的存儲預(yù)算下實現(xiàn)更好的預(yù)測精度。Tachyum 考慮構(gòu)建更高級的分支預(yù)測器,但同樣,標(biāo)準單元庫意味著實現(xiàn) TAGE 預(yù)測器會過多地降低時鐘速度。由于高時鐘速度要求,除了感知器預(yù)測器 - 您可以想象在一個時鐘周期內(nèi)匯總一批權(quán)重需要做很多事情。包含本地歷史的方案也不可行,因為高獲取帶寬意味著每個周期必須執(zhí)行多個預(yù)測。具有本地歷史的多個預(yù)測將需要每個周期進行多次歷史表查找。因此,Tachyum 堅持使用基于全局歷史的預(yù)測器,并且每塊 8 條指令進行預(yù)測。這使分支預(yù)測器保持簡單,同時讓它跟上 Prodigy 內(nèi)核寬度所需的預(yù)測帶寬。圖片英特爾的 Rocket Lake 內(nèi)核,帶有分支預(yù)測器存儲和其他前端緩存標(biāo)記。圖片來自 Fritzchens Fritz,Clam 注釋
Rado 提到 Prodigy 的未來版本可以使用自定義單元,這將讓他們考慮更高級的分支預(yù)測器,同時仍然以非常高的時鐘速度為目標(biāo)。相比之下,英特爾似乎在分支預(yù)測器中使用了在內(nèi)核其他地方看不到的自定義 SRAM 單元。AMD 采用了不同的方法,將相同的 SRAM 單元用于分支預(yù)測器存儲、L1 指令緩存和微操作緩存。圖片AMD 的 Zen 3 內(nèi)核,帶有分支預(yù)測器存儲和其他標(biāo)記的前端緩存。圖片來自 Fritzchens Fritz,Clam 注釋
Zen 3 展示了可以使用標(biāo)準單元構(gòu)建最先進的分支預(yù)測器,盡管可能不是 Prodigy 的目標(biāo) 5.7 GHz 速度。后端:巨大的向量單元和完整的 OoO?如果你不能有效使用它,那么建立一個巨大的內(nèi)核并沒有多大意義。為此,Tachyum 放棄了他們 2018 年的設(shè)計,并在硬件中實現(xiàn)了深度重新排序功能。2022 Prodigy 可以跟蹤多達 256 條正在運行的指令,其中整數(shù)寄存器有 96 個重命名,向量寄存器也有同樣多的重命名。它可以重新排序過去的各種依賴項。根據(jù) Tachyum 的描述,Prodigy 可以像 AMD、ARM 和 Intel 的內(nèi)核一樣完全亂序執(zhí)行。但不是使用更傳統(tǒng)的無序引擎,而是使用檢查點方案。對于可能導(dǎo)致異常的指令,例如未命中緩存的加載,Prodigy 會保存帶有寄存器狀態(tài)的檢查點。如果該指令確實導(dǎo)致異常,則該檢查點用于提供精確的異常處理。2022 Prodigy 可以保存多個檢查點,而2018 Prodigy只能保存一個檢查點。這是一個重大改進,就執(zhí)行單元而言,Tachyum 為 2022 Prodigy 配備了兩個巨大的 1024 位向量單元,并增加了向量寄存器寬度以匹配。因此,2022 Prodigy 的矢量寬度是 2018 Prodigy 的兩倍,并且矢量吞吐量比當(dāng)今任何通用 CPU 都要高。甚至英特爾的 Golden Cove 也只有兩個 512 位向量單元。緩存子系統(tǒng)在重新設(shè)計 Prodigy 架構(gòu)以在硬件中進行更多重新排序,從而使其能夠為 AI/HPC 應(yīng)用程序保證更多帶寬后,Tachyum 面臨著保持這些內(nèi)核輸入的挑戰(zhàn),同時,提供以高速時鐘運行的 1024 位向量單元也是一項艱巨的挑戰(zhàn)。首先,L1D 數(shù)據(jù)路徑的寬度增加了一倍,以匹配向量長度的增加。在 5.7 GHz 時,Tachyum 內(nèi)核可以從其 L1D 以接近 1.5 TB/s 的速度加載數(shù)據(jù)。L2 可以在每個周期向 L1D 提供完整的 128B 高速緩存行,帶寬約為 730 GB/s。相比之下,英特爾的 L1D 和 L2 緩存的每周期負載帶寬是 Prodigy 的一半,AMD 則更落后。Zen 2 和 Zen 3 在 L1 和 L2 的每周期帶寬是英特爾的一半。當(dāng)然,Prodigy 的時鐘頻率高于 Intel 或 AMD 當(dāng)前的 CPU,因此具有巨大的緩存帶寬優(yōu)勢。
圖片Zen 2 似乎能夠通過在未記錄的性能計數(shù)器上使用計數(shù)屏蔽來跟蹤至少 32 個未決的 L2 未命中。
為了維持高帶寬和隱藏延遲,2022 Prodigy 改進了內(nèi)存級并行性 (MLP)。具體來說:圖片這是對 2018 版本的重大改進,在 2018 版本中,可實現(xiàn)的 L3 帶寬和內(nèi)存將受到其低 MLP 的限制。它與 Zen 3 和 Golden Cove 位于同一個塊,但從絕對意義上來說可能會稍遜一籌。
2022 Prodigy 還增加了緩存容量,以更好地處理具有大內(nèi)存占用的負載。L1 數(shù)據(jù)緩存的容量翻了兩番,從 16 KB 增加到 64 KB。與 2018 Prodigy 相比,每核 L2 和 L3 緩存容量沒有增加,但 2022 Prodigy 放棄了單獨的 L2 和 L3 布局,轉(zhuǎn)而采用虛擬 L3 設(shè)置??臻e內(nèi)核將允許活動內(nèi)核將其 L2 用作虛擬 L3,從而提高低線程負載的緩存命中率。當(dāng)一個內(nèi)核從它的 L2 驅(qū)逐一條線時,它會檢查周圍的內(nèi)核,看看它們的 L2 是否可以接受被驅(qū)逐的線,只有屬于非活動內(nèi)核的 L2 緩存才會接受這些請求。
對我們來說,這個設(shè)置一點也不簡單,并且圍繞這個虛擬 L3 的實現(xiàn)方式會有很多調(diào)整。聽起來一個物理內(nèi)存地址可以緩存在多個虛擬 L3 切片中,具體取決于哪些對應(yīng)的內(nèi)核處于空閑狀態(tài),更多的切片檢查意味著更多的互連流量。Tachyum 還希望將數(shù)據(jù)盡可能靠近所占用的內(nèi)核,而可能的位置越少意味著這方面的靈活性越低。與 Intel、AMD 和 ARM 使用的更簡單的方案相比,正確設(shè)置這個虛擬 L3 聽起來像是多維優(yōu)化問題。
地址轉(zhuǎn)換性能也很重要,因此 Tachyum 將最后一級 TLB 大小從 256 增加到 2048 個條目。在條目數(shù)方面,它與 Zen 2、Zen 3 和 Golden Cove 相匹配。為了進一步提高 TLB 覆蓋率,Prodigy 確實以 64 KB 的頁面大小和 32 MB 的大頁面來處理更大粒度的任務(wù)。2048 個條目的 L2 TLB 將覆蓋 128 MB 和 64 KB 頁面。ARM 和 x86 主要使用 4 KB 頁面以及 2 MB 大頁面用于客戶端應(yīng)用程序。較大的頁面大小往往會浪費更多的內(nèi)存,但這對于通常具有數(shù)百 GB DRAM 的服務(wù)器來說并不是什么大問題。
內(nèi)存帶寬
對于不適合緩存的工作負載,DRAM 帶寬可能是個問題。正如我們之前提到的,Prodigy 的計算與內(nèi)存帶寬比高于當(dāng)前的 CPU 和 GPU。起初,Tachyum 試圖通過實現(xiàn)封裝 HBM 來解決這個問題。但 HBM 的容量非常低,這意味著如果 Tachyum 想要占領(lǐng)服務(wù)器市場,它并不是一個可行的選擇。HBM 解決方案對于 HPC 和 AI 應(yīng)用程序來說是可以接受的,但 Rado 指出,Nvidia 已經(jīng)擁有該市場的大部分份額,而與服務(wù)器市場相比,剩下的市場很小。保留兩種內(nèi)存選項是不可行的,因為芯片上沒有足夠的邊緣空間來容納 DDR 和 HBM 控制器。圖片因此,Tachyum 選擇了一個非常強大的 DDR5-7200 設(shè)置,帶有 16 個控制器,總內(nèi)存總線寬度為 1024 位。這使它的帶寬與 Nvidia 的 RTX 3090 GPU 差不多。DDR5-7200 今天還不存在,但 Tachyum 預(yù)計只有 AI 和 HPC 客戶才需要性能最高的內(nèi)存設(shè)置。這些客戶通常會購買整個系統(tǒng)而不是組件,從而允許集成商對可達到 7200 MT/s 的內(nèi)存模塊進行封裝。服務(wù)器應(yīng)用程序通常不受帶寬限制,并且可以使用速度較慢的 DDR5。
但即使使用 DDR5-7200,Prodigy 的海量矢量單元和高時鐘意味著它比其他 CPU 和 GPU 具有更低的帶寬與計算比。Tachyum 希望通過使用內(nèi)存壓縮來縮小這一差距,這有點像 GPU 如何進行增量顏色壓縮以降低帶寬需求。但與 GPU 不同的是,Tachyum 正在為 AI 和 HPC 應(yīng)用程序調(diào)整內(nèi)存壓縮算法。最后,Tachyum 以更大的粒度進行 ECC,允許內(nèi)存控制器使用一些 ECC 線路來代替?zhèn)鬏敂?shù)據(jù)。圖片提高仿真性能Tachyum 的 Prodigy 引入了新的 ISA,因此不會像 x86 和 ARM 那樣享有強大的軟件生態(tài)系統(tǒng)。這是一個嚴重的問題,因為如果世界上最好的芯片不能運行用戶需要的軟件,它就完全一文不值。為了解決這個問題,Tachyum 正在尋找 QEMU,它可以模擬另一種架構(gòu)并允許 x86 和 ARM 二進制文件在 Prodigy 上執(zhí)行。但僅 QEMU 是不夠的,因為仿真性能通常很差。例如,我們在 Ampere Altra 上運行 QEMU 下為 x86-64 編譯的 CoreMark。
為了提高 x86 二進制文件的仿真性能,Prodigy 可以切換到“嚴格”內(nèi)存排序模式。Tachyum 也在 QEMU 中完成了軟件工作以提高性能。就絕對值而言,30-40% 的性能損失仍然很嚴重。但是運行所需的軟件比絕對性能更重要,如果芯片不能運行所需的軟件,那么世界上所有的性能都是無關(guān)緊要的,因此 Tachyum 已經(jīng)在 QEMU 中投入了大量精力,以確保硬件至少在發(fā)布時可用。
評估架構(gòu)
Tachyum 對 Prodigy 進行了大量修改,因此2018 和 2022 版本基本上是不同的架構(gòu)??偨Y(jié)主要的管道變化如下:圖片2022 Prodigy 的變化使其成為比 2018 Hot Chips 上展示的版本更具競爭力的架構(gòu)。Prodigy 不再嚴重依賴編譯器,采用傳統(tǒng)的 ISA,并具有不錯的硬件重新排序功能,這些是我們對 2018 版本最大的擔(dān)憂,我們很高興看到它們得到解決。2018 版本中的其他弱點,如微小的 L1 緩存,也得到了糾正。這給我們留下了一個帶有巨大矢量單元的寬內(nèi)核,以針對高內(nèi)核數(shù)芯片的前所未聞的時鐘。

對于 HPC 和 AI,我預(yù)計 Prodigy 將極具競爭力。它具有足夠的重新排序深度和內(nèi)存級別的并行能力,可以充分利用內(nèi)存帶寬。雖然它的內(nèi)存帶寬與計算比率低于競爭解決方案,但 Prodigy 確實有很多技巧可以緩解這種情況。即使沒有這些技巧,Prodigy 仍然擁有比 AMD 的Milan 或者 Genoa更強大的 DRAM 子系統(tǒng)。富士通的 A64FX 確實具有相當(dāng)?shù)?DRAM 帶寬,但它使用 HBM,這極大地限制了它的內(nèi)存容量。
服務(wù)器市場是一個更難的問題。Prodigy 擁有不錯的大型 L1 緩存、不錯的重新排序能力、非常高的時鐘速度和高核心數(shù)。但是它的分支預(yù)測器遠遠不是最先進的,每個核心的最后一級緩存容量很低(尤其是與 AMD 相比)。更糟糕的是,過渡到新的 ISA 對任何大公司來說都是一件頭疼的事情。不過,我認為 Prodigy 有一個不錯的機會,因為它的時鐘速度優(yōu)勢是如此之大,不僅可以掩蓋它的缺點,更可以讓它在核心數(shù)量和單核性能方面都比其他所有人的服務(wù)器產(chǎn)品都具有優(yōu)勢。Tachyum 可以說服人們使用他們的新 ISA 和羽翼未豐的軟件生態(tài)系統(tǒng),以便利用 Prodigy 的高性能。
如果 Prodigy 快要實現(xiàn)其雄心勃勃的(高速)時鐘目標(biāo),它確實很有可能成為“通用處理器”,至少在紙面上是這樣。它將類似于 GPU 的矢量吞吐量與 CPU 的單線程性能相結(jié)合。代價是極高的功耗。128 核 Prodigy 在加載矢量單元的情況下可以達到近 950W 的功率。即使是 32 核、3.2 GHz 低功耗 SKU 也被指定為 180W——并不比基于 Zen 2 的 Epyc 7502P 好,后者盡管使用了小芯片設(shè)置和較差的工藝節(jié)點,但它以類似的 180W TDP 提升到 3.35 GHz。在服務(wù)器中,整型計算不太可能使 Prodigy 消耗 TDP 數(shù)據(jù)所顯示的那么多功率。但是高 TDP 等級仍然是一個問題,因為冷卻系統(tǒng)必須針對最壞的情況進行設(shè)計。圖片關(guān)于 5.7 GHz就個人而言,我懷疑 Prodigy 能否實現(xiàn)其 5.7 GHz 時鐘目標(biāo)。Tachyum 正在采用一些策略來幫助在高時鐘下控制功率和面積。我們目前無法確切透露那是什么,但我認為這還不夠。將兩個 1024 位向量單元推送到這些時鐘將是一項令人難以置信的壯舉。流水線長度看起來太短了。在2018年, Prodigy 有一個從取指令到執(zhí)行指令的 9 階段整型流水線。在2022年 Prodigy 增加了一個用于硬件依賴檢查的階段,使整型流水線達到 10 個階段。對于以 5.7 GHz 為目標(biāo)的設(shè)計來說,這非常短。作為比較,Agner Fog 指出,在英特爾的 Golden Cove 上,錯誤預(yù)測懲罰(對應(yīng)于流水線長度)超過 20 個周期。AMD 的優(yōu)化手冊稱 Zen 3 的誤判懲罰范圍為 11-18 個周期,常見情況為 13 個周期。流水線長度與 Prodigy 相似的 CPU 無法達到 5 GHz。Neoverse N1 有 11 級流水線,運行頻率不高于 3.3 GHz。AMD 的 Phenom 有 12 個周期的錯誤預(yù)測懲罰,運行頻率為 3.7 GHz。圖片
如果我們就 Tachyum 的芯片圖而言,假設(shè)它占據(jù) 500 mm2,單個 Prodigy 內(nèi)核的空間遠低于 3 mm2,從而引發(fā)熱點問題。
發(fā)熱問題也須考慮。AMD 的 Zen 3 的時鐘頻率可以超過 5 GHz,但在低線程負載下面臨冷卻挑戰(zhàn),因為它們的低核心面積意味著非常高的熱密度。Tachyum 預(yù)計 Prodigy 將占據(jù)不到 500 平方毫米的空間。Tachyum 發(fā)布的模具平面圖效果圖表明,每個核心的尺寸小于 3 mm2。Zen 3 核心的面積約為 3.78 平方毫米,包括 L2。Prodigy 核心在某些領(lǐng)域可能不那么復(fù)雜,例如分支預(yù)測器,但在其他領(lǐng)域(例如向量單元)也更復(fù)雜。我認為當(dāng)核心被推到 5.7 GHz 時很可能會出現(xiàn)熱點問題。
最后一點,考慮策略實用性的一種方法是查看其他公司采用相同策略的頻率。如果對于一家小型初創(chuàng)公司來說,采用 5 GHz 以上的 1024 位矢量單元的 8 位寬內(nèi)核是可以實現(xiàn)的,那么 AMD、ARM 和英特爾在過去十年中肯定一直在偷懶。哦,把 Nvidia 也算上——他們的 Kepler、Maxwell 和 Pascal 架構(gòu)有 32 位寬的 FP32 ALU,基本上是 1024 位。或者,要讓一個廣泛的架構(gòu)達到如此高的時鐘頻率真的很難,而且小型初創(chuàng)公司不太可能做到這一點。我并不是說 Prodigy 不可能達到 5.7 GHz,因為 AMD 的 Zen 4 顯然達到了 5.85 GHz。也許臺積電的 5nm 工藝就是這么神奇。但是通過巨大的矢量單元、高核心數(shù)和相對較短的流水線來實現(xiàn)這種時鐘速度看起來像是一座太遠的橋梁。因此,讓我們看看如果 Prodigy 未能達到其時鐘目標(biāo),它的競爭力將如何。
HPC and AI
即使沒有高時鐘,Prodigy 也有大量的吞吐量,這要歸功于巨大的矢量單元。即使在 3 GHz 下,它的浮點數(shù)處理能力也穩(wěn)居 GPU 領(lǐng)域。與之競爭的 CPU 甚至不在同一個層次。
圖片*假設(shè) Golden Cove 在 Sapphire Rapids 中有 2×512 位向量單元
有趣的是,以較低的時鐘運行還為 Prodigy 提供了更平衡的計算吞吐量與內(nèi)存帶寬的比率。在 5.7 GHz 時,Prodigy 需要一些技巧來減少內(nèi)存帶寬瓶頸。在 3 GHz 時,相對于其內(nèi)存帶寬,它的計算量仍然很大。但比例不那么不平衡。
圖片*假設(shè) SPR 使用 DDR5-5200
其他 CPU 每個 FLOP 的帶寬更高,但這主要是因為它們的吞吐量要低得多。GPU(和 A64FX)將其有利的帶寬與計算比率歸功于容量有限的緊密集成的內(nèi)存子系統(tǒng)。與其他服務(wù)器芯片一樣,Prodigy 可以配備數(shù)百 GB 的 DRAM。GPU 通常不能。
因此,Prodigy 很有可能成為具有競爭力的 HPC 或 AI 芯片,即使它實現(xiàn)不了它的時鐘目標(biāo)。除非出現(xiàn)重大缺陷,否則受吞吐量限制的 HPC 和 AI 應(yīng)用程序可以從 Prodigy 的矢量單元中受益。Prodigy 最大的弱點,比如軟件生態(tài)系統(tǒng)就顯得不那么重要,因為研究人員和 AI 人員通常開發(fā)專門的系統(tǒng)。HPC 和 AI 代碼也應(yīng)該足夠規(guī)則,以至于 Prodigy 較弱的分支預(yù)測器不會阻止它。圖片Server服務(wù)器工作負載更復(fù)雜。與競爭服務(wù)器芯片相比,Prodigy 具有較弱的分支預(yù)測器和較低的緩存緩存容量。如果沒有高時鐘,Prodigy 的單核性能可能難以與之競爭。這不一定是一個大問題——ARM 進入服務(wù)器領(lǐng)域表明,即使每核性能沒有競爭力,高核數(shù)芯片仍有空間(當(dāng)然它必須足夠好用才行)。
但ARM在服務(wù)器市場立足的背后還有其他因素。ARM 的內(nèi)核以低功耗和高密度為目標(biāo)。與英特爾和 AMD 不同,它們不會嘗試涵蓋廣泛的功率和性能目標(biāo)。這種專業(yè)化讓 ARM 創(chuàng)建了適合云應(yīng)用程序的更高核心數(shù)的芯片,同時保持在可接受的功率和成本目標(biāo)范圍內(nèi)。該專業(yè)化通過犧牲矢量吞吐量和峰值性能,從而使用較小的矢量單元和密集設(shè)計那些沒有那么高時鐘速度的單元。Prodigy 具有比任何 x86 芯片更大的矢量單元和更高的時鐘,因此它很有可能不會像 ARM 內(nèi)核那樣縮減到低功耗。
如果 Prodigy 沒有達到如此高的時鐘,我認為他們沒有明確的方法來搶占服務(wù)器市場的一部分。他們不太可能在高密度市場上超越 ARM。如果沒有巨大的時鐘速度優(yōu)勢,它們不太可能在低線程工作負載中擊敗 x86 內(nèi)核。并且當(dāng) Tachyum 致力于讓 Prodigy 被流片出來時,沒有人會坐以待斃。AMD 正在準備發(fā)布基于 Zen 4 的 Genoa 和 Bergamo。后者將擁有 128 個 Zen 4 核心,并減少緩存設(shè)置,與 Prodigy 的核心數(shù)量相匹配。Ampere Computing 正在開發(fā) Altra 的繼任者,它可能具有超過 128 個內(nèi)核。Prodigy 當(dāng)然會保留矢量吞吐量優(yōu)勢,但矢量吞吐量并不是服務(wù)器市場的決定性因素,就像 HPC 和 AI 一樣。
結(jié)論技術(shù)趨勢通常是循環(huán)的。幾十年前,服務(wù)器、客戶端系統(tǒng)和超級計算機慢慢融合以使用類似的硬件。例如,在 2000 年代后期,AMD 的六核 K10 芯片在客戶端系統(tǒng)中作為 Phenom X6 提供服務(wù),在服務(wù)器和超級計算機中作為 Opteron 2435 提供服務(wù)。但在過去十年中,這種趨勢一直在緩慢逆轉(zhuǎn)。超級計算機通常使用 GPU 加速來提高吞吐量,而針對 HPC 的 GPU 架構(gòu)和針對客戶端平臺的架構(gòu)之間的差異越來越大。Ampere 和亞馬遜已經(jīng)為云計算優(yōu)化了專門的服務(wù)器芯片。英特爾和 AMD 在所有三個類別中仍然使用相同的架構(gòu),但即使這樣,它們也在定制芯片以適應(yīng)不同的市場。例如,服務(wù)器形式的 Skylake 將額外的 L2 和矢量單元附加到核心上,并使用網(wǎng)狀互連。AMD 計劃以第二種形式發(fā)布 Zen 4,名為 Zen 4c,它以緩存容量換取核心數(shù)量,應(yīng)該更適合云計算。
Tachyum 的 Prodigy 代表了逆勢而上的勇敢嘗試。它將 GPU 的矢量吞吐量與 CPU 的單線程性能相結(jié)合,但代價是高功耗。然而,我們?nèi)匀粦岩?Tachyum 如何在面臨所有障礙的情況下實現(xiàn)這一切。我們確實向 Tachyum 詢問了他們是如何實現(xiàn) 500mm2 的 CPU 的,雖然我們無法透露他們告訴我們的內(nèi)容,但我們?nèi)匀粚λ麄冊?N5 上實現(xiàn)這一點持懷疑態(tài)度,因為他們不僅擁有大量矢量單元,還由于芯片上有大量的 DDR5 和 PCIe 5的 PHY,導(dǎo)致的大規(guī)模模擬電路的數(shù)量。
即使 Prodigy 按計劃進入市場,它也將面臨激烈的競爭老牌玩家及其專業(yè)產(chǎn)品。使用單一架構(gòu)服務(wù)于不同的細分市場將使 Tachyum 能夠利用其有限的工程資源擴大其業(yè)務(wù)范圍。但是,除了專注于工程工作之外,該策略并沒有太多優(yōu)勢。你不能僅僅因為兩者都使用相同的芯片,就讓服務(wù)器充當(dāng) HPC 節(jié)點的雙重職責(zé)。超級計算集群具有極高速的網(wǎng)絡(luò)和分布式存儲,因此節(jié)點可以一起解決同一個問題。數(shù)據(jù)中心不會有同樣的高速網(wǎng)絡(luò),因為響應(yīng)互聯(lián)網(wǎng)請求不需要幾乎一樣多的帶寬。最后,Tachyum將面臨一場艱苦的戰(zhàn)斗,以建立圍繞其ISA的軟件生態(tài)系統(tǒng),同時在途中遭受二進制翻譯處罰。對于一家小型初創(chuàng)公司來說,要處理很多事情,我們祝他們好運。



*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。



關(guān)鍵詞: CPU架構(gòu)

技術(shù)專區(qū)

關(guān)閉