IBM 下一代 Z 系列處理器 ”Telum” 或展示了 CPU 緩存的未來

在上個月舉行的 HotChips 33 上 ,IBM 公布了其下一代 Z 系列處理器 “Telum”。 這款處理器採用了全新的內核架構,針對
AI 加速做了優化。其配置了 8 核 16 線程,頻率超過 5GHz, 採用了三星 7nm 工藝製造,核心面積為 530 平方毫米,集成了
225 億個晶體管,擁有全新的分支預測、緩存和多芯片一致性互連。

IBM 的 Z 系列處理器以擁有大型 L3 緩存而出名,並有單獨的全局 L4 緩存,可作為多個處理器之間的緩存。不過在 Telum 上,不但沒有了 L4 緩存,而且 L3 緩存也沒有了。要知道無論英特爾還是 AMD, 現在都儘可能增大 L3 緩存容量或增加 L4 緩存以提高性能,比如在 AMD 採用 3D 垂直緩存 (3D V-Cache) 技術的 Zen 3 架構桌面處理器,為每個 CCD 帶來額外的 64MB 7nm SRAM 緩存。

IBM 下一代 Z 系列處理器 ''Telum'' 或展示了 CPU 緩存的未來

近日 ,Anandtech 發表了一篇文章,討論了 Telum 的緩存架構。

現代的處理器普遍都有多級緩存,至於為什麼會這樣,可以看我們《超能課堂 (133): 為什麼 CPU 緩存會分為 L1、L2、L3?》大概了解一下。簡單來說,越靠近執行端口的緩存越小但越快(比如 L1), 緩存越多且越大那麼訪問所需的周期就越長(比如 L3)。 緩存除了大小,延遲也很重要,通常緩存越大延遲越大,緩存命中率也會更低。

為了更有效利用緩存,芯片設計公司需要分析這款處理器將用於哪方面的工作負載,以提高設計的效率 。IBM 的產品一般都是大型主機使用,大多是政府或銀行這樣的客戶,對安全性和穩定性極高,這些產品都有故障安全和故障轉移功能。

IBM 在上一代 Z15 產品上,基本單元是一個由五個模塊構成的系統,其中四個是計算模塊 (CP), 一個是控制模塊 (SC)。 四個計算模塊每個有 12 個內核和 256MB 共享的 L3 緩存,核心頻率為 5.2 GHz, 面積為 696 平方毫米。四個計算模塊兩兩配對,各自與控制模塊相連。控制模塊擁有 960MB 的 L4 緩存,並與四個計算模塊共享 。Z15 採用了 IBM 和 GlobalFoundries 聯合研發的 14nm FinFET SOI 特殊工藝製造 ,L1 和 L2 緩存與核心頻率一樣都是 5.2 GHz,L3 和 L4 緩存則是半速的 2.6 GHz。

這意味着單個 IBM Z15 系統是 25 塊 696 平方毫米的芯片組成,共有 20 x 256MB 的 L3 緩存,還有 5 x 960MB 的 L4 緩存,以全對全拓撲連接。

IBM 下一代 Z 系列處理器 ''Telum'' 或展示了 CPU 緩存的未來

IBM 沒有將新一代產品稱為 Z16, 而且稱為 Telum, 可能是因為對緩存的採用了不同的處理方法 。Telum 採用三星 7nm 工藝製造,單芯片擁有 8 個核心 。IBM 將兩個芯片封裝在一起,將四個同樣封裝的處理器組成一個單元,然後將四個同樣的單元組成一個系統,整個系統共有 32 個芯片和 256 個核心。

IBM 為每個核心配置了 32MB 的 L2 緩存,這比一般的處理器大得多,而且取消了核心之間共享的 L3 和 L4 緩存。一般來說,這樣的設計會使得緩存有很高的訪問延遲 。IBM 採取的方法是,通過私有物理緩存里打造共享虛擬緩存的方法解決,意思是將平時需要放置在 L3 緩存里的部分標記為 L3 緩存線存在不同核心空餘的 L2 緩存里。

L2 和 L3 緩存在物理上是一致的,可以根據工作負載的需要,包含來自不同核心的 L2 和 L3 緩存線的混合數據。這意味着一個芯片 8 個核心裡 ,8 x 32MB 共 256MB 的 L2 緩存也可以視為“虛擬 ”L3 緩存,採用雙向環形互連拓撲結構。

相似的方法 IBM 也用在了原來的 L4 緩存上 ,L2 緩存里也可以容納 L4 緩存線。從單個核心的角度來看,在一個基於 Telum 打造標準的系統,可以訪問 32MB 的 L2 緩存 ,256MB 的共享虛擬 L3 緩存,以及 8GB 的共享 L4 緩存 。IBM 表示,使用這種虛擬緩存的系統,每個核心的緩存相當於 Z15 的 1.5 倍,而且還改善了數據訪問的平均延遲,性能提高了 40% 以上。

IBM 下一代 Z 系列處理器 ''Telum'' 或展示了 CPU 緩存的未來

在具體運行中如何降低延遲和保證命中率是一個非常複雜的操作,加上功耗、緩存在斷電和空閑等狀態下如何保證單核心工作負載的一致性,這都是 IBM 需要考慮的問題。可以思考一下,如果 AMD 使用 3D V-Cache 技術堆疊的不是 L3 緩存,而是 L2 緩存,同樣採取虛擬 L3 緩存線的方式,這樣的微架構對性能會有怎樣的影響?

(0)
上一篇 2021-09-06 14:46
下一篇 2021-09-06 15:16

相关推荐