首頁 > 軟體

英特爾和AMD銳龍處理器之間的差異:小晶片與單片

2021-05-23 16:31:21

英特爾和AMD成為兩家主要的處理器公司已有50多年的歷史了。儘管兩者都使用x86 ISA來設計其晶片,但是在過去十年左右的時間裡,它們的CPU採取了完全不同的途徑。

在2000年代中期,隨著Bulldozer晶片的推出,AMD開始在與英特爾的競爭中失利。低IPC和低效率的設計相結合,幾乎使公司紮根。這種情況持續了將近十年。隨著Zen微體系結構的到來,終於在2017年開始翻轉。

新型Ryzen處理器標誌著對AMD CPU方法的完全重新構想,重點是IPC,單執行緒效能,以及最引人注目的是轉向MCM或模組化小晶片設計。同時,英特爾自2011年桑迪·布里奇(Sandy Bridge)到來以來,仍在繼續或多或少地精確地做事。

一切始於遊戲

第一代和第二代Ryzen通過提供比Core i5-7600K之類的部件更多的核心和更多的執行緒,破壞了Intel的中端努力。但是,諸如延遲等硬體方面的問題以及缺乏Ryzen優化的遊戲的綜合意味著,英特爾仍然在遊戲工作負載方面取得了明顯的效能領先。

隨著基於Zen 2的Ryzen 3000 CPU的推出,AMD在遊戲領域的情況開始有所改善,而基於Zen 3的Ryzen 5000 CPU的釋出最終奪得了英特爾的遊戲王牌。IPC的巨大改進意味著AMD能夠提供更多的核心,但在單執行緒工作負載方面也能與Intel相提並論。購買Skylake的refresh-refresh-refresh-refresh不一定能使您獲得更好的幀速率。

AMD和Intel具有(或曾經擁有)根本不同的處理器設計理念。這是一個令人討厭的小學類比,可以幫助您理解差異。還有哪個水果:西瓜或一公斤蘋果?一個非常大的果實。還有另一個,很多小水果。在下一節我們將對此進行深入探討時,您需要牢記這一點。

英特爾單片處理器設計與AMD Ryzen小晶片

英特爾採用所謂的單片方法進行處理器設計。從本質上講,這意味著給定處理器的所有核心,快取和I / O資源實際上都在同一塊微控制器上。這種方法有一些明顯的優點。最值得注意的是減少了延遲。由於所有內容都在同一物理襯底上,因此不同的核心花費更少的時間進行通訊,訪問快取和訪問系統記憶體。延遲減少了。這導致最佳效能。

如果其他所有條件都相同,則整體方法將始終為您帶來最佳效能。但是,這有一個很大的缺點。這是在成本和擴展方面。現在,我們需要快速瀏覽一下矽單產的經濟性。束手無策:事情將會變得有些複雜。

單片CPU提供最佳效能,但價格昂貴,並且…

鑄造廠製造CPU(或與此有關的任何矽片)時,幾乎從未實現100%的良率。成品率是指可用零件的比例。如果您使用的是成熟的工藝節點,例如Intel的14nm +++,那麼您的矽產量將超過70%。這意味著您將獲得許多可用的CPU。但是,相反的情況是,製造的每10個CPU必須丟棄至少2-3個有缺陷的單元。丟棄的部件顯然要花錢,因此成本必須計入最終售價。

在核心數量較少的情況下,單片方法可以很好地工作。這在很大程度上解釋了為何英特爾的主流消費類CPU產品線直到最近才達到4核。但是,當您增加核心數量時,整體方法會導致成倍的成本增加。為什麼是這樣?

在整體式晶片上,每個核心都必須具有功能。如果您要製造八核晶片,並且八核中的七核可以工作,那麼您仍然不能使用它。還記得我們所說的超過70%的收益率嗎?從數學上講,單片晶片上每增加一個核心就有10%的缺陷率疊加,以至於使用20核Xeon,英特爾實際上必須為每一個可用晶片丟掉一兩個缺陷晶片,因為所有20個核心必須起作用。成本不僅隨核心數量線性增加,而且由於浪費而成倍增加。

