chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

AMD ZEN 4架構(gòu)的前端內(nèi)存子系統(tǒng)及AVX-512的深度解讀

ZYNQ ? 來源:半導(dǎo)體行業(yè)觀察 ? 作者:半導(dǎo)體行業(yè)觀察 ? 2022-11-14 09:26 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

AMD 的 Zen 4 架構(gòu)在科技領(lǐng)域備受期待。因此,在其發(fā)布之前,許多關(guān)于其性能提升的謠言四處流傳。在本文中,我們將對(duì) Zen 4 的無序執(zhí)行引擎的前端內(nèi)存子系統(tǒng),以及 AVX-512等進(jìn)行深入解讀。

希望這個(gè)分析讓大家對(duì)AMD的最新架構(gòu)有更深入的了解。

概述和框圖

從 1000 英尺高處看,Zen 4 看起來很像 Zen 3,但升級(jí)分散在整個(gè)pipeline中。我們可以將 Zen 4 的情況與 Zen 2 的情況進(jìn)行比較。在這兩種情況下,AMD 在將其移植到新的工藝節(jié)點(diǎn)的同時(shí),都在發(fā)展一個(gè)堅(jiān)實(shí)的架構(gòu)。

dba3c214-63b1-11ed-8abf-dac502259ad0.png

遷移到新的制程節(jié)點(diǎn)涉及工作量和風(fēng)險(xiǎn)。英特爾通過眾所周知的“Tick-Tock”策略降低了這種風(fēng)險(xiǎn)。每個(gè)“Tick”代表一個(gè)主要的微架構(gòu)更改,而每個(gè)“Tock”是一個(gè)新制程節(jié)點(diǎn)的端口,具有非常小的更改。

與 2010 年代初的英特爾不同,AMD 大約需要兩年時(shí)間才能遷移到新的工藝節(jié)點(diǎn)。Zen 2 于 2019 年中期問世,距 Zen 1 于 2017 年初發(fā)布大約兩年后,從 14 nm 升級(jí)到 7 nm。Zen 4 于 2022 年末發(fā)布,距 Zen 3 于 2020 年末發(fā)布大約兩年,并從 7 nm 移動(dòng)到 5 nm。因此,AMD 的策略可以被描述為“Tick-Nothing-TickTock”。

這是 Zen 3 的比較:

dbb18cd2-63b1-11ed-8abf-dac502259ad0.png

因?yàn)閿?shù)據(jù)是公開的,所以為 Zen 3 繪制了更多的執(zhí)行單元,而為 Zen 4 測(cè)試所有這些需要太長時(shí)間

前端:分支預(yù)測(cè)器

CPU 的分支預(yù)測(cè)器負(fù)責(zé)將pipeline引導(dǎo)到正確的方向。準(zhǔn)確的分支預(yù)測(cè)器將減少浪費(fèi)的工作,從而提高性能和電源效率。隨著 CPU 增加其重新排序能力,分支預(yù)測(cè)的準(zhǔn)確性變得更加重要,因?yàn)樵阱e(cuò)誤預(yù)測(cè)的分支之后排隊(duì)的任何工作都是無用的。

一、方向預(yù)測(cè)

與 Zen 系列中的其他 CPU 一樣,Zen 4 的方向預(yù)測(cè)器有兩個(gè)overriding levels。制作一個(gè)既非??焖儆址浅?zhǔn)確的預(yù)測(cè)器可能具有挑戰(zhàn)性,因此設(shè)計(jì)人員通常必須在速度和準(zhǔn)確性之間進(jìn)行權(quán)衡。一個(gè)壓倒一切的預(yù)測(cè)器試圖通過速度優(yōu)化的 L1 預(yù)測(cè)器和一個(gè)精度優(yōu)化的 L2 來實(shí)現(xiàn)兩全其美,如果預(yù)測(cè)不一致,它會(huì)覆蓋它。

Zen 4 和 Zen 3 似乎具有類似功能的 L1 預(yù)測(cè)器,但 AMD 顯著增強(qiáng)了 Zen 4 的 L2 預(yù)測(cè)器。Zen 3 的第二級(jí)預(yù)測(cè)器已經(jīng)毫不遜色,但 Zen 4 將事情提升到了一個(gè)新的水平。它可以識(shí)別極長的模式,并且有足夠的存儲(chǔ)空間來很好地執(zhí)行,即使有很多分支在運(yùn)行。

dbc04b3c-63b1-11ed-8abf-dac502259ad0.png

英特爾的 Golden Cove 采取了不同的方法。與早期的英特爾大內(nèi)核一樣,它使用單級(jí)方向預(yù)測(cè)器。Golden Cove 的模式識(shí)別能力介于 Zen 4 的 L1 和 L2 預(yù)測(cè)器之間。

dc0b762a-63b1-11ed-8abf-dac502259ad0.png

左邊是 Zen 4,右邊是 Golden Cove。兩者的分支數(shù)都高達(dá) 512

Golden Cove 可能會(huì)在難度適中的分支中享有優(yōu)勢(shì),可以由其預(yù)測(cè)器處理,但不能由 AMD 的 L1 預(yù)測(cè)器處理。然后,Zen 4 將失去 L2 覆蓋的前端帶寬。如果一個(gè)程序有很多難以預(yù)測(cè)的分支,Zen 4 將具有顯著的優(yōu)勢(shì);Golden Cove 將遭受更昂貴的錯(cuò)誤預(yù)測(cè)。在 Golden Cove 上,錯(cuò)誤預(yù)測(cè)的代價(jià)可能特別高,它依賴于保持更多指令在運(yùn)行中以應(yīng)對(duì)其更高的緩存延遲。如果您遭受錯(cuò)誤預(yù)測(cè)并最終將它們丟棄,那么在您的核心中跟蹤大量指令將無濟(jì)于事。

二、分支目標(biāo)跟蹤

有一個(gè)準(zhǔn)確的分支預(yù)測(cè)器很好,但速度也很重要。您不希望過于頻繁地停止pipeline,因?yàn)槟诘却种ьA(yù)測(cè)器提供下一個(gè)提取目標(biāo)。與 Zen 3 一樣,Zen 4 具有兩級(jí)分支目標(biāo)緩沖區(qū) (BTB):branch target buffer 設(shè)置,第一級(jí)非常大且速度快。Zen 3 的 L1 BTB 可以跟蹤 1024 個(gè)分支目標(biāo),并以 1 個(gè)周期延遲處理它們,這意味著如果目標(biāo)來自 L1 BTB,則前端不需要在執(zhí)行分支后停止。Zen 4 的 L1 BTB 保持相同的 1 個(gè)周期延遲,但提高了容量。根據(jù)分支密度,Zen 4 的 L1 BTB 最多可以跟蹤 3072 個(gè)分支目標(biāo),但實(shí)際上它可能能夠跟蹤 1024 到 2048 個(gè)目標(biāo)。

dc1ea466-63b1-11ed-8abf-dac502259ad0.png

我們已經(jīng)看到網(wǎng)上聲稱 Zen 4 具有 1.5K 入口 L1 BTB。在我們的測(cè)試中,Zen 4 可能偶爾能夠在每個(gè) BTB 條目中存儲(chǔ)兩個(gè)分支目標(biāo)。先前 Zen CPU 的優(yōu)化手冊(cè)詳細(xì)介紹了此機(jī)制。

“如果分支位于同一個(gè) 64 字節(jié)對(duì)齊的高速緩存行中并且第一個(gè)分支是條件分支,則每個(gè) BTB 條目最多可以容納兩個(gè)分支?!薄狝MD 系列 17h 處理器的軟件優(yōu)化指南

我們的測(cè)試在以前的 Zen CPU 上沒有顯示這種行為,因?yàn)槲覀冎皇褂昧藷o條件分支。Zen 4 可能使 BTB 條目共享方案更加靈活,解釋了當(dāng)分支間隔為 8 個(gè)字節(jié)時(shí)我們?nèi)绾慰吹礁櫟?3072 個(gè)分支目標(biāo)。

Zen 4 的 L2 BTB 大小也略有增加,容量從 Zen 3 上的 6656 個(gè)條目增加到 Zen 4 上的 8192 個(gè)。更重要的是,Zen 4 的 L2 BTB 更快:Zen 3 在需要來自其 L2 BTB的分支目標(biāo)時(shí)遭受了三個(gè)周期的penalty,Zen 4 將penalty降低到一個(gè)周期。

dc3a5dfa-63b1-11ed-8abf-dac502259ad0.png

三、間接分支預(yù)測(cè)

間接分支可以到達(dá)多個(gè)目標(biāo)。將它們視為實(shí)現(xiàn) switch-case 語句的選項(xiàng)。它們?yōu)榉种ьA(yù)測(cè)增加了另一個(gè)難度維度,因?yàn)轭A(yù)測(cè)器必須在幾個(gè)可能的目標(biāo)之間進(jìn)行選擇。AMD 的 CPU 有一個(gè)單獨(dú)的間接目標(biāo)數(shù)組,用于處理指向多個(gè)目標(biāo)的分支。在我們的測(cè)試中,Zen 4 似乎能夠跟蹤多達(dá) 3072 個(gè)分支目標(biāo)而沒有明顯的損失。對(duì)于單個(gè)分支,Zen 4 看到隨著目標(biāo)數(shù)量超過 32 個(gè)而增加 penalties ,但此后沒有明顯的飆升表明預(yù)測(cè)錯(cuò)誤。

dc443e1a-63b1-11ed-8abf-dac502259ad0.png

相比 Zen 3,Zen 4 對(duì)間接分支的追蹤能力顯然更好。從間接目標(biāo)數(shù)組中獲取目標(biāo)的 penalties 也較低。

Zen 4 在有很多間接分支的情況下比 Golden Cove 做得更好,但是當(dāng)少數(shù)分支到達(dá)很多目標(biāo)時(shí),Golden Cove 可以更好地應(yīng)對(duì)。當(dāng)必須在大量目標(biāo)之間進(jìn)行選擇時(shí),兩種架構(gòu)似乎都會(huì)受到某種penalty,但分支的行為仍在預(yù)測(cè)器的跟蹤能力范圍內(nèi)。

