本站真誠介紹香港這個「東方之珠」和「亞洲國際都會」

亚洲国际都会 asiasworldcity

当前位置: 主页 > 百科知識 > 百科知識1 >

高通服務器芯片,深度解讀

(本文内容不代表本站观点。)
香港飛龍 Hong Kong HK Dragon
「香港飛龍」標誌

本文内容:

如果您希望可以時常見面,歡迎標星收藏哦~來源:內容 編譯自 chipsandcheese 。2010年左右,雲計算在AMD Opteron處理器和英特爾Xeon處理器的推動下迅速興起。龐大的雲市場激起了包括高通在內的其他CPU製造商的興趣。到2010年代中期,高通已發展成爲移動SoC市場的一股強大力量,並擁有多款自主研發的CPU設計。他們有充分的理由對其雲服務器前景充滿信心。服務器芯片的高核心數量意味着較低的單核功耗,削弱了AMD和英特爾在單線程高性能方面的優勢。與此同時,高通的移動領域背景使其在低功耗CPU設計方面擁有豐富的經驗。其龐大的移動市場使其能夠使用三星的10納米FinFET工藝。這至少可以使其與英特爾的14納米節點保持公平競爭,即便這並不能使高通在功耗和密度方面佔據絕對優勢。高通希望利用這些優勢,在雲計算領域推出一款更便宜、更低功耗的競爭對手。爲了打入雲計算領域,高通需要一種性能足夠強大的 CPU 架構,以滿足諸如尾端延遲等關鍵指標。在 Hot Chips 大會的演示中,高通指出,將一堆性能較弱的內核塞進芯片中並稱其爲“日產”是行不通的。Arm 雲 CPU 或許不必與英特爾和 AMD 的內核匹敵,但它們確實需要達到基準性能水平。高通希望在保持其傳統功耗和密度優勢的同時做到這一點。核心概述Falkor CPU 架構旨在以低功耗和低硅片面積要求滿足這一性能門檻。Falkor 是一款 4 寬 aarch64 核心,其功能繼承自高通之前的移動核心。它運行 64 位 Arm 指令集(aarch64、armv8),並從 armv8.1 中引入了一些功能。由於目前 Arm 服務器應用程序的安裝量不大,因此不支持 32 位 Arm。Falkor 是高通第五款自主研發的核心設計,也是該公司首款專爲雲計算設計的架構。Centriq 2400系列芯片在398平方毫米的芯片上封裝了多達48個Falkor核心,TDP爲120瓦。這意味着每個核心的功耗低於2.5瓦。高通指出,在典型的全核負載下,功耗通常遠低於120瓦。Centriq 2452 系統配備了 96 GB 的 DDR4,運行速度爲 2666 MT/s,並將自己標識爲“Qualcomm Centriq 2400 參考評估平臺 CV90-LA115-P23”。前端Falkor 擁有 L0 和 L1 指令緩存,與高通之前的 Krait 架構類似,可能還有 Kryo。24 KB、3 路組相聯的 L0 指令緩存能夠以更低的功耗和延遲提供指令。L0 的大小可容納絕大多數指令讀取,而 64 KB 的 8 路 L1 指令緩存則可處理更大的代碼佔用空間。雖然 L0 的作用類似於其他 CPU 中的微操作緩存和循環緩衝區,但它像傳統指令緩存一樣保存 ISA 指令字節。兩級指令緩存都有足夠的帶寬來滿足 Falkor 的 4 寬解碼器的需求。兩級指令緩存相互排斥,因此核心實際上擁有 88 KB 的指令緩存容量。高通可能會使用“受制於緩存”的設置來維持這種排斥關係。如果是這樣,傳入的探測必須同時檢查 L0 和 L1,而 L1 訪問除了填充 L0 數據外,還會產生從 L0 複製回數據的額外開銷。“受制於緩存”的設置可以讓 L1 充當 L0 的監聽過濾器,從而降低 L1 訪問的成本,但總緩存容量會減少。獨有的 L0/L1 設置賦予 Falkor 比當代核心更高的指令緩存容量。直到幾年後蘋果推出 M1 芯片,Falkor 纔在這方面被超越。高指令緩存容量使得 L2 代碼提取帶寬變得不那麼重要。與當時的許多 64 位 Arm 核心,甚至 AMD 的 Zen 之前的核心一樣,一旦代碼溢出到 L2,Falkor 的指令吞吐量就會急劇下降。不過,Falkor 在這方面的表現仍然優於 A72。Falkor 的指令緩存受奇偶校驗保護,這在許多 CPU 中很常見。硬件通過使損壞的行無效並從 L2 重新加載來解決奇偶校驗錯誤。指令緩存還將分支目標與指令字節一起保存,因此可用作分支目標緩衝區 (BTB)。單次緩存訪問即可同時提供指令和分支目標,因此 Falkor 無需像具有解耦 BTB 的內核那樣進行單獨的 BTB 訪問。然而,這會阻止分支預測器跟蹤 L1i 未命中後的指令流。在 L0 中,執行分支指令會產生一箇流水線氣泡(2 個週期延遲),而在 L1 中則最多會產生 6 個週期延遲。對於較小的分支佔用空間,Falkor 使用 16 條目分支目標指令緩存 (BTIC) 來實現零氣泡執行分支指令。與 BTB 不同,BTIC 將指令緩存在分支目標地址而不是目標地址。因此,它繞過了緩存延遲,並允許零氣泡執行分支指令,而無需使 L0 達到單週期延遲。方向預測使用多箇歷史表,每個歷史表使用不同的歷史長度。分支預測器跟蹤哪個歷史長度及其對應的表最適合給定分支。高通描述的方案在概念上類似於 TAGE 預測器,後者也使用多箇歷史表和標籤表來指示它們是否對給定分支有用。Falkor 不一定使用經典的 TAGE 預測器。例如,歷史長度可能不是幾何級數。但是,通過爲每個分支使用最合適的歷史長度來節省歷史存儲的想法仍然有效。Arm 的 Cortex A72 使用一箇兩級預測器,大概只有一箇表和一箇固定的歷史長度。在一項抽象測試中,測試了不同數量的分支,每個分支以隨機遞增的模式被執行或不執行,Falkor 的表現略優於 Kryo。Falkor 在分支數量較多時處理得更好,儘管在分支數量較少的情況下,兩個核心能夠處理的最長重複模式相似。Falkor 是一箇用於間接分支的兩級間接目標數組,它從寄存器讀取目標,而不是指定跳轉距離。間接分支可能指向不同的目標,這給分支預測增加了另一箇維度的難度。Falkor 的第一級間接目標數組有 16 個條目,而第二級有 512 個條目。只要總目標數不超過 16,間接分支具有多箇目標幾乎不會帶來任何損失。這可以是一箇分支在 16 個目標之間切換,或者八個分支在兩個目標之間交替。返回是間接分支的一種特殊情況,因爲它們通常會返回到調用點。Falkor 和 Kryo 一樣,有一箇包含 16 個條目的返回堆棧。Cortex A72 的返回堆棧更大,有 31 個條目。在 Falkor、Kryo 和 A72 上,函數調用和返回大約需要 4 個週期,也就是說,每個帶鏈接分支指令平均需要 2 個週期。Falkor 的解碼器每個週期最多可將四條指令轉換爲微操作。與大多數其他 CPU 一樣,高通的目標是將大多數常見指令解碼爲單個微操作。128 位矢量數學指令似乎是一箇顯著的例外。重命名/分配來自解碼器的微操作需要在後端分配資源,以便在亂序執行期間進行記錄。Falkor 的重命名器每週期最多可以處理 個微操作的寄存器重命名和資源分配。然而,第四個槽只能處理直接分支和一些特殊情況,例如 NOP 或可識別的寄存器歸零情況。包含 ALU 操作的條件分支(例如cbz/ cbnz)不能進入第四個槽。除了通過將零立即值移動到寄存器中來對寄存器進行清零的特殊處理之外,我沒有看到執行其他常見的優化。沒有 MOV 消除,並且重命名器無法識別 XOR 或從自身減去寄存器會導致零。無序執行Falkor 沒有傳統的重排序緩衝區(ROB)。相反,它使用了一系列結構,這些結構共同支持亂序執行,同時確保程序結果與按序執行一致。Falkor 擁有一箇包含 256 個條目的重命名/完成緩衝區。高通進一步指出,Falkor 可以同時運行 128 條未提交的指令,以及另外 70 多條未提交的指令,總共 190 條正在運行的指令。該核心每個週期可以退出 4 條指令。從微基準測試的角度來看,Falkor 的表現類似於 Arm 的 Cortex A73。它可以在長延遲負載後釋放寄存器和加載/存儲隊列條目等資源,即使超過 256 條指令,其重新排序能力也沒有明顯的限制。未解析的分支指令同樣會阻止亂序資源的釋放,之後就可以測量 Falkor 的重新排序窗口了。此時,我可能正在測量高通認爲的未提交指令。從未提交指令的角度來看,Kryo 和 Falkor 擁有相似的重排序能力。但除此之外,高通重新平衡了執行引擎,以支持非矢量代碼的一致性能。Falkor 比 Kryo 擁有更多的寄存器文件條目,更重要的是,它的內存排序隊列更大。Falkor 上的整數執行流水線專門用於處理不同類型的運算。其中三個流水線包含整數 ALU,第四個流水線專用於直接分支。間接分支使用其中一箇 ALU 端口。另一箇 ALU 端口包含一箇整數乘法器,該乘法器每週期可完成一次 64 位乘法,延遲爲 5 個週期。每個 ALU 流水線都有一箇大小適中的調度器,包含約 11 個條目。Falkor 擁有兩條基本對稱的浮點/矢量流水線,每條流水線也包含一箇 11 個入口調度器。兩條流水線都能處理浮點加法、乘法和融合乘加等基本運算。向量整數加法和乘法也可以在兩條流水線上執行。更專業的操作,例如 AES 加速指令,則僅由一條流水線支持。浮點和向量執行延遲與 Kryo 相似,標量浮點運算的吞吐量也類似。Falkor 的兩個浮點/向量管道均具有每週期 64 位的吞吐量。128 位數學指令被拆分爲兩個微操作,因爲它們在調度程序、寄存器文件和完成緩衝區中佔用兩個條目。這兩個因素都會降低矢量化代碼的潛在收益。內存訪問Falkor 的加載/存儲子系統設計爲每個週期處理一次加載和一次存儲。內存流水線始於一對 AGU,一箇用於加載,一箇用於存儲。這兩個 AGU 均由一箇統一的調度程序提供,該調度程序包含大約 13 個條目。對於 L1D 命中,加載到使用延遲爲 3 個週期,並且加載 AGU 可以處理索引尋址而不會造成任何性能損失。來自加載AGU的虛擬地址(VA)繼續訪問32 KB的8路L1數據緩存,該緩存每週期可提供16字節。經測試,Falkor每週期可以處理單個128位加載或存儲,或者在同一週期內處理64位加載和64位存儲。混合128位加載和存儲不會帶來每週期超過128位的吞吐量。緩存中的每個位置都有一箇虛擬標籤和一箇與之關聯的物理標籤...如果您不必在緩存之前執行 TLB 查找,則可以更快地獲取數據,並且可以以更好的延遲返回數據。L1D 同時具備虛擬和物理標記功能,這使得 Falkor 無需等待地址轉換即可從 L1D 檢索數據。傳統的 VIPT(虛擬索引,物理標記)緩存可以使用虛擬地址選擇一組行,但在檢查標記是否命中之前需要物理地址 (PA) 可用。高通表示,某些負載可以完全跳過地址轉換,在這種情況下,負載完全無需檢查物理標記。這是一箇相當有趣的設置,我很好奇它如何處理多箇虛擬地址 (VA) 混疊到同一個 PA 的情況。……一種構建在 L1 數據緩存側面的新型結構,其作用類似於回寫緩存。它由 L2 的存儲緩衝區、加載填充緩衝區和監聽過濾緩衝區組合而成,因此,這種位於側面的結構爲我們提供了回寫緩存的所有性能優勢和功耗節省,而無需 L1 數據緩存真正進行回寫。Falkor 的存儲管道根本不檢查標籤。核心有一箇直寫式 L1D,並使用一箇未命名的結構來提供回寫式 L1D 的功耗和性能優勢。它的功能聽起來類似於 Bulldozer 的寫合併緩存 (WCC),所以在高通沒有更好的名稱的情況下,我就這麼叫它了。對同一緩存行的多次寫入會在 WCC 處合併,從而減少 L2 訪問。Falkor 上的商店訪問 L1D 物理標籤以確保一致性,並在到達 WCC 後執行此操作。因此,商店合併機制還可以減少物理標籤檢查,從而節省電量。高通聲稱他們能夠提供寫回緩存的性能,這當然是合理的。Falkor 核心的寫入速度不能超過 16B/週期,而 L2 似乎可以提供更高的帶寬。查看 WCC 的一種方法是每 128B 緩存行進行一次存儲,這表明它具有每核 3 KB 的結構,並且每 2-3 個週期可以向 L2 寫回 128B 緩存行一次。但實際應用中,軟件應該不會遇到這種情況。其他使用直寫 L1D 的架構,尤其是英特爾的奔騰 4 和 AMD 的推土機,在存儲轉發性能方面表現不佳。Falkor 在這方面表現不佳,但也不算太糟糕。在其依賴的存儲中,32 位對齊的加載操作可以獲得 8 個週期的延遲(因此存儲操作可能需要 4 個週期,加載操作可能需要 4 個週期)。較慢的情況,包括部分重疊,只需額外增加一箇週期即可處理。我懷疑大多數核心處理部分重疊的方式是等待存儲提交,然後讓加載操作從緩存中讀取數據。Quaclomm 可能爲 Falkor 提供了一種更先進的轉發機制,以避免從 WCC 讀取數據帶來的延遲。使用直寫式 L1D 可以讓 Qualcomm 奇偶校驗保護 L1D,而無需 ECC。與指令緩存一樣,硬件通過從受 ECC 保護的低級緩存重新加載行來解決奇偶校驗錯誤。地址轉換與移動核心不同,服務器核心在虛擬機內部運行工作負載時可能會佔用大量數據。虛擬化會顯著增加地址轉換開銷,因爲程序可見的虛擬地址 (VA) 會被轉換爲虛擬機可見的地址分配 (PA),而後者又會通過虛擬機管理程序頁錶轉換爲主機地址分配 (PA)。TLB 未命中可能需要遍歷兩組分頁結構,從而將單個內存訪問轉化爲十幾次底層訪問。Kryo 似乎只有一箇 192 條目的單級 TLB,這顯然不適合此類服務器需求。Falkor 放棄了這種“全有或全無”的方法,轉而採用更傳統的兩級 TLB 設置。一箇 64 條目的 L1 DTLB 由一箇 512 條目的 L2 TLB 支持。從 L2 TLB 獲取轉換僅增加兩個週期的延遲,因此速度相當快。L1 DTLB 和 L2 TLB 都存儲“最終”轉換,將程序的虛擬地址完全映射到主機上的物理地址。Falkor 還擁有一箇 64 條目的“非最終” TLB,它緩存指向最後一級分頁結構的指針,並且可以跳過大部分頁面遍歷。另一箇擁有 64 個條目的“第二階段” TLB 緩存從虛擬機 PA 到主機 PA 的轉換。系統架構服務器芯片必須支持高核心數和高IO帶寬,這是服務器SoC和移動SoC之間的另一箇顯著區別。高通將Falkor核心部署在雙核集羣(稱爲雙工)中,並將其作爲其Centriq服務器SoC的基本構建模塊。Kryo也使用了共享L2的雙核集羣,因此這個概唸對高通來說並不陌生。Falkor 的 L2 緩存容量爲 512 KB,支持 8 路組相聯,包含 L1 緩存的內容。它既充當 L1 緩存和片上網絡之間的中級緩存,又充當 L2 緩存的監聽過濾器。L2 緩存受 ECC 保護,因爲它可以包含尚未在其他任何地方寫回的修改數據。高通表示,L2 的延遲爲 15 個週期,但指針追蹤模式的延遲爲 16-17 個週期。無論如何,與 Kryo 超過 20 個週期的 L2 延遲相比,這無疑是一箇值得欣喜的改進。Kryo 和 Arm 的 Cortex A72 將 L2 用作末級緩存,這給它們帶來了一項艱鉅的任務:既要保持足夠低的延遲,以良好的性能處理 L1 未命中,又要擁有足夠的容量,使核心免受 DRAM 延遲的影響。A72 使用 4 MB 的 L2 緩存,延遲爲 21 個週期,而 Kryo 的延遲和 L2 容量都比較低,這讓他們表現不佳。多箇交錯(即存儲體)有助於增加二級 (L2) 帶寬。高通並未具體說明交錯的數量,但表示每個交錯每週期可以傳輸 32 字節。L2 似乎能夠每週期處理 128B 的寫回,因此它可能至少有四個交錯。兩個 Falkor 核心組合在一起,每週期的加載/存儲帶寬僅爲 32B,因此 L2 的帶寬足以滿足兩個核心的需求。相比之下,Kryo 和 A72 上的 L2 緩存的帶寬明顯低於其 L1 緩存。Falkor 雙工器使用 Qualcomm 系統總線 (QSB) 協議與系統接口。QSB 是一種專有協議,其功能與 Arm 使用的 ACE 協議相同。它也可以與英特爾的 IDI 或 AMD 的 Infinity Fabric 協議進行比較。該雙工器的系統總線接口在每個 128B 交錯模式下,每個方向每個週期的帶寬可提供 32 字節。片上網絡高通使用雙向分段環形總線連接核心、三級緩存和輸入/輸出控制器。數據傳輸使用兩組雙向環,流量以 128B 的緩存行粒度在兩個雙向環之間交錯傳輸。Centriq 總共有四個環,覆蓋順時針和逆時針方向的奇偶交錯。高通的幻燈片顯示每個環的傳輸速率爲 32B/週期,因此環形總線在每個方向上實際上擁有 64B/週期的帶寬。簡單的帶寬測試顯示,雙核集羣可以訪問略低於 64 GB/s 的 L3 帶寬,這使得高通在緩存帶寬方面比 Cortex A72 擁有顯著優勢。雙核 Falkor 集羣的 L3 帶寬與 Core i5-6600K 上的 Skylake 核心相當。環形總線客戶端包括最多 24 個雙核集羣、12 個 L3 緩存切片、六個 DDR4 控制器通道、六個處理 32 個 Gen 3 通道的 PCIe 控制器以及各種低速 IO 控制器。L3緩存Centriq 的 L3 切片容量爲 5 MB,採用 20 路組相聯設計,使芯片在 12 個切片上總共擁有 60 MB 的 L3 容量。46 核 Centriq 2452 啓用了 57.5 MB 的 L3 容量。可以預留緩存路數,將 L3 容量分配給不同的應用程序和請求類型,從而有助於確保服務質量。與許多其他多核共享大型 L3 的設計一樣,地址在 L3 切片之間進行哈希處理,以實現帶寬可擴展性。與英特爾和 AMD 的設計不同,Centriq 不會將 L3 切片數量與核心數量匹配。然而,每個 Centriq L3 切片都有兩個環形總線端口,因此 L3 和 Falkor 會將相同的聚合帶寬雙工到片上網絡。L3 延遲高達 40 納秒以上,或超過 100 個週期。對於擁有 512 KB L2 的內核來說,這相當高。帶寬可以擴展到 500 GB/s 以上,這對於帶寬要求極高的矢量工作負載以外的任何工作負載來說都足夠了。Falkor 本身就不是矢量工作負載的理想選擇,因此 Centriq 擁有充足的 L3 帶寬。在中等帶寬負載下,延遲會增加到 50 納秒左右,而當接近 L3 帶寬極限時,延遲會達到 70-80 納秒。所有雙工負載的爭用可能會使延遲超過 90 納秒。Centriq 的 L3 也充當着芯片間的一致性點。L3 不包含上層緩存,並維護 L2 監聽過濾器以確保一致性。在這方面,它的工作原理類似於 AMD Zen 或英特爾 Skylake 服務器上的 L3。每個 L3 切片最多可以跟蹤 32 個未完成的監聽。同一雙工模式下核心之間的緩存一致性操作無需通過環形總線。核心間延遲測試顯示,雙工模式下核心對之間的延遲較低,但從絕對意義上來說延遲仍然較高。這也表明高通通過關閉雙工模式下的一箇核心,禁用了 Centriq 2452 上的兩個核心。這樣做可以稍微提高性能,因爲兩個核心不必共享 L2 容量和系統總線接口。Centriq 支持六個通道,最高可達 768 GB 的 DDR4 內存。內存控制器支持高達 2666 MT/s 的速度,理論帶寬爲 128 GB/s。內存延遲約爲 121.4 納秒,在高帶寬負載下控制不佳。帶寬使用率超過 100 GB/s 時,延遲可能會超過 500 納秒。相比之下,英特爾能夠將延遲保持在 200 納秒以下,帶寬利用率超過 90%。不過,從絕對意義上講,Centriq 擁有充足的帶寬。與亞馬遜 Graviton 1 等當代 Arm 服務器競爭對手相比,Centriq 擁有巨大的帶寬優勢。此外,與 Graviton 1 相比,更大的 L3 應該會降低 DRAM 帶寬需求。與英特爾和 AMD 服務器處理器不同,Centriq 無法擴展到多插槽配置。這使得 Centriq 服務器最多隻能支持 48 個核心,而 AMD 的 Zen 1 和英特爾的 Skylake 則可以通過多插槽進一步擴展。高通決定不採用多插槽配置是有道理的,因爲跨插槽連接需要大量帶寬和額外的互連工作。然而,這確實排除了更專業的雲應用程序,這些應用程序受益於擁有超過一百個 CPU 核心和數 TB 內存的虛擬機。僅有 32 個 PCIe 通道也限制了 Centriq 承載大量加速器的能力。即使是當代的高端工作站也擁有更多的 PCIe 通道。因此,Centriq 的系統架構旨在應對主流雲應用,而非試圖覆蓋英特爾的所有產品。通過避免處理所有這些專用應用,高通的數據中心工作可以避免分心,專注於在常見的雲場景中做到最好。對於這些用例,堅持使用 32 個 PCIe 通道並集成 USB 和 SATA 等傳統南橋功能可能會降低平臺成本。雖然 Centriq 的互連性能可能不如英特爾,但它遠遠領先於 Graviton 1。表現在 SPEC CPU2017 測試中,Falkor 核心的性能遠超 Arm 的 Cortex A72,在整數運算方面領先 21.6%,在浮點運算方面領先 53.4%。但在更先進的工藝節點上,它落後於 Arm 的後續產品。在 SPEC CPU2017 的整數工作負載測試中,Falkor 在 505.mcf 和 502.gcc 等內存密集型工作負載中表現最佳。Falkor 在 503.bwaves 和 507.cactuBSSN 等幾個浮點子測試中取得了巨大的領先優勢,這進一步擴大了其在浮點套件中的整體領先優勢。從 IPC 的角度來看,Falkor 在 538.imagick 等緩存友好型工作負載中表現出色。然而,並非所有高 IPC 工作負載都能讓 Falkor 保持顯著領先。在 SPEC CPU2017 整數套件中的兩項高 IPC 測試中,Cortex A72 在 548.exchange2 和 525.x264 中僅略微落後。這提醒我們,Falkor 的寬度並非 4 倍。爲了進行比較,我納入了 Skylake 的 IPC 數據,Skylake 是一款 4 核處理器,沒有重命名器插槽限制。與 Falkor 不同,它在較輕鬆的工作負載下能夠達到甚至超過 3 IPC。四核比較Zip 設置爲使用八線程並固定到四核,Falkor 遙遙領先於 Cortex A72。每個集羣使用一箇核心,與在兩個集羣中同時加載兩個核心相比,性能提升微乎其微。與 7-Zip 不同,libx264 的矢量化工作負載表現良好。Falkor 的矢量處理能力較差,Cortex A72 也同樣如此。同樣,使用四個雙工處理器帶來的額外 L2 容量也略微提升了性能。Falkor 的表現同樣輕鬆超越 A72。最後的話高通的 Kryo 移動核心結合了高核心吞吐量和低於標準的內存子系統。Falkor 則採取了不同的策略,試圖打入服務器市場。它的核心流水線在很多方面都比 Kryo 有所下降。Falkor 的執行資源更少,加載/存儲帶寬更小,並且對 128 位向量的處理能力更差。它的 3+1 重命名器更像是分支融合的替代品,而不是讓 Falkor 真正成爲一箇 4 核處理器,這又一次落後於 Kryo。Falkor 在某些方面有所改進,例如能夠亂序釋放資源,但它缺乏 Kryo 所能帶來的原始吞吐量。作爲交換,Falkor 獲得了更強大的內存子系統。它的指令緩存容量增加了一倍多。加載/存儲單元可以跟蹤更多正在進行的訪問,並能執行更快的存儲轉發。即使是部分加載/存儲重疊等棘手的情況也能得到良好的處理。在覈心之外,Falkor 的 L2 比 Kryo 的快得多,而且 L2 無法從高帶寬互連背後的 60 MB L3 中獲益。高通並沒有浪費執行單元和核心寬度,而是努力確保 Falkor 的正常運行。Falkor 的目標很可能是在各種工作負載下提供足夠的性能,而不是在少數幾個簡單的工作負載上追求卓越的性能。爲了實現高通的密度目標,削減核心流水線或許也是必要的。在 2017 年,48 個核心已經相當可觀,這將使高通在單路服務器領域的核心數量上超越英特爾和 AMD。在 120W 的功耗範圍內實現這一目標更是令人印象深刻。Kryo 可能對於這個角色來說有點太“臃腫”了。寬流水線和完整的 128 位矢量執行單元非常耗電。數據傳輸也會消耗大量電量,而 Kryo 較差的緩存容量更是雪上加霜。Falkor 最終成爲 2017 年 Arm 服務器市場的有力競爭者。Centriq 完勝亞馬遜的 Graviton 1,後者是首個由主流雲服務提供商推出的廣泛可用的 Arm 平臺。即使與 Kryo 相比核心數量有所減少,Falkor 的性能仍然比 A72 強得多。結合更強大的內存子系統,Falkor 能夠在覈心數量上超越 A72,同時在芯片上擁有更多核心。但擊敗 Graviton 1 還不夠。2010 年代後期,Arm 服務器市場發展並不順利。爲了打造密度優化的 Arm 服務器 CPU,曾有過幾次嘗試,但都以失敗告終。這些嘗試包括 AMD 的“西雅圖”、Ampere 的 eMAG 8180 和 Cavium 的 ThunderX2。x86-64 的強勁競爭以及 Arm 軟件生態系統的新生狀態,很可能使得這些早期的 Arm 服務器芯片難以打入市場。例如,與 Skylake-X 相比,Falkor 的核心要小得多。Centriq 的內存子系統與 Kryo 或 A72 相比性能強勁,但與 Skylake 相比,它的 L2 延遲較短,L3 延遲較高。高通數據中心技術公司在開發 Centriq 服務器 SoC 時無疑取得了巨大成就。將數十個核心拼接在一起,並在一箇芯片上每秒傳輸數百 GB 的數據絕非易事,這與移動 SoC 設計截然不同。但與英特爾和 AMD 等經驗豐富的競爭對手較量並非易事,即使瞄準的是雲計算這樣的特定領域。直到 2020 年之後 Ampere Altra 推出,Arm 才真正在服務器市場站穩腳跟。當時,Arm 更強大的 Neoverse N1 核心和臺積電的 7 納米 FinFET 工藝將 Falkor 甩在了身後。高通計劃在 Falkor 之後推出“Saphira”核心,但據我所知,這款核心從未上市。然而,高通正尋求重返服務器市場,並宣佈向沙特政府支持的人工智能公司 HUMAIN 提供“數據中心 CPU 和 AI 解決方案”。NVIDIA的 NVLink Fusion 公告也提到,高通是其服務器 CPU 的供應商,其 CPU 可通過 NVLink 與 NVIDIA 的 GPU 集成。我期待着看到這一切進展,以及高通的下一代服務器 CPU 是否會借鑑 Centriq 的經驗。https://chipsandcheese.com/p/qualcomms-centriq-2400-and-the-falkor半導體精品公衆號推薦專注半導體領域更多原創內容關注全球半導體產業動向與趨勢*免責聲明:本文由作者原創。文章內容系作者個人觀點,半導體行業觀察轉載僅爲了傳達一種不同的觀點,不代表半導體行業觀察對該觀點贊同或支持,如果有任何異議,歡迎聯繫半導體行業觀察。今天是《半導體行業觀察》爲您分享的第4050期內容,歡迎關注。『半導體第一垂直媒體』實時 專業 原創 深度公衆號ID:icbank喜歡我們的內容就點“在看”分享給小夥伴哦


(本文内容不代表本站观点。)
---------------------------------
本网站以及域名有仲裁协议(arbitration agreement)。

依据《伯尔尼公约》、香港、中国内地的法律规定,本站对部分文章享有对应的版权。

本站真诚介绍香港这个「东方之珠」和「亚洲国际都会」,香港和「东方之珠」和「亚洲国际都会」是本站的业务地点名称。

本网站是"非商业"(non-commercial),没有涉及商业利益或竞争。


2025-Jun-07 11:36pm (UTC +8)
栏目列表