硬科技:回顧AMD Zen微架構和EPYC (上)

2018.02.15 01:08PM
1445

2017真的是AMD在x86處理器市場谷底反彈、鹹魚翻身、重返農藥... 呃,榮耀的關鍵一年,在Hot Chips議程中也留下了邁向復興之路的足跡,尤其重返高獲利的伺服器市場,更是重中之重。

  • 2016年:”A New x86 Core Architecture For The Next Generation Of Computing”
  • 揭露「Zen」微架構的技術細節,AMD總算從推土機家族「走音工地秀」的惡夢中醒來了。

  • 2017年:”The Next Generation AMD Enterprise Server Product Architecture”
  • 公開「x86處理器發展史上首款多路伺服器導向系統單晶片」EPYC平台架構的概觀,包含為何基於降低成本的考量,採用多晶片封裝。

相信各位科科早已從近一年來的諸多新聞與媒體評測,對Zen微架構的規格概要、性能表現、與EPYC成功搶灘大型資料中心客戶等,有了不太模糊的初步印象,反正就事隔多年,AMD終於可以再度跟Intel平起平坐正面互毆就對了,但科科之所以是科科,就是因為科科總會獨享一般科技文青無從知曉並難以理解的奧義與藏在內幕不為人知的八卦,所以你才會爬文爬到這裡。

從Intel延燒到AMD的路線之爭

嗯,查詢LinkedIn,某位處理器業界大老正在NVIDIA上班。

二十年前,無論Intel和AMD,其x86處理器的發展都擺脫不了兩個爭議環節,甚至引爆公司內部足以迫使高層下台的政治地雷:

  • 64位元x86指令集,最早源自於Intel的「Yamhill」計畫,但後來被AMD後發先至。
  • 追求超高時脈的深度指令管線,與同時多執行緒 (SMT) 架構,Intel Pentium 4「NetBurst」微架構是第一槍。

早在1994年Intel研發P6微架構的後期,其五位架構設計師中的其中一位,就曾企圖說服Intel x86架構的技術長、也是後來Intel技術長、現任VMware執行長的Pat Gelsinger,將64位元x86指令集納入Pentium Pro的後期發展計畫。

但當時Intel正積極的推動全新的64位元VLIW指令集IA-64 (今日已經邊緣化的Itanium處理器),政治上根本不可能,這套據信其指令編碼擴充方式近似AVX的「Yamhill」(講的更白一點,AVX根本就是延續Yamhill的遺產),也沒有成為初期NetBurst微架構 (Willamatte、Northwood) 的一部分。

這位架構師後來可能因為奇蒙子不爽,2002年就跳槽到AMD,「參與」幾乎已大勢底定的x86-64指令集制定工作,躬逢其盛AMD奪取史上最大戰略勝利的那一刻。

接著Intel怎麼玩死出師不利的Itanium,微軟如何逼迫Intel相容AMD x86-64並將其正名為x64,Intel急急忙忙在90nm製程的Prescott導入「IA-32e (這名稱的確溢出滿滿的心不甘情不願)」,Intel陸續以「EM64T」和「Intel64」之名,承認其「正統64位元指令集」地位,最後直到微軟也不玩Itanium,過程中還讓多名有力爭奪Intel執行長大位的高階主管陸續離職,就無須浪費篇幅贅述了。

聽說最近連nVdia都要停止32位元驅動程式支援了耶,時間過得真快啊。

Zen = 原始的K10,甚至是K8

但有趣的是,這位跳槽到AMD的處理器架構師,因為其提案的處理器微架構企劃案,被AMD高層否決,大概很不爽吧,2004年又跳回Intel了。

那他理想中的新世代AMD處理器微架構是何種樣貌?答案很簡單,就是現在的EPYC與Ryzen採用的Zen微架構,深度管線結合同時多執行緒 (SMT),和Intel越來越像。

但AMD高層為何沒選擇他的提案?恐怕是「外來的和尚會念經」,世界上首款雙核心伺服器處理器IBM Power4「Regatta」的主架構師跑去AMD了,主導了叢集多執行緒 (CMT,Cluster-based Multi-Threading) 的路線。

接著就是如我們所見,「後K8時期」一連串慘烈異常的「工地秀」,玩死了曾經光明萬丈的Opteron:

2011:Bulldozer (推土機) 
2012:Piledriver (打樁機) 
2013:Steamroller (壓路機) 
2014:Excavator (挖土機)

這真是AMD不堪回首的往事啊,但AMD的選擇真的錯了嗎?(阿扁聲)
 

回應 0
蟑螂藥推薦
11 天前

熱門文章

最新消息

本日精選