dc59a6f6-63b1-11ed-8abf-dac502259ad0.png

一種猜測(cè)是 Zen 4 有一個(gè)更大但更慢的間接目標(biāo)數(shù)組。前幾代 Zen 的優(yōu)化手冊(cè)表明,間接目標(biāo)數(shù)組可用作壓倒一切的預(yù)測(cè)器。如果分支碰巧去了上次去的同一個(gè)地方,Zen 可以使用其更快的主 BTB 來提供目標(biāo),這意味著間接分支的延遲與其擁有的目標(biāo)數(shù)量相關(guān)聯(lián)。隨著 Golden Cove 上目標(biāo)數(shù)量的增加,我們看到分支延遲的增加較少,這表明英特爾正在使用不同的機(jī)制。

四、回報(bào)預(yù)測(cè)(Return Prediction)

調(diào)用和返回對(duì)是間接分支的一種特殊情況,因?yàn)榉祷赝ǔ?huì)返回到調(diào)用函數(shù)的位置。CPU 使用特殊的返回堆棧來利用此行為。在調(diào)用時(shí),CPU 將下一條連續(xù)指令的地址壓入堆棧。當(dāng)有返回時(shí),它會(huì)從返回堆棧中彈出地址。這種非常簡(jiǎn)單的機(jī)制為返回提供了非常準(zhǔn)確的預(yù)測(cè),因?yàn)檎{(diào)用和返回對(duì)通常是匹配的。但是,非常深的調(diào)用序列可能會(huì)溢出堆棧。

dc863220-63b1-11ed-8abf-dac502259ad0.png

與前幾代 Zen 一樣,Zen 4 有一個(gè)包含 32 個(gè)條目(entries)的返回堆棧。不過,AMD 似乎做了一些改進(jìn),使得單個(gè)線程可以使用所有 32 個(gè)條目。英特爾的 Golden Cove 可能有一個(gè)返回堆棧,因?yàn)檫@是一種預(yù)測(cè)返回的有效方法,但與此處測(cè)試的其他 CPU 不同。當(dāng)調(diào)用只有兩個(gè)深度時(shí)速度非???,但隨后會(huì)減慢并且之后每個(gè)調(diào)用/返回對(duì)的時(shí)間不會(huì)急劇增加。如果返回堆棧溢出,英特爾可能會(huì)順利過渡到在返回上使用其間接預(yù)測(cè)器。

前端:獲取帶寬

一旦分支預(yù)測(cè)器確定下一步要去哪里,就該獲取指令了。Zen 4 與前幾代 Zen 一樣,可以通過大型微操作緩存加速這一過程。與 Zen 3 相比,Zen 4 將微操作緩存的大小從 4K 增加到 6.75K 條目。我們對(duì) 8B NOP 的測(cè)試并沒有顯示出微操作緩存容量增加太多,因?yàn)樵?32 KB 之后獲取帶寬會(huì)下降。L1i 很可能包含微操作緩存。

dc96deb8-63b1-11ed-8abf-dac502259ad0.png

除了微操作緩存和 L1i 之外,指令獲取帶寬下降但仍然非常不錯(cuò)。Zen 4、Zen 3 和 Golden Cove 都可以從 L2 每個(gè)周期維持大約 16 個(gè)字節(jié),從 L3 每個(gè)周期可以維持略高于 10 個(gè)字節(jié)。這應(yīng)該足以防止除了具有大指令占用空間的最高 IPC 代碼之外的所有指令帶寬瓶頸,因?yàn)榧词乖谑噶炕a中,平均指令長度通常也低于 8 個(gè)字節(jié)。

dca1f7ee-63b1-11ed-8abf-dac502259ad0.png

為了使微基準(zhǔn)測(cè)試復(fù)雜化,Zen 4 似乎成對(duì)處理 NOP,就像Graviton 3一樣。我們每個(gè)周期從微操作緩存中獲得了荒謬的 12 個(gè) NOP。AMD 表示,微操作緩存每個(gè)周期提供 9 個(gè)操作,但吞吐量受到下游 6 寬重命名器(renamer)的限制??赡馨l(fā)生的情況是每個(gè)重命名器插槽每個(gè)周期可以處理兩個(gè) NOP。為了解決這個(gè)問題,我們使用了一條指令,將寄存器與自身進(jìn)行異或(XORs )。將寄存器與自身進(jìn)行異或是一種將寄存器歸零的常用方法,大多數(shù)重命名器都會(huì)消除這種情況。

dcc004d2-63b1-11ed-8abf-dac502259ad0.png

但重要的部分是,XOR r,r 的行為就像一條正常指令,一直到重命名器(renamer)。我們現(xiàn)在還可以看到微操作緩存和 L1i 吞吐量之間的差異。一旦 Zen 4 錯(cuò)過 op 緩存,吞吐量就會(huì)受到 4-wide 解碼器的限制。與前幾代 Zen 一樣,L1i 可能比較低的緩存級(jí)別提供更多的指令獲取帶寬。但是 Zen 4 的運(yùn)算緩存的大小意味著它可能可以處理需要大量指令帶寬的大多數(shù)情況。如果一個(gè)程序有足夠大的代碼足跡溢出操作緩存,并且有很多長指令,它也可能會(huì)溢出 L1i。

重命名/分配(Rename/Allocate

在無序執(zhí)行的 CPU 上,重命名器(renamer)充當(dāng)有序前端和無序后端之間的橋梁。它的主要工作是分配后端資源以跟蹤運(yùn)行中的操作,以便它們可以按程序順序正確提交。重命名器也是一個(gè)方便的地方,它可以使后端操作更高效。Zen 4 的重命名器能夠打破 zeroing idioms和register to register MOVs之間的依賴關(guān)系,其行為與 Zen 3 非常相似。

dcd60156-63b1-11ed-8abf-dac502259ad0.png

Golden Cove 的重命名器功能稍強(qiáng)一些,也可以消除 MOV r,0 情況。它還可以在不使用下游 ALU 的情況下處理添加小的立即數(shù)(small immediate values :即指令中提供的值,而不是來自寄存器的值)。

Renamer技巧可以更進(jìn)一步,通過不為這些情況分配寄存器來節(jié)省后端資源。消除的 MOV 可以通過將多個(gè)架構(gòu)寄存器指向同一個(gè)物理寄存器來處理,這意味著不必為此類 MOV 分配額外的物理寄存器。如果Renamer知道寄存器的值必須為零,它可以通過在寄存器別名表中設(shè)置一個(gè)位而不是分配一個(gè)實(shí)整數(shù)寄存器來記住這一點(diǎn)。Zen 4 的Renamer也是這樣做的,它繼承了前幾代 Zen 的特點(diǎn),尤其是 Zen 3。

dcf80b84-63b1-11ed-8abf-dac502259ad0.png

在大多數(shù)情況下,Zen 4 可以避免在識(shí)別zeroing idiom時(shí)分配物理寄存器。但是,128 位 XMM 寄存器是一個(gè)例外。從 Zen 3 開始,使用 XORPS 或 SUBPS 將 1 歸零會(huì)占用一個(gè)向量寄存器。這有點(diǎn)令人驚訝,因?yàn)?Zen 2 在這些情況下可以避免寄存器分配。也許 Zen 2 獨(dú)立跟蹤其 256 位向量寄存器的 128 位一半,但 Zen 3 和 Zen 4 以 256 位粒度(granularity)進(jìn)行跟蹤。在測(cè)試序列之前執(zhí)行 VZEROUPPER 指令沒有任何區(qū)別。

在我們測(cè)試的所有情況下,英特爾都可以避免分配寄存器,而且這種能力至少可以追溯到 Skylake。即使在 2022 年,AMD 仍在迎頭趕上,盡管這些都是相對(duì)次要的細(xì)節(jié)。

亂序資源

與前幾代 Zen 一樣,Zen 4 對(duì)無序緩沖區(qū)大小進(jìn)行了增量改進(jìn)。結(jié)構(gòu)大小的變化范圍從 ROB 容量增加 25% 到存儲(chǔ)隊(duì)列完全沒有變化。對(duì)于發(fā)生變化的結(jié)構(gòu),條目數(shù)通常會(huì)增加 10-20%??偟膩碚f,這些變化比我們看到的從 Zen 1 到 Zen 2 的變化要大一些。

dd03b8c6-63b1-11ed-8abf-dac502259ad0.png

與其主要的競(jìng)爭(zhēng)對(duì)手英特爾相比,Zen 4 在重新排序能力方面仍然是一個(gè)相當(dāng)小的核心。許多關(guān)鍵架構(gòu)甚至比 Sunny Cove 的還要小,更不用說 Golden Cove 的了。但正如我們所知道的那樣,英特爾需要更多的重新排序能力來處理其更高延遲的緩存設(shè)置。

在某些領(lǐng)域,Zen 4 的沖擊力也比其headline重新排序緩沖區(qū)容量所暗示的要大一些。我們測(cè)量了 202 個(gè)整數(shù)寄存器(共 224 個(gè))可用于保存推測(cè)結(jié)果,覆蓋了 ROB 容量的 63%。在 Golden Cove,我們測(cè)量了大約 242 個(gè)整數(shù)寄存器,即 ROB 容量的 47.2%。因此,Golden Cove 的重新排序能力更有可能因缺少整數(shù)寄存器而受到限制,而且情況更糟,因?yàn)?Golden Cove 在使用其物理寄存器文件時(shí)似乎效率較低。對(duì)于 Zen 4,測(cè)得的 202 個(gè)整數(shù)加法的重新排序容量意味著使用 22 個(gè)物理整數(shù)寄存器來保存非推測(cè)結(jié)果。假設(shè)英特爾沒有減少 Sunny Cove 和 Golden Cove 之間的整數(shù)寄存器文件大小,

