時代背景:如同資料中心機房和重要資訊設備永遠缺不了那包綠色的乖乖,看似位於計算機科技頂峰的高效能處理器業界,也是四處充滿了不可勝數的稗官野史和鄉野奇譚。AMD在1990年代末期逐步奠定與Intel分庭抗禮基礎的過程中,也難以避免的碰到「路線選擇」的問題,讓AMD敲開伺服器天堂大門的K8,一開始也不是我們所任之中的「那個樣子」,甚至「處理器遊俠」Jim Keller還提議過更激進、更像Intel NetBurst的方案。
也許各位科科現在眼前看到的,是不學無術的筆者在這個專欄累積的超過兩百篇文章中,最八卦但也最耗盡心思的一篇,更喚起筆者在學生時代的回憶,以及超過十年前在某本已消失的電腦雜誌中的某幾篇長文。
硬科技:AMD同時多執行緒SMT4是什麼?圖解CPU各種核心與執行緒關係
在進入主題之前,請各位科科先大致瀏覽AMD x86處理器的家族族譜。AMD之所以會用K這個字母作為歷代核心微架構的開頭,因為這象徵著 “Killer” 的意思,而設定的獵殺對象,一開始則是Intel的Pentium。
然後筆者直接把結論寫在這裡:
-
AMD原本的K8,並非是以K7為基礎的再發展,而是後來的K11 (Bulldozer) 的雛型,也就是雙核心叢集式多執行緒 (CMT) 的前身。雙整數運算核心共用浮點運算單元,則是因應AMD併購ATi後的「Fusion大戰略」而做出的調整。
-
AMD最早的K8有兩個版本,K8-1極度近似K11,Jim Keller名列發明者之一的K8-2則充滿了Intel NetBurst的影子,例如Trace Cache (微指令追蹤快取) 和兩倍時脈執行單元。
-
AMD的Zen,其基礎概念源自於最原始的K10,高時脈結合同時多執行緒 (SMT)。
以下是與AMD原始K8和K11的相關專利清單。在1998年,K7在世人面前首度亮相「前」,很多份AMD申請的專利權,早已描繪出「K7正統繼承人」的輪廓。
在2001年10月2日,擅長精密圖解處理器晶粒圖的Chip Architect網站站長Hans de Vries (他最有名的事蹟是判斷出90nm製程Pentium 4 “Prescott” 支援64位元x86指令集),總結了所有的K8相關專利,分析出AMD兩種K8方案的概貌:AMD很早以前就在思考「原生雙核心」的可能性,即使隔年IBM就已完成石破天驚的Power4設計。
Chip-Architect “October 2, 2001: AMD's Hammer micro architecture preview”
在2010年3月,也是世人們仍在猜測AMD那個推土機到底葫蘆裡面賣什麼藥的時刻,筆者花了一些時間,重新閱讀全部的相關專利,再使用PowerPoint畫出筆者覺得有必要強調的重點特色。其中Jim Keller涉足其中的K8-2,還真的蠻有Intel NetBurst的味道,也只能說那個時代的「英雄所見略同」了。
為悼念Intel NetBurst的失敗而刻下的墓誌銘 (上)
為悼念Intel NetBurst的失敗而刻下的墓誌銘 (中)
為悼念Intel NetBurst的失敗而刻下的墓誌銘 (下)
行文至此,一定會有眼尖的科科會問:為何AMD沒有K9?
有兩種說法:
-
K9的英文發音近似 “Canine (犬類)”,太過負面,因此跳過。
-
AMD的確有大幅改良過的K9核心微架構計畫,擁有貨真價實的Trace Cache,每個時脈週期可派發多達八個巨集微指令 (Mop, Macro-Op),並「以原生雙核心做為主要特性」。此案由K7團隊負責,在2001年初開工,但經過六個月的概念驗證後就被取消。這個K9究竟是不是專利權上的K8-2 (雖然看起來根本是同一個東西),也就只有AMD自己知道了。
想必各位科科大概也頭昏眼花了,筆者就將AMD的處理器核心變遷,依序再度整理如下:
最後,為什麼AMD會這樣改來改去?我怎麼知道?筆者只負責不負責任的評論,請各位自己去問AMD吧,如果連他們都還記得真正的答案的話。科科。
1 則回應