此外,當擴展您的14nm產能時,新成立的工廠將不會具有與現有工廠相同水平的處理器產量。這已經導致了英特爾的處理器短缺以及隨之而來的F系列CPU。

所有這一切的結果是,英特爾的流程在低核心數時具有價格和效能競爭力,但在高核心數時難以成立,除非它們以微薄的利潤或虧損出售。對於他們而言,製造雙核和四核處理器的成本可以說比AMD運送Ryzen 3 SKU的製造商便宜。我們將瞭解為什麼現在如此。

晶片,小片和晶片

AMD採用基於小晶片或MCM(多晶片模組)的方法進行處理器設計。在AMD看來,將每個Ryzen CPU看作是多個與Superglue-Infinity Fabric粘在一起的分立處理器是有道理的。

一臺Ryzen CCX具有4核/ 8核處理器以及其L3快取。將兩個CCX(帶有Zen 3的單8核CCX)貼上在CCD上以創建小晶片,這是基於Zen的Ryzen和Epyc CPU的基本構建塊。一個MCM(多晶片模組)上最多可以堆疊8個CCD,從而在Threadripper 3990X等消費類Ryzen處理器中最多可以容納64個核心。

這種方法有兩個很大的優點。對於初學者來說,成本或多或少隨核心數線性增長。由於AMD的浪費率與其相對於最多能夠創建一個功能性4核模組(單個CCX)有關,因此他們不必丟棄大量有缺陷的CPU。第二個優勢來自於它們能夠利用那些有缺陷的CPU本身的能力。英特爾只是將它們淘汰了,而AMD則在每個CCX的基礎上禁用了功能核心,以實現不同的核心數量。

例如,Ryzen 7 5800X和5600X均具有具有八個核心的單個CCD。後者禁用了兩個核心,從而使它具有6個功能核心,而不是8個。自然,這使它可以以比Intel更具有競爭力的價格出售六核部件。

小晶片方法有一個很大的缺點:延遲。每個小晶片都位於單獨的物理基板上。由於物理定律,這意味著Ryzen CPU在通過Infinity Fabric進行通訊時會產生延遲損失。第一代Ryzen最明顯。因此,Infinity Fabric速度與記憶體時鐘和記憶體超頻相關,從而顯著提高了CPU效能。

AMD設法用Ryzen 3000 CPU進行了糾正,然後通過新推出的Ryzen 5000系列進一步改進了它。前者引入了一個大型的L3快取緩衝區,稱為「遊戲快取」。L3快取是系統記憶體和低階CPU核心快取(L1和L2)之間的中介。通常,消費類處理器的L3數量很少-例如,英特爾的i7 9700K僅具有12 MB的L3。但是,AMD將3700X與32 MB的L3配對,並將3900X與64 MB的L3配對。

L3快取記憶體在不同核心之間平均分配。快取記憶體數量的增加意味著,通過進行一些智慧排程,核心可以快取更多所需資源。該緩衝區消除了因Infinity Fabric引起的大部分延遲損失。

Ryzen 5000 CPU領先一步,淘汰了四個核心CCX,取而代之的是八個核心複合體,每個核心在CCX / CCD上彼此直接連線。這改善了核心間延遲,快取延遲和頻寬,併為每個核心提供了兩倍的三級快取,從而顯著提高了遊戲效能。

小晶片或單片晶片:哪個更好?

未來幾年,AMD和Intel都將在CPU和GPU上廣泛採用小晶片方法。這是因為摩爾定律已全面放慢了,該定律要求將處理能力提高一倍,這主要是由於晶片縮小(56nm至28nm> 28nm至14nm> 14nm至7nm)導致的。英特爾已經在14nm節點上停留了超過五年的時間,甚至現在,經過6-7年的發展,後續的10nm節點的速度(和密度)也沒有以前的14nm工藝節點的兩倍(並且密度更高)。

具有諷刺意味的是,英特爾已經為大多數未來處理器採用了晶片設計。Ponte Vecchio資料中心GPU,Xe HP GPU和Meteor Lake都將利用小晶片,唯一的區別在於名稱。英特爾稱它們為圖塊。

#英特爾#


IT145.com E-mail:sddin#qq.com