Zen 4 的重新排序緩沖區(qū)也很特別,因?yàn)槊總€(gè)條目( entry)最多可以容納 4 個(gè) NOP。解碼器可能會(huì)融合成對(duì)的 NOP,并且在重命名階段再次融合成對(duì)的 NOP。雖然這不太可能對(duì)實(shí)際代碼產(chǎn)生重大影響,但測(cè)量 1265 個(gè) NOP 的重新排序能力很有趣。我們使用了一個(gè)自定義測(cè)試,最多包含 128 個(gè)整數(shù)加法、128 個(gè)浮點(diǎn)加法、40 個(gè)存儲(chǔ)和 55 個(gè)分支(按此順序),以確認(rèn) AMD 公布的 320 條目 ROB 容量。

調(diào)度和執(zhí)行

調(diào)度程序和執(zhí)行pipe布局與 Zen 3 相比沒有變化。Zen 3 的調(diào)度程序設(shè)置是 Zen 2 的重大升級(jí),通過在 ALU 和 AGU 端口之間共享調(diào)度隊(duì)列,在整數(shù)方面提供了很大的靈活性。在浮點(diǎn)和向量執(zhí)行方面,Zen 3 和 Zen 4 保留了前幾代 Zen 中發(fā)現(xiàn)的大型非調(diào)度隊(duì)列,但從統(tǒng)一的四端口調(diào)度器轉(zhuǎn)移到兩個(gè)三端口調(diào)度器。在實(shí)踐中,這應(yīng)該很像一個(gè)統(tǒng)一的調(diào)度器,因?yàn)閮蓚€(gè)調(diào)度器都有類似的管道連接到它們。

dd2b688a-63b1-11ed-8abf-dac502259ad0.png

調(diào)度器結(jié)構(gòu)在功率和面積方面往往很昂貴。調(diào)度隊(duì)列可能必須在每個(gè)周期檢查每個(gè)條目,以查看它是否已準(zhǔn)備好執(zhí)行。為了使事情變得更加困難,它必須能夠在標(biāo)記為就緒的同一周期發(fā)送執(zhí)行指令。即使延遲一個(gè)周期也會(huì)導(dǎo)致毀滅性的 10% IPC 下降,這一切都是由其本身造成的。所有這些都變得越來越難在高時(shí)鐘下實(shí)現(xiàn)。

AMD 可能選擇專注于提高時(shí)鐘速度,而不是提高調(diào)度程序的容量。增加調(diào)度隊(duì)列大小會(huì)導(dǎo)致收益遞減。另一方面,性能通常與時(shí)鐘速度非常吻合。也就是說,只要您的緩存設(shè)置足以防止內(nèi)存瓶頸,IPC 通常不會(huì)隨著時(shí)鐘速度的增加而出現(xiàn)太大的下降。AMD 的工程師可能看到,通過在更高的時(shí)鐘頻率下運(yùn)行內(nèi)核,他們可以獲得更大的整體性能提升,而不是通過加強(qiáng)調(diào)度程序設(shè)置來增加 IPC。

AVX-512 實(shí)施

Zen 4 是第一個(gè)實(shí)現(xiàn) AVX-512 指令集擴(kuò)展的 AMD 架構(gòu)。Zen 4 在 AVX-512 功能支持方面與 Ice Lake 差不多。在實(shí)施方面,Zen 4 旨在實(shí)現(xiàn) Centaur CNS 和英特爾服務(wù)器芯片之間的功率、面積和性能平衡。

dd3c1ca2-63b1-11ed-8abf-dac502259ad0.png

AMD 通過將向量解碼為兩個(gè)微操作來支持更長的向量長度的悠久傳統(tǒng)。

Bulldozer 通過將 256 位操作分解為兩個(gè) 128 位微操作來支持 AVX。K8 也做了同樣的事情,將 128 位 SSE 操作分解為兩個(gè) 64 位操作。這種策略讓 AMD 能夠以極少的功耗和面積開銷支持新的指令集擴(kuò)展,但也意味著當(dāng)應(yīng)用程序確實(shí)利用更廣泛的向量時(shí),它們并沒有太多好處。相比之下,英特爾在 Sandy Bridge 推出時(shí)帶來了full-width AVX 執(zhí)行。Server Skylake 對(duì) AVX-512 做了同樣的事情。

Zen 4 部分打破了這一傳統(tǒng),將在 512 位向量上運(yùn)行的指令作為一個(gè)微操作保留在大部分流水線中。因此,每條 AVX-512 指令僅消耗相關(guān)無序執(zhí)行緩沖區(qū)中的一個(gè)條目。我假設(shè)它們?cè)谶M(jìn)入 256 位執(zhí)行pipe后被分解為兩個(gè)操作,這意味著指令在管道中盡可能晚地分成兩個(gè) 256 位半。我還假設(shè)這就是 AMD 的“double pumping”所指的。與 Bulldozer 和 K8 的方法相比,這是一個(gè)巨大的優(yōu)勢(shì)。為每條 256 位或 128 位指令跟蹤兩個(gè)微操作意味著那些較舊的架構(gòu)無法使用更寬的向量來保持更多工作在進(jìn)行中。不過,Zen 4 的做法在面積和功耗方面略貴一些,

512 位存儲(chǔ)是該規(guī)則的一個(gè)例外。它們?nèi)匀槐唤獯a為兩個(gè)微操作,這意味著它們消耗了兩個(gè)有價(jià)值的存儲(chǔ)隊(duì)列條目。存儲(chǔ)隊(duì)列可能是一個(gè)非常熱門的結(jié)構(gòu),特別是因?yàn)榇鎯?chǔ)必須留在那里直到退休,因?yàn)橹挥幸阎己玫臄?shù)據(jù)才能提交到緩存。AMD 的存儲(chǔ)隊(duì)列比 Intel 的要小很多,因此如果 Zen 4 的 AVX-512 實(shí)施存在一個(gè)嚴(yán)重缺陷,那就是存儲(chǔ)的處理方式。

這可能是因?yàn)?AMD 沒有為 L1 數(shù)據(jù)緩存實(shí)現(xiàn)更寬的總線。Zen 4 的 L1D 每個(gè)周期可以處理兩個(gè) 256 位加載和一個(gè) 256 位存儲(chǔ),這意味著向量加載/存儲(chǔ)帶寬與 Zen 2 保持不變。技嘉泄漏建議對(duì)齊更改為 512 位,但這顯然不是申請(qǐng)門店。

dd6955f0-63b1-11ed-8abf-dac502259ad0.png

自 Zen 2 以來,最常見操作的向量執(zhí)行吞吐量也基本沒有變化,Zen 2 是第一個(gè)帶來full-width AVX 執(zhí)行的 AMD 架構(gòu)。Zen 2、3 和 4 都有兩個(gè) 256 位 FMA 單元和四個(gè) 256 位 ALU。起初,這似乎并不令人興奮。但在很多工作負(fù)載中,提供執(zhí)行單元比擁有大量執(zhí)行單元更重要。與英特爾相比,Zen 4 已經(jīng)具有具有競(jìng)爭(zhēng)力的矢量吞吐量。除非我們查看其架構(gòu)的服務(wù)器變體,否則英特爾并沒有顯著的吞吐量?jī)?yōu)勢(shì),它們?cè)诙丝?5 上有一個(gè)額外的 512 位 FMA 單元。

dd97e1fe-63b1-11ed-8abf-dac502259ad0.png

雖然英特爾的客戶端架構(gòu)具有與 Zen 4 相當(dāng)?shù)南蛄客掏铝?,但通過 256 位piles的 512 位操作的處理方式不同。英特爾在端口 0 和 1 上融合了兩個(gè) 256 位單元來處理 512 位操作。當(dāng)將 256 位 FMA 指令與 512 位指令混合時(shí),這會(huì)導(dǎo)致一些有趣的特性。Intel 卡在每個(gè)周期一個(gè)向量操作,可能是因?yàn)槎丝?0 和 1 上的 256 位 FMA 單元必須設(shè)置為 1×512 位或 2×256 位模式,但不能同時(shí)處于兩種模式。

AVX-512 還允許通過一組 K (mask)寄存器來masking 大多數(shù)操作。為了處理這個(gè)問題,Zen 4 添加了一個(gè)相對(duì)較小的掩碼寄存器(mask register)文件。掩碼寄存器有大約 52 個(gè)重命名(renames ),這個(gè)寄存器文件比我們?cè)?Skylake-X 或 Ice Lake 上看到的要小得多。在最大重排量(maximum reordering capacity)方面,Zen 4 比 Skylake-X 更接近 Ice Lake,因此 AMD 并沒有對(duì)這個(gè)結(jié)構(gòu)給予太多重視。

總結(jié)各種 AVX-512 實(shí)施決策:

dda4b686-63b1-11ed-8abf-dac502259ad0.png

Zen 4 從 AVX-512 獲得了比 Centaur CNS 更大的收益,后者以最小的裸片面積開銷實(shí)現(xiàn) AVX-512 支持。反過來,英特爾看到了比 Zen 4 更大的收益。啟用 AVX-512 的 Golden Cove 在此基準(zhǔn)測(cè)試中實(shí)際上在擴(kuò)展和絕對(duì)性能方面都優(yōu)于 Zen 4。但這可能是這一代人的爭(zhēng)論點(diǎn),因?yàn)橛⑻貭枱o法在其混合客戶端芯片中啟用 AVX-512 支持。

ddc93b28-63b1-11ed-8abf-dac502259ad0.png

總而言之,AMD 的 AVX-512 實(shí)施專注于更好地滿足現(xiàn)有執(zhí)行能力,并且只在其產(chǎn)生最大影響的地方使用額外的芯片面積和功率。最昂貴的更改可能與擴(kuò)展向量寄存器文件以使每個(gè)寄存器為 512 位寬有關(guān)。AMD 還必須在整個(gè)流水線中添加掩碼寄存器文件和其他邏輯來處理新指令。與 Intel 的客戶端實(shí)現(xiàn)一樣,AMD 避免添加額外的浮點(diǎn)執(zhí)行單元,這會(huì)很昂貴。與 Intel 不同的是,AMD 也保持 L1D 和 L2 帶寬不變,并將 512 位存儲(chǔ)拆分為兩個(gè)操作。

結(jié)果是非??尚诺牡谝惠?AVX-512 實(shí)施。與 Intel 相比,AMD 在一些關(guān)鍵領(lǐng)域仍然存在不足,如果 AVX-512 代碼需要大量加載/存儲(chǔ)帶寬并適合核心專用緩存,則尤其處于劣勢(shì)。但是,雖然 Zen 4 的目標(biāo)沒有英特爾那么高,但它仍然可以從 AVX-512 中以與客戶端英特爾架構(gòu)相同的許多方式受益。AMD 對(duì) 512 位向量的支持也強(qiáng)于最初在 K8 Athlon 中對(duì) 128 位向量的支持,或者從 Bulldozer 到 Zen 1 的 256 位向量。Zen 4 在可以利用 AVX-512 的應(yīng)用程序中應(yīng)該會(huì)看到明顯的好處,無需花費(fèi)大量功率或die面積。

Zen 4還引入了大量的前端和執(zhí)行引擎改進(jìn)。分支預(yù)測(cè)器和微操作緩存改進(jìn)讓前端更快地將指令帶入核心,并建立在 Zen 3 已經(jīng)強(qiáng)大的前端之上。后端增加的重新排序能力讓 Zen 4 更好地吸收緩存和執(zhí)行延遲。

然而,AMD 幾乎沒有改變執(zhí)行單元和調(diào)度程序的設(shè)置。執(zhí)行單元沒什么大不了的,因?yàn)?Zen 3 已經(jīng)有足夠的執(zhí)行能力了,提供執(zhí)行單元比增加更多更重要。然而,沒有增加任何調(diào)度隊(duì)列有點(diǎn)令人驚訝。AMD 提高了調(diào)度能力,并且在之前的每一代 Zen 中至少對(duì)調(diào)度器布局進(jìn)行了微小的更改。Zen 3 在靈活的布局中已經(jīng)具備了充足的調(diào)度能力,因此 Zen 4 的相同設(shè)置無論如何也不弱。但隨著其他組件的改進(jìn),調(diào)度能力可能會(huì)成為更多的限制因素。Zen 4 通常會(huì)在整數(shù)代碼方面表現(xiàn)出色,盡管 IPC 的增加在時(shí)鐘速度提升方面處于次要地位。

Zen 4 在加載和存儲(chǔ)帶寬方面也落后了。它的 L1D 每個(gè)周期可以提供 512 位的加載帶寬和 256 位的存儲(chǔ)帶寬。這使得 Zen 4 的 L1D 帶寬與 AMD 方面的 Zen 2 和 Zen 3 或英特爾方面的 Haswell 和客戶端 Skylake 保持一致。Zen 4 在使用 256 位向量(或更小)的代碼方面仍然表現(xiàn)出色,盡管可能達(dá)不到 Golden Cove 的水平。

但是,AMD 在支持 AVX-512 方面擁有優(yōu)勢(shì)。如果代碼使用新的 AVX-512 指令和功能,這些指令和功能在 Zen 4 上具有優(yōu)化的路徑,但沒有直接的 AVX2 等效項(xiàng),英特爾將發(fā)現(xiàn)自己處于不利的不利地位。Zen 4 可能沒有全面的 AVX-512 實(shí)施。但如果應(yīng)用正確,它仍然足以擊敗缺乏 AVX-512 支持的競(jìng)爭(zhēng)對(duì)手。

當(dāng)然,這假設(shè)兩個(gè)處理器都沒有受到內(nèi)存子系統(tǒng)的瓶頸。在線程良好的矢量化應(yīng)用程序中,緩存和內(nèi)存性能可能非常重要。這是一個(gè)復(fù)雜的話題,我們將在后續(xù)文章中介紹 Zen 4 的加載/存儲(chǔ)子系統(tǒng)和數(shù)據(jù)端內(nèi)存層次結(jié)構(gòu)。

內(nèi)存執(zhí)行

與 Zen 3 一樣,Zen 4 使用三個(gè) AGU 來計(jì)算加載和存儲(chǔ)指令的地址。這些地址以及存儲(chǔ)數(shù)據(jù)(如果適用)被傳遞到加載/存儲(chǔ)單元。然后,加載/存儲(chǔ)單元必須面對(duì)確保內(nèi)存訪問看起來按照程序順序執(zhí)行的復(fù)雜工作,同時(shí)盡可能多地提取性能。

高性能意味著保持大量操作處于運(yùn)行狀態(tài)以隱藏內(nèi)存訪問延遲,加載/存儲(chǔ)單元必須通過跟蹤待處理的內(nèi)存操作來發(fā)揮其作用。為此,Zen 4 實(shí)現(xiàn)了一個(gè)大型加載隊(duì)列(large load queue)。自 Zen 1 以來,AMD 的加載隊(duì)列的工作方式與 Intel 的不同。在加載操作接收到數(shù)據(jù)后,加載隊(duì)列可以自由地釋放它。一個(gè)單獨(dú)的、更大的結(jié)構(gòu)用于跟蹤裝載操作直至退出(retirement)。為了區(qū)分這些結(jié)構(gòu),我們將較大的結(jié)構(gòu)稱為“加載驗(yàn)證隊(duì)列”(load validation queue),將發(fā)布的加載隊(duì)列稱為“加載執(zhí)行隊(duì)列”(load execution queue)。分離出這些結(jié)構(gòu)讓 AMD 可以保持 136 次加載操作,遠(yuǎn)遠(yuǎn)超過他們公布的加載隊(duì)列大小所暗示的。

dde1e498-63b1-11ed-8abf-dac502259ad0.png

Zen 4 上的存儲(chǔ)必須緩沖在一個(gè)相對(duì)較小的 64 條目存儲(chǔ)隊(duì)列中。這個(gè)存儲(chǔ)隊(duì)列對(duì) AVX-512 代碼的壓力更大,因?yàn)?512 位存儲(chǔ)將消耗兩個(gè)存儲(chǔ)隊(duì)列條目。

一旦內(nèi)存操作在各自的隊(duì)列中,加載/存儲(chǔ)單元必須確保保留內(nèi)存順序。如果動(dòng)態(tài)存儲(chǔ)的地址與較新加載的地址重疊,則可以將存儲(chǔ)的數(shù)據(jù)轉(zhuǎn)發(fā)給加載。與 Zen 3 一樣,Zen 4 可以無延遲地進(jìn)行存儲(chǔ)轉(zhuǎn)發(fā)。也就是說,依賴加載和存儲(chǔ)的鏈將在 2 個(gè) IPC 上執(zhí)行。

但是,這有適用的不同條款和條件。加載和存儲(chǔ)地址必須完全匹配。如果存儲(chǔ)跨越 32 字節(jié)對(duì)齊邊界(aligned boundary),則會(huì)評(píng)估額外的 1 個(gè)周期延遲損失。如果存儲(chǔ)跨越 4 KB 對(duì)齊的pages邊界( page boundary),該機(jī)制將完全失敗。

de0b4cd4-63b1-11ed-8abf-dac502259ad0.png

Zen 4 的存儲(chǔ)到加載轉(zhuǎn)發(fā)特性,使用Henry Wong 的測(cè)試方法

負(fù)載完全包含在存儲(chǔ)中的部分重疊情況以 6-7 個(gè)周期的延遲處理,這比 Zen 3 的 7-8 個(gè)周期略有改進(jìn)。如果加載和存儲(chǔ)重疊,則兩代 Zen 的存儲(chǔ)轉(zhuǎn)發(fā)都會(huì)失敗,但僅使用存儲(chǔ)中的數(shù)據(jù)無法完成加載。Zen 4 在這種情況下需要 19 個(gè)周期的懲罰(cycle penalty),這可能對(duì)應(yīng)于等待 store 退出并從 L1D 讀取數(shù)據(jù)。相比之下,Zen 3 可以在 18 個(gè)周期內(nèi)處理故障情況,但前提是存儲(chǔ)地址與 4 字節(jié)邊界(byte boundary)對(duì)齊。否則,Zen 3 將遭受 25 個(gè)周期的懲罰,而 Zen 4 避免了這一點(diǎn)。對(duì)于所有測(cè)試的存儲(chǔ)轉(zhuǎn)發(fā)案例,總結(jié)依賴于存儲(chǔ)的負(fù)載的互惠吞吐量:

de2f9ad0-63b1-11ed-8abf-dac502259ad0.png

Zen 4 保留了 Zen 3 的大部分存儲(chǔ)轉(zhuǎn)發(fā)(store forwarding )特性,并在最常見的情況下略有改進(jìn)。不太常見的pages邊界交叉情況略有回歸。在兩種架構(gòu)上,在處理存儲(chǔ)轉(zhuǎn)發(fā)案例時(shí)跨越pages邊界都非常昂貴。它比 Zen 1 和 Zen 2 還要貴,最好避免使用。

在大多數(shù)情況下,Golden Cove 的存儲(chǔ)轉(zhuǎn)發(fā)延遲比 Zen 4 略低,除非加載和存儲(chǔ)都跨越 64B 緩存線邊界。對(duì)于精確地址匹配的情況,Golden Cove 享有吞吐量?jī)?yōu)勢(shì)而不是延遲優(yōu)勢(shì)。使用四個(gè) AGU,Golden Cove 可以為每個(gè)周期的兩個(gè)加載和兩個(gè)存儲(chǔ)生成地址。

對(duì)于更常見的非重疊負(fù)載,Golden Cove 繼續(xù)具有優(yōu)勢(shì),因?yàn)?L1D 以更大的塊訪問,并且將遭受更少的未對(duì)齊訪問。我們喜歡將內(nèi)存訪問視為可字節(jié)尋址(byte addressable)且完全隨機(jī)的。但在實(shí)踐中,緩存是在更大的、對(duì)齊的塊中尋址的。這里的“對(duì)齊”意味著內(nèi)存地址是特定大小的倍數(shù)。例如,32 字節(jié)對(duì)齊的內(nèi)存地址的低 5 位將為零?!拔磳?duì)齊”訪問跨越對(duì)齊邊界,迫使加載/存儲(chǔ)單元進(jìn)行兩次 L1D 查找以滿足請(qǐng)求。

de4a95b0-63b1-11ed-8abf-dac502259ad0.png

Golden Cove 的 L1D 以 64 字節(jié)、緩存線大小的塊處理加載和存儲(chǔ)。相比之下,AMD 的 L1D 以 32 字節(jié)塊的形式處理寫入,從 Zen 2 開始??缭?Zen 4 上的兩個(gè) 32B 塊或 Golden Cove 上的 64B 塊之間邊界的寫入需要兩個(gè)周期才能完成。Zen 4 比 Zen 3 有所改進(jìn),后者可能需要 5 個(gè)周期來處理這種未對(duì)齊的負(fù)載,并且如果存儲(chǔ)也是 4B 對(duì)齊的,則只能獲得 2 個(gè)周期的情況。Golden Cove、Zen 3 和 Zen 4 也發(fā)現(xiàn)超過 64B 邊界的負(fù)載吞吐量降低,但這種情況處理得更好,因?yàn)樨?fù)載吞吐量首先更高。

跨越 4 KB 邊界的訪問會(huì)帶來更多復(fù)雜性,因?yàn)樘摂M地址到物理地址的轉(zhuǎn)換通常在 4 KB pages中處理。處理這樣的訪問也需要訪問兩個(gè) TLB 條目。所有 Zen 世代都比常規(guī)的未對(duì)齊負(fù)載情況更容易處理這種情況,這表明他們的 TLB 可以在每個(gè)周期服務(wù)多個(gè)查找。在處理跨越 4K 邊界的負(fù)載時(shí),英特爾的 Golden Cove 和 Ice Lake 架構(gòu)確實(shí)會(huì)產(chǎn)生輕微的損失。

de6e868c-63b1-11ed-8abf-dac502259ad0.png

在所有經(jīng)過測(cè)試的架構(gòu)中,寫入都會(huì)帶來巨大的損失。即使與前幾代 Zen 相比,它們對(duì) Zen 4 的關(guān)注度也很高。我想知道 AMD 是否發(fā)現(xiàn)分頁訪問非常罕見,以至于可以接受更高的懲罰來換取更高的時(shí)鐘速度。

緩存和內(nèi)存性能

在過去的三十年里,計(jì)算能力一直在穩(wěn)步超過內(nèi)存性能。作為響應(yīng),CPU 使用越來越復(fù)雜的緩存設(shè)置來不斷提高性能。英特爾和 AMD 的高性能內(nèi)核已采用三級(jí)緩存方案。每個(gè)內(nèi)核都有一個(gè)小型 L1 緩存和一個(gè)中等大小的 L2 緩存,以使其免受 L3 延遲的影響。L3 緩存大小為數(shù)兆字節(jié),并在一組內(nèi)核之間共享。

一、2 MB Pages的延遲

讓我們從測(cè)試2 MB Pages的內(nèi)存延遲開始,從單核的角度了解緩存層次結(jié)構(gòu)。使用 2 MB Pages并不能代表大多數(shù)應(yīng)用程序?qū)⑷绾卧L問內(nèi)存,但它確實(shí)更有效地利用了 TLB 容量,并且讓我們分別查看緩存延遲和 TLB 損失。

Zen 4 的緩存與 Zen 3 非常相似。最大的變化是將 L2 大小翻倍至 1 MB,代價(jià)是 2 個(gè)周期的延遲。這反過來也將 L3 延遲推高了兩個(gè)周期。

de9fe4a2-63b1-11ed-8abf-dac502259ad0.png

英特爾的 Golden Cove 在所有緩存級(jí)別都有更高的延遲,盡管英特爾的核心私有緩存稍大一些。Golden Cove 的 L1D 有 5 個(gè)延遲周期,或者比 Zen 4 的 4 個(gè)周期多一個(gè)周期。一個(gè)周期可能看起來不多,但這代表著比 AMD 增加了 25% 的延遲,并且 L1D 緩存將位于所有內(nèi)存訪問的路徑中。L2 的延遲差異較小,其中 Intel 的 1280 KB 緩存與 AMD 的 1024 KB 的延遲為 15 個(gè)周期,為 14 個(gè)周期。L2 將看到比 L1 少得多的訪問,這里 1 個(gè)周期的差異是一個(gè)小得多的差異百分比明智。

在 L3 中,延遲存在巨大差異。英特爾不會(huì)在核心時(shí)鐘上運(yùn)行環(huán),而是有一個(gè)更長的環(huán),為兩個(gè) E-Core 集群和一個(gè) iGPU 提供服務(wù)。Golden Cove 從其 L3 獲取數(shù)據(jù)的周期比 Zen 3 和 Zen 4 多近 20 個(gè)周期。因此,英特爾使用更大的 L2 來保護(hù)內(nèi)核免受 L3 延遲的影響,并賦予 Golden Cove 巨大的重新排序能力以隱藏 L3 延遲。

debf68b8-63b1-11ed-8abf-dac502259ad0.png

如果我們看看真正的延遲,Zen 4 的 5.7 GHz 非常高的時(shí)鐘速度就會(huì)發(fā)揮作用。我們看到 L1D 延遲極低,僅為 0.7 ns。L1D hitrate通常超過 80-90%,因此大多數(shù)內(nèi)存訪問將享受這種非常低的延遲。AMD 的新 L2 同樣令人印象深刻。Zen 4 的時(shí)鐘速度提高意味著其 L2 的延遲比前幾代 Zen 的 L2 略低。

最后,AMD 將 Zen 4 的 L3 延遲降至 8-9 ns 范圍。Zen 3 通過在 8 個(gè)內(nèi)核和 8 個(gè) L3 片上統(tǒng)一 L3 緩存,增加了單個(gè)內(nèi)核可訪問的 L3 數(shù)量,但這樣做會(huì)產(chǎn)生延遲損失。隨著 Zen 4 的時(shí)鐘速度,L3 延遲恢復(fù)到 Zen 2 的水平,但容量增加了一倍。Zen 4 的 L3 延遲也領(lǐng)先于 Zen 3 的 V-Cache 延遲。然而,Zen 3 的 V-Cache 變體在緩存容量方面擁有 3 倍的優(yōu)勢(shì)。

在內(nèi)存中,我們看到 1 GB test size的合理延遲為 73.35 ns。我們不會(huì)過多關(guān)注這一點(diǎn),因?yàn)閮?nèi)存延遲高度依賴于用戶與 CPU 配對(duì)的特定 DDR 設(shè)置,而且我們測(cè)試的分布式特性意味著即使平臺(tái)支持相同的內(nèi)存也無法匹配內(nèi)存設(shè)置類型。我們的 Ryzen 7950X 測(cè)試臺(tái)使用 DDR5-6000 設(shè)置,與使用 JEDEC DDR5-4800 的 i7-12700K Golden Cove 結(jié)果相比,它具有更好的內(nèi)存延遲。反過來,我的個(gè)人 Ryzen 3950X 使用 DDR4-3333 16-18-18-38 在 72.76 ns 時(shí)實(shí)現(xiàn)了稍低的延遲。在延遲方面,沒有什么不尋常的。

二、4 KB Pages的延遲

雖然 2 MB pages有助于有效地使用 TLB 容量,但大多數(shù)應(yīng)用程序使用 4 KB pages來減少碎片和浪費(fèi)的內(nèi)存。例如,如果您正在緩沖大小小于 2 KB 的數(shù)據(jù)包,或者緩存一個(gè)小文件,則將內(nèi)存映射為 2 MB 塊可能會(huì)非常浪費(fèi)。但是以 4 KB 的粒度跟蹤地址轉(zhuǎn)換會(huì)給 TLB 容量帶來更大的壓力。為了提高性能,Zen 4 將 L1 DTLB 的大小從 64 個(gè)條目增加到 72 個(gè)。L2 TLB 的條目數(shù)從 2048 個(gè)增加到 3072 個(gè)。因此 Zen 4 能夠緩存 288 KB 內(nèi)存的地址轉(zhuǎn)換而沒有延遲開銷,或者12 MB,有輕微的 7-8 個(gè)周期損失。

dedec38e-63b1-11ed-8abf-dac502259ad0.png

與 Zen 3 和 Zen 2 一樣,英特爾的 Golden Cove 也有一個(gè) 2048 入口的 L2 TLB。因此,Zen 4 在更大的測(cè)試規(guī)模下具有更大的延遲優(yōu)勢(shì)。如果我們使用 4 KB pages訪問 Zen 4、Zen 3 和 Golden Cove 上的 L3 緩存但不超過 L2 TLB 容量,我們會(huì)看到延遲分別約為 9.47 ns、10.44 ns 和 13.72 ns。Zen 4 和 Zen 3 都已經(jīng)大大領(lǐng)先于 Golden Cove,但我們主要在這里看到了原始 L3 延遲的差異。

deff24e4-63b1-11ed-8abf-dac502259ad0.png

在 12 MB 或更大的測(cè)試大小時(shí),我們開始看到 Zen 4 更大的 L2 TLB 開始發(fā)揮作用。Zen 3 和 Golden Cove 都必須開始進(jìn)行page walks,因?yàn)樵L問會(huì)溢出 L2 TLB,這可能會(huì)導(dǎo)致多達(dá) 4 次額外的內(nèi)存訪問來計(jì)算物理地址。這三種架構(gòu)在它們的page walkers中都有單獨(dú)的page directory caches,這些緩存在更高級(jí)別的分頁結(jié)構(gòu)中緩存條目,因此它們可能不會(huì)在幾乎不會(huì)溢出 L2 TLB 的測(cè)試大小下進(jìn)行太多額外的訪問。

盡管如此,即使是快速的page walk 也比直接從 L2 TLB 中獲取翻譯更糟糕,因此區(qū)別很明顯。Zen 3 的 L3 延遲在 12 MB 測(cè)試大小時(shí)上升到 12 ns 以上,而 Zen 4 保持在略低于 10 ns。Golden Cove 遭受的損失更大,延遲超過 15 ns,盡管我們?nèi)匀辉?12700K 的 25 MB L3 容量范圍內(nèi)。

因此,AMD 在改善緩存訪問延遲方面做得非常出色,而標(biāo)題周期計(jì)數(shù)數(shù)字并未完全捕捉到這一點(diǎn)。Zen 4 更高的時(shí)鐘速度意味著 L1 和 L3 緩存的實(shí)際延遲得到了改善,而 L2 緩存的容量翻了一番,延遲回歸極小(7950X 為 2.44 ns,5950X 為 2.4 ns)。通過減少典型應(yīng)用程序的虛擬到物理地址轉(zhuǎn)換開銷,改進(jìn)的 TLB 容量進(jìn)一步改善了實(shí)踐中的延遲。所有這些結(jié)合在一起,使 Zen 4 在所有緩存級(jí)別上都比 Golden Cove 具有顯著的延遲優(yōu)勢(shì)。

帶寬,單核

雖然內(nèi)存訪問延遲很重要,但帶寬也很重要。矢量化代碼可能特別需要內(nèi)存帶寬。盡管增加了對(duì) AVX-512 的支持,AMD 并沒有對(duì)核心私有緩存進(jìn)行重大調(diào)整。每個(gè)周期的負(fù)載帶寬與 Zen 3 和 Zen 2 相似。Zen 4 更大的 L2 是一個(gè)受歡迎的補(bǔ)充,因?yàn)樗鼞?yīng)該減少對(duì)共享 L3 的帶寬需求。但 L1 和 L2 帶寬的改進(jìn)歸結(jié)為 Zen 4 的時(shí)鐘速度提高。

Zen 4 的單核 L3 帶寬有所改善,平均每周期 27 字節(jié),而 Zen 3 的每周期 24 字節(jié)。這非常接近從每個(gè)內(nèi)核到 L3 的接口的理論帶寬。AMD 可能已經(jīng)增加了 L2 和 L3 之間的隊(duì)列大小,以至于它幾乎大到足以完全吸收 L3 延遲。

df2505c4-63b1-11ed-8abf-dac502259ad0.png

使用了不同的內(nèi)存設(shè)置,所以不要比較 DRAM 帶寬。TGL數(shù)據(jù)由cha0s提供,Golden Cove AVX-512數(shù)據(jù)來自CapFrameX

英特爾非常重視矢量性能,這表明了這一點(diǎn)。Golden Cove 的核心私有緩存可以提供出色的帶寬,L1D 每個(gè)周期處理三個(gè) 256 位負(fù)載,或每個(gè)周期兩個(gè) 512 位負(fù)載。后者僅適用于 AVX-512,但即使使用 AVX,Golden Cove 也擁有顯著的 L1D 帶寬優(yōu)勢(shì)。這一優(yōu)勢(shì)在 L2 中仍然存在,英特爾在 L1D 和 L2 之間有一個(gè)每周期 64 字節(jié)的接口。使用 AVX-512,Golden Cove 在 L2 大小的區(qū)域中比 Zen 4 具有驚人的 40% 帶寬優(yōu)勢(shì)。AMD 無法達(dá)到與 AVX 相同的性能水平,因?yàn)長1D 沒有足夠的端口來處理來自 L2 的填充請(qǐng)求并同時(shí)向內(nèi)核提供全帶寬。盡管如此,Golden Cove 仍然可以僅用 AVX 擊敗 Zen 4。

L3 的情況發(fā)生了逆轉(zhuǎn),AMD 出色的 L3 設(shè)計(jì)可以提供幾乎與 L2 一樣多的帶寬。相比之下,英特爾的帶寬下降了。Golden Cove 從 L3 平均每個(gè)周期僅 20 字節(jié),沒有來自其他內(nèi)核的爭(zhēng)用。

當(dāng)測(cè)試大小溢出到 DRAM 中時(shí),Zen 4 保持非常高的每核帶寬。這表明每個(gè) Zen 4 內(nèi)核都能夠跟蹤大量未決的 L3 misses,或者更具體地說,L2 misses。AMD 僅使用從 L2 驅(qū)逐的行(因此稱為“victim cache”)填充其 L3 緩存,這意味著它不會(huì)預(yù)取到 L3。這使得 Zen 4 的 L2 成為能夠生成預(yù)取請(qǐng)求的最后一個(gè)緩存級(jí)別。通過能夠根據(jù)從 L1 misses中看到的訪問模式生成對(duì) L3 及更高級(jí)別的請(qǐng)求,L2 可以在其級(jí)別上利用更多可用的內(nèi)存級(jí)別并行性,而不受 L1 misses生成的內(nèi)存級(jí)別并行性的限制。

我們甚至可以使用 Little 定律估計(jì) L2 misses隊(duì)列的大?。?/p>

df3ff2a8-63b1-11ed-8abf-dac502259ad0.png

顯然,這個(gè)計(jì)算并不完美,因?yàn)槲覀儨y(cè)試了 4 KB pages到非常大的測(cè)試大小,并且沒有嘗試估計(jì)pages walk會(huì)導(dǎo)致對(duì) L3 及更高級(jí)別的請(qǐng)求的頻率。但它確實(shí)表明 Zen 4 在 L2 有更積極的預(yù)取,在 L2 和 L3 之間有更深的隊(duì)列,或兩者兼而有之。

多線程帶寬

加載所有線程后,Zen 4 實(shí)現(xiàn)了非常高的總帶寬。這主要是因?yàn)樗軌虮3殖^ 4.8 GHz 的非常高的時(shí)鐘速度,從實(shí)現(xiàn)的 L1D 帶寬來看。由于 Zen 4 緩存層次結(jié)構(gòu)的所有級(jí)別都以核心時(shí)鐘運(yùn)行,或者至少以集群中最快核心的速度運(yùn)行,7950X 還享有增加的 L2 和 L3 帶寬,即使每個(gè)緩存級(jí)別之間的總線寬度沒有在禪宗世代之間發(fā)生了變化。

df54291c-63b1-11ed-8abf-dac502259ad0.png

英特爾的 Alder Lake 與前幾代 AMD 16 核臺(tái)式機(jī) CPU 具有競(jìng)爭(zhēng)力。AMD 有更多的“大”核心,但 Golden Cove 有更寬的總線連接到它的 L1D 和 L2 緩存。但是 Zen 4 更高的時(shí)鐘改變了這一點(diǎn)。如果 AVX-512 正在運(yùn)行,Alder Lake 只能匹配 AMD 的 L1D 帶寬,但該功能當(dāng)然沒有啟用。無論有沒有 AVX-512,Alder Lake 都無法匹敵 Zen 4 的 L2 帶寬。

通過將 L3 拆分為集群,AMD 犧牲了一些緩存容量效率,使帶寬和延遲問題更容易解決。在過去的幾代 Zen 中,AMD 在 L3 性能上比 Intel 擁有了巨大的優(yōu)勢(shì)。Zen 4 進(jìn)一步擴(kuò)展了這一點(diǎn)。

內(nèi)存帶寬

Zen 4 也遷移到 DDR5,這極大地增加了內(nèi)存子系統(tǒng)的理論帶寬。我們看到使用配備 DDR4-3600 的 5950X 的讀取帶寬略高于 50 GB/s,或略高于理論 DRAM 帶寬的 88%。我們配備 DDR5-6000 的 7950X 平臺(tái)在相同的 3 GB 測(cè)試大小下實(shí)現(xiàn)了 72.85 GB/s。一方面,內(nèi)存帶寬顯著增加了 43%。另一方面,Zen 4 實(shí)際上發(fā)現(xiàn)內(nèi)存帶寬效率有所下降。128 位 DDR5-6000 總線理論上可以達(dá)到 96 GB/s,而我們只達(dá)到了 76%。

一種理論是 Zen 4 的 DRAM 帶寬受到內(nèi)存控制器和結(jié)構(gòu)之間的鏈接的限制。AMD 的圖表顯示,鏈路在兩個(gè)方向上每個(gè)周期寬 32 字節(jié)。

df739270-63b1-11ed-8abf-dac502259ad0.jpg

然而,這不太可能。我們測(cè)試中的 FCLK 設(shè)置為 2000 MHz。在 2000 MHz 下,每個(gè)周期 32 字節(jié)可以達(dá)到 64 GB/s,這遠(yuǎn)低于我們能夠達(dá)到的水平。UCLK 以 3000 MHz 運(yùn)行,或 DDR 傳輸速率的一半。3000 MHz 時(shí)每個(gè)周期 32 字節(jié)意味著可以在任一方向上實(shí)現(xiàn)完整的 DDR 帶寬。這并不排除 Infinity Fabric 和內(nèi)存控制器之間鏈路的帶寬限制,但它確實(shí)表明與結(jié)構(gòu)的鏈路比 AMD 圖表所暗示的要寬。

另一個(gè)相關(guān)理論是,如果我們以 1:1 的比例混合讀取和寫入,可以提高帶寬,因?yàn)殒溌房梢栽诿總€(gè)方向上傳輸 32 個(gè)字節(jié)。然而,混合讀取和寫入在 DRAM 級(jí)別引入了不同的問題。與高速緩存鏈接不同,DRAM 總線不是雙向的,必須在讀取和寫入模式之間顯式切換。這些開關(guān)不是空閑的,并且會(huì)強(qiáng)制內(nèi)存總線空閑多個(gè)周期,從而減少實(shí)現(xiàn)的帶寬。因此,當(dāng)使用混合讀取和寫入的訪問模式時(shí),我們沒有看到顯著的帶寬增加。

df9cae62-63b1-11ed-8abf-dac502259ad0.png

使用各種訪問模式和 128 位 DDR5-6000 設(shè)置實(shí)現(xiàn)的內(nèi)存帶寬。“添加”和“復(fù)制”測(cè)試使用 1:1 的讀取和寫入混合。

使用讀-修改-寫訪問模式,我們看到帶寬增加了 1%,這幾乎不值得討論。寫入模式實(shí)際上也是讀取和寫入的 1:1 混合,因?yàn)槊總€(gè)寫入操作(特殊情況除外)也需要讀取緩存線。這是因?yàn)橹噶羁赡苤恍薷牧瞬糠志彺婢€,而 CPU 需要將寫入與現(xiàn)有緩存線內(nèi)容合并。這種讀取被稱為“所有權(quán)讀取”或 RFO,因?yàn)檫@意味著讀取核心擁有緩存線,并保證沒有其他人可以寫入它。如果我們將 36.86 GB/s 的寫入帶寬乘以 2 來考慮這一點(diǎn),我們得到 73.72 GB/s,這與純讀取帶寬并沒有太大區(qū)別。

其他訪問模式出現(xiàn)顯著下降,包括使用 REP MOVSB 的復(fù)制模式。該測(cè)試使用微編碼字符串復(fù)制指令,該指令準(zhǔn)確告訴 CPU 它需要移動(dòng)多少數(shù)據(jù),從而避免 RFO。因此,它還具有 1:1 的讀取和寫入混合。

我們確實(shí)看到了一些證據(jù)表明寫入帶寬可能受到 CCD 和 IO 芯片之間的鏈接的限制。AMD 的圖表顯示這些鏈接每個(gè)周期寬 16 個(gè)字節(jié)。在兩個(gè) CCD 上,在 2000 MHz FCLK 下的速度可達(dá) 64 GB/s。通過避免 RFO 的特殊寫入指令,我們可以非常接近 64 GB/s,但不會(huì)更高。REP STOSB 指令預(yù)先告訴 CPU 將多少數(shù)據(jù)設(shè)置為特定值,讓它在知道整個(gè)緩存行將被覆蓋時(shí)避免 RFO。非臨時(shí)寫入(使用 MOVNTPS)使用寫入組合內(nèi)存協(xié)議,該協(xié)議也避免了 RFO,并繞過緩存。兩種方法都達(dá)到理論 CCD 到 IO 芯片寫入帶寬的 1% 以內(nèi)。在大多數(shù)應(yīng)用程序中,這不太可能成為限制,其中內(nèi)存讀取遠(yuǎn)遠(yuǎn)超過內(nèi)存寫入。

就 Zen 4 的讀取內(nèi)存帶寬而言,不太可能存在結(jié)構(gòu)帶寬限制。取而代之的是,新的 DDR5 內(nèi)存控制器在提取帶寬的最后一點(diǎn)方面似乎不如舊的 DDR4 有效。也許它也不是調(diào)度請(qǐng)求,而是更多地進(jìn)入次要時(shí)間。但總體而言,得益于 DDR5 內(nèi)存,Zen 4 與前幾代 Zen 相比具有顯著的帶寬優(yōu)勢(shì)。AMD 的 16 核臺(tái)式機(jī) Ryzen 芯片可能會(huì)受到內(nèi)存帶寬的限制,如果給定線程良好的矢量化負(fù)載。即使有合理的緩存命中率,16 核也可以消耗大量帶寬,因此 DDR5 的帶寬提升值得贊賞。甚至 DDR5 帶寬也不足以支持 16 個(gè)內(nèi)核,因此 AMD 繼續(xù)依靠有效的緩存來保持線程良好的工作負(fù)載的性能優(yōu)勢(shì)。

結(jié)論

顧名思義,Zen 4 是 AMD Zen 架構(gòu)系列的第四款。與 Zen 2 一樣,Zen 4 將架構(gòu)更改與改進(jìn)的制程節(jié)點(diǎn)相結(jié)合,以提供代際性能提升。同時(shí),AMD 在嘗試過渡到新工藝節(jié)點(diǎn)時(shí)通過避免更劇烈的變化來降低風(fēng)險(xiǎn)。因此,在很多領(lǐng)域看到類似的變化也就不足為奇了,特別是在緩存和寄存器文件方面,提高密度使得更大的容量變得可行。

dfb010e2-63b1-11ed-8abf-dac502259ad0.png

dfd9ce96-63b1-11ed-8abf-dac502259ad0.png

但是,Zen 4 確實(shí)跳過了某些領(lǐng)域,尤其是在涉及向量執(zhí)行的方面。與 Zen 3 甚至 Zen 2 相比,Zen 4 并沒有增加原生向量執(zhí)行寬度,也沒有提升最大 L1D 帶寬。Zen 2 還對(duì) Zen 1 進(jìn)行了較小的執(zhí)行和調(diào)度更改,而 Zen 4 保留了 Zen 3 的配置。結(jié)果是聲稱 IPC 增加了 13%。與前兩代禪宗相比,這似乎令人印象深刻。但 13% 與Ivy Bridge 和 Haswell之間的增幅相當(dāng),Anandtech 將其定為 11.2%。我們還必須在上下文中考慮每時(shí)鐘性能隨時(shí)鐘速度的增加。

e00154a2-63b1-11ed-8abf-dac502259ad0.png

性能提升絕不僅僅是 IPC 的提升,因?yàn)闀r(shí)鐘速度也很重要。性能通常隨著時(shí)鐘速度的增加幾乎呈線性增長,前提是您的緩存性能足夠好,可以避免 DRAM 瓶頸。如果您可以在將某些結(jié)構(gòu)大小增加 5% 或?qū)?nèi)核時(shí)鐘頻率提高 5% 之間做出選擇,則幾乎可以保證通過選擇后一個(gè)選項(xiàng)獲得更高的整體性能。AMD 的工程師可能避免加強(qiáng)某些結(jié)構(gòu),例如調(diào)度程序和存儲(chǔ)隊(duì)列,而是支持讓內(nèi)核時(shí)鐘頻率更高。Zen 4 的時(shí)鐘頻率確實(shí)更高,幅度很大。最終結(jié)果是整體性能改進(jìn)應(yīng)該與我們從前幾代 Zen 獲得的一致。Zen 4 將這種時(shí)鐘速度優(yōu)勢(shì)帶到了多線程工作負(fù)載中。每一代 Zen 都提供了強(qiáng)大的全核性能,Zen 4 也不例外。英特爾還對(duì) Raptor Lake 采取了類似的策略,避免了重大的架構(gòu)變化。取而代之的是,使用 Thermal Velocity Boost 將最大時(shí)鐘推至 5.8 GHz,或使用常規(guī) Turbo Boost 3.0 將最大時(shí)鐘推至 5.7 GHz。

在大量工作負(fù)載中平均 IPC 也掩蓋了 Zen 4 的 AVX-512 優(yōu)勢(shì)。使用 AVX-512 的程序可以用更少的指令完成相同數(shù)量的工作,從而實(shí)現(xiàn)更低的 IPC,但更高的每時(shí)鐘性能。我假設(shè)當(dāng) AMD 說 IPC 時(shí),它們的意思是每時(shí)鐘的性能,而不是每時(shí)鐘的具體指令。在可以利用 AVX-512 的特定工作負(fù)載中,我預(yù)計(jì) Zen 4 比 Zen 3 有很大的優(yōu)勢(shì)。如果使用 512 位向量,即使調(diào)度程序隊(duì)列的大小保持不變,Zen 4 也會(huì)有更有效的調(diào)度能力同樣,因?yàn)槊總€(gè)調(diào)度程序條目將跟蹤 512 位的工作。即使不使用更長的向量,AVX-512 也提供了新的指令,再次讓 CPU 用更少的指令完成相同數(shù)量的工作。

Zen 4 的其他變化同樣側(cè)重于更好地利用現(xiàn)有的執(zhí)行能力。從 Zen 2 到 Zen 4,每個(gè)周期的原始執(zhí)行吞吐量并沒有真正改變,緩存帶寬也沒有增加。這是因?yàn)?AMD 在前幾代產(chǎn)品中已經(jīng)擁有大量的原始吞吐量,并且穩(wěn)態(tài)執(zhí)行吞吐量并不是大多數(shù)應(yīng)用程序的瓶頸。

e01a9d68-63b1-11ed-8abf-dac502259ad0.png

執(zhí)行單元容量不是 libx264 的瓶頸,即使在峰值時(shí)(FP 調(diào)度程序填滿的停頓很少),但 ROB 和整數(shù)寄存器確實(shí)填滿并導(dǎo)致后端停頓

因此,Zen 4 提高了重新排序能力,以幫助吸收對(duì)執(zhí)行單元的需求激增。改進(jìn)的分支預(yù)測(cè)通過減少工作浪費(fèi),有助于更好地利用重新排序容量和執(zhí)行單元吞吐量。Zen 4 還嘗試通過切換到 DDR5 來更好地為執(zhí)行單元提供服務(wù),這提供了比 DDR4 更大的帶寬提升。同時(shí),AMD 賦予了每個(gè)核心更多的內(nèi)存級(jí)并行能力。單核可實(shí)現(xiàn)的 DRAM 帶寬量增加到超過 57 GB/s,表明非常深的緩沖區(qū)可以跟蹤未決緩存misses。這些深緩沖區(qū)有助于吸收對(duì)高速緩存和內(nèi)存帶寬的需求峰值。另一方面,Zen 4 更大的 L2 TLB 和 L2 緩存有助于減少訪問內(nèi)存的指令的平均延遲。英特爾也采取了類似的策略Raptor Lake,其中 P 核 L2 大小從 1.25 MB 增加到 2 MB,代價(jià)是僅僅一個(gè)延遲周期。

Zen 4 還旨在提高前端寬度利用率,而不是讓一切變得更寬。Zen 3 已經(jīng)有一個(gè)非??焖俚姆种ьA(yù)測(cè)器,但 Zen 4 更進(jìn)一步。具有更高命中率的更大 L1 BTB 意味著前端在執(zhí)行分支后空閑的周期更少,從而提高了前端寬度利用率。與前幾代 Zen 和許多英特爾架構(gòu)一樣,Zen 4 在renamer上最窄,仍然是 6 寬。我猜 AMD 發(fā)現(xiàn)他們可以通過增加時(shí)鐘而不是增加核心寬度來提高性能。重命名器可能是一個(gè)對(duì)時(shí)間非常敏感的電路。進(jìn)入的每條指令都可能需要從寄存器別名表中讀取兩次或多次,并且必須立即反映對(duì)寄存器映射的修改,以便稍后進(jìn)入同一個(gè) 6 寬組內(nèi)的指令。

e02c1994-63b1-11ed-8abf-dac502259ad0.png

您如何真正衡量寬度利用率?

考慮到所有這些,我想知道 AMD 可以從某個(gè)核心寬度和一組執(zhí)行資源中擠出多少。與競(jìng)爭(zhēng)對(duì)手的英特爾內(nèi)核相比,Zen 4 內(nèi)核的某些區(qū)域看起來非常輕巧。例如,向量加載和存儲(chǔ)的 L1D 帶寬只有英特爾使用 AVX-512 可以實(shí)現(xiàn)的一半。即使使用 AVX 限制為 256 位訪問,Golden Cove 仍然可以實(shí)現(xiàn)比 Zen 4 更多的每個(gè)周期的帶寬。當(dāng)然,英特爾無法將 16 個(gè) Golden Cove 內(nèi)核封裝到一個(gè)芯片中并在高時(shí)鐘下運(yùn)行它們。此外,英特爾設(shè)法在 Conroe 和 Skylake 之間以荒謬的數(shù)量增加了 IPC,盡管這兩種架構(gòu)(以及介于兩者之間的所有架構(gòu))都是 4 寬。我期待看到 AMD 和英特爾在后續(xù)將帶來怎樣的產(chǎn)品。

審核編輯:郭婷

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • amd
    amd
    +關(guān)注

    關(guān)注

    25

    文章

    5586

    瀏覽量

    136332
  • 英特爾
    +關(guān)注

    關(guān)注

    61

    文章

    10195

    瀏覽量

    174666

原文標(biāo)題:萬字詳解AMD ZEN 4架構(gòu)

文章出處:【微信號(hào):ZYNQ,微信公眾號(hào):ZYNQ】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    瑞薩365 深度解讀

    技術(shù)架構(gòu)、核心功能、行業(yè)影響及未來展望四個(gè)維度進(jìn)行深度解讀: 一、技術(shù)架構(gòu):融合硬件與設(shè)計(jì)軟件的跨領(lǐng)域協(xié)作平臺(tái) 瑞薩365基于Altium 365云平臺(tái)構(gòu)建,整合了瑞薩的半導(dǎo)體產(chǎn)品組合
    的頭像 發(fā)表于 06-06 09:58 ?831次閱讀
    瑞薩365 <b class='flag-5'>深度</b><b class='flag-5'>解讀</b>

    ARM Mali GPU 深度解讀

    ARM Mali GPU 深度解讀 ARM Mali 是 Arm 公司面向移動(dòng)設(shè)備、嵌入式系統(tǒng)和基礎(chǔ)設(shè)施市場(chǎng)設(shè)計(jì)的圖形處理器(GPU)IP 核,憑借其異構(gòu)計(jì)算架構(gòu)、能效優(yōu)化和生態(tài)協(xié)同,
    的頭像 發(fā)表于 05-29 10:12 ?1051次閱讀

    Arm 公司面向 PC 市場(chǎng)的 ?Arm Niva? 深度解讀

    面向 PC 市場(chǎng)的 ? Arm Niva ? 深度解讀 ? Arm Niva ? 是 Arm 公司為 PC 市場(chǎng)推出的核心計(jì)算平臺(tái),屬于其“平臺(tái)優(yōu)先”戰(zhàn)略的關(guān)鍵布局。作為 ? Arm 計(jì)算子系統(tǒng)
    的頭像 發(fā)表于 05-29 09:56 ?678次閱讀

    Arm 公司面向移動(dòng)端市場(chǎng)的 ?Arm Lumex? 深度解讀

    面向移動(dòng)端市場(chǎng)的 ? Arm Lumex ? 深度解讀 ? Arm Lumex ? 是 Arm 公司面向移動(dòng)設(shè)備市場(chǎng)推出的新一代計(jì)算平臺(tái),隸屬于其“平臺(tái)優(yōu)先”戰(zhàn)略的核心布局。作為 ? Arm 計(jì)算子系統(tǒng)
    的頭像 發(fā)表于 05-29 09:54 ?1124次閱讀

    Arm 公司面向汽車市場(chǎng)的 ?Arm Zena? 深度解讀

    面向汽車市場(chǎng)的 ? Arm Zena ? 深度解讀 Arm Zena 是 Arm 公司面向智能汽車領(lǐng)域推出的核心計(jì)算平臺(tái),屬于其“平臺(tái)優(yōu)先”戰(zhàn)略的關(guān)鍵布局。作為 Arm 計(jì)算子系統(tǒng)(CSS)在
    的頭像 發(fā)表于 05-29 09:51 ?1356次閱讀

    專訪AMD王啟尚 從RDNA 4到FSR 4,AMD GPU技術(shù)創(chuàng)新引領(lǐng)行業(yè)新發(fā)展

    在近日于珠海舉辦的AMD新一代Radeon RX 9070系列顯卡發(fā)布會(huì)后,AMD GPU技術(shù)與工程研發(fā)副總裁王啟尚接受了我們的專訪。在本次交談中,他詳細(xì)分享了RDNA 4架構(gòu)的設(shè)計(jì)理
    的頭像 發(fā)表于 03-06 11:19 ?406次閱讀
    專訪<b class='flag-5'>AMD</b>王啟尚 從RDNA <b class='flag-5'>4</b>到FSR <b class='flag-5'>4</b>,<b class='flag-5'>AMD</b> GPU技術(shù)創(chuàng)新引領(lǐng)行業(yè)新發(fā)展

    AMD Zen 4處理器悄然禁用循環(huán)緩沖區(qū)

    近日,AMD在更新BIOS后,對(duì)Zen 4架構(gòu)的處理器進(jìn)行了一項(xiàng)未公開說明的更改:禁用了循環(huán)緩沖區(qū)(Loop Buffer)功能。這一變化引發(fā)了業(yè)界和用戶的廣泛關(guān)注。 循環(huán)緩沖區(qū)作為C
    的頭像 發(fā)表于 12-11 13:46 ?540次閱讀

    發(fā)現(xiàn)基于Zen 5架構(gòu)AMD Threadripper “Shimada Peak” 96核和16核CPU

    AMD Threadripper “Shimada Peak” CPU 出現(xiàn)在 NBD 發(fā)貨清單中,揭示了 16 核和 96 核 Zen 5 CPU AMD 尚未推出采用 Zen 5
    的頭像 發(fā)表于 11-28 16:13 ?1034次閱讀
    發(fā)現(xiàn)基于<b class='flag-5'>Zen</b> 5<b class='flag-5'>架構(gòu)</b>的<b class='flag-5'>AMD</b> Threadripper “Shimada Peak” 96核和16核CPU

    前端總線與內(nèi)存頻率怎么配

    前端總線(FSB)與內(nèi)存頻率的配合是確保計(jì)算機(jī)系統(tǒng)穩(wěn)定運(yùn)行并發(fā)揮最佳性能的關(guān)鍵因素之一。以下是對(duì)前端總線與內(nèi)存頻率配合關(guān)系的介紹: 一、
    的頭像 發(fā)表于 10-12 09:10 ?930次閱讀

    技嘉發(fā)布X870E/X870系列主板,專為AMD Ryzen 9000系列處理器設(shè)計(jì)

    全球知名電腦品牌技嘉科技(GIGABYTE)近日正式推出了專為AMD Ryzen? 9000系列處理器設(shè)計(jì)的X870E與X870系列主板。這兩款主板通過尖端的AI科技,能夠充分發(fā)揮AMD新一代Zen 5
    的頭像 發(fā)表于 10-11 17:14 ?1167次閱讀

    前端總線頻率和內(nèi)存的關(guān)系

    前端總線(Front Side Bus,F(xiàn)SB)是計(jì)算機(jī)中處理器與內(nèi)存、北橋芯片之間數(shù)據(jù)傳輸?shù)耐ǖ?。在?jì)算機(jī)系統(tǒng)中,前端總線頻率是衡量數(shù)據(jù)傳輸速率的一個(gè)重要指標(biāo)。
    的頭像 發(fā)表于 10-10 17:14 ?945次閱讀

    iTOP-3562開發(fā)板/核心板采用RK3562,集成四核A53+Mali G52架構(gòu)

    A53+Mali G52架構(gòu),主頻2GHZ,內(nèi)置1TOPSNPU算力,RK809動(dòng)態(tài)調(diào)頻。支持OpenGLES1.1/2.0/3.2、0penCL2.0、Vulkan 1.1內(nèi)嵌高性能2D加速硬件
    發(fā)表于 09-05 11:30

    X86架構(gòu)處理器有哪些優(yōu)點(diǎn)和缺點(diǎn)

    X86架構(gòu)處理器作為計(jì)算機(jī)領(lǐng)域的重要組成部分,具有多個(gè)顯著的優(yōu)點(diǎn)和一定的缺點(diǎn)。以下是對(duì)X86架構(gòu)處理器優(yōu)缺點(diǎn)的詳細(xì)分析。
    的頭像 發(fā)表于 08-22 11:25 ?4783次閱讀

    X86架構(gòu)和ARM架構(gòu)有什么區(qū)別

    X86架構(gòu)和ARM架構(gòu)是兩種主流的CPU架構(gòu),它們?cè)诙鄠€(gè)方面存在顯著的差異。以下是對(duì)這兩種架構(gòu)的詳細(xì)比較,涵蓋了追求目標(biāo)、應(yīng)用領(lǐng)域、技術(shù)特點(diǎn)、性能功耗比、軟件生態(tài)以及未來趨勢(shì)等方面。
    的頭像 發(fā)表于 08-22 11:21 ?1.2w次閱讀

    AMD將推出Zen5架構(gòu)CPU,效能比Zen4快40%

    AMDZen 5 CPU架構(gòu)采用了臺(tái)積電的3納米制程。雖然目前關(guān)于Zen 5 CPU的細(xì)節(jié)尚不清楚,但預(yù)計(jì)將提高性能效率,內(nèi)建人工智能和機(jī)器學(xué)習(xí)優(yōu)化,并重新管道化
    的頭像 發(fā)表于 08-08 14:25 ?981次閱讀