架構簡介
AMD於2011年10月正式推出全新處理器微架構“推土機”。
按照AMD的設 計理念,推土機架構要在多執行緒套用中提供性能、成本和功耗的平衡,並專注於高頻率、資源共享,以實現在下一代套用環境中的最佳吞吐、最快速度。為達此目的,推土機採用了其它任何處理器都沒有過的模組化設計,整數核心、浮點核心按照2:1的比例組成一個個模組,每個模組既可以相當於傳統的兩個物理核心,又可協作運行。
從產品家族序列上看, 推土機屬於AMD Family 15h。這是K8架構之後開始使用的新型序列。在此之前,Family 10h、11h、12h、14h分別代表伺服器和桌面版K10、筆記本移動版K10、Llano APU、Bobcat APU,13h則被很自然地跳過去了。
架構分析
多核心技術
模組
在著手設計下一代x 86處理器核心的時候,AMD的工程師們認為必須實現核心功耗與面積的最佳化,而且PC套用的發展也讓工程師們必須尋找一條新的路子,能夠在不同核心之間實現峰值頻寬的最大化,並通過共享模組來充分利用每一平方毫米的核心面積。
最終結果就是能夠高效最佳化資源的雙核心模組化。整數管線、一級數據快取等頻繁使用的功能在每個核心裡都有單獨的功能單元,預取、解碼、浮點管線、二級快取等功能單元則在兩個核心裡共享使用。這種設計可以讓每個核心都能在需要的時候使用更大的、更高性能的功能單元,比每個核心都擁有自己獨立的小型功能單元更節省核心面積。
這種設計理念的一個直接體現就是核心面積。 八核心推土機是AMD公司歷史上製造的最大規模晶片,集成了大約12億個電晶體,但通過功能單元的合理分配,以及32nm SOI新工藝的套用,核心面積被控制在僅僅為315平方毫米,比六核心、45nm工藝的Phenom II X6還要小9%,比四核心、32nm HKMG工藝的Sandy Bridge也只大了46%。
浮點單元
推土機中的浮點單元也經過了完全重新設計,可以在不同核心之間共享資源。每個推土機模組內都有共享的兩個128位乘法累加單元(FMAC),可以每個核心執行128位指令,或者每個模組執行256位指令。
推土機浮點單元還改進支持了大量新的指令集。Phenom II X6僅有128位浮點,Intel Sandy Bridge增加了SSSE3/SSE4.1/SSE4.2、128/256位AVX、每周期兩個128位AVX、每周期128位AVX+SSE。推土機不但將這些照單全 收, 還獨家支持FMA4乘加指令、XOP擴展操作指令(曾經的SSE5)。
那么指令集都有什麼用呢?下邊簡單列舉幾個:
SSSE3/SSE4.1/SSE4.2(Intel、AMD共有):視頻編碼與轉碼、生物統計算法、文字密集型套用。
AESNI PCLMULQDQ(Intel、AMD共有):AES加密套用、安全網路交易、磁碟加密(微軟BitLocker)、資料庫加密(Orocle)、雲安全。
AVX(Intel、AMD共有):浮點密集型套用,諸如信號處理與地震、多媒體、科學計算、金融分析、3D建模。
FMA4/XOP(AMD獨有):高性能計算套用,諸如數字套用、多媒體套用、音頻算法。
指令集的變化自然需要軟體的支持才能發揮效力,尤其是FMA、XOP兩大獨家指令。如果軟體還在使用老的浮點指令,推土機的特點顯然就發揮不出來。在作業系統和軟體程式完善之前,可以運行一下AMD提供的兩個XOP、AVX補丁程式,再跑分就會有明顯的不同。
其實,這兩個小程式正是網上傳聞的所謂“雞血補丁”,而且有時候確實能“雞血”一下,比如 讓FX-8150 wPrime32M運算時間從15秒鐘縮短到10秒鐘。
共享前端
前端(Front End)的任務是驅動處理管線、確保核心隨時獲取所需信息。在推土機中,每個前端配合一個模組,並負責為其中的兩個核心 分配執行緒。AMD在這裡也做了大刀闊斧的改進,涉及不相關預測和拾取管線、預測定向指令預取器等等。一個預測佇列可以管理一級、二級分支目標緩衝(存儲目標地址)所需的直接、間接分支。 推土機模組可以在每個時鐘周期內解碼最多四條指令,而K10 Phenom II只有三條。換句話說,推土機從三發射變成了四發射,就像Intel Sandy Bridge。
預測管線會生成一個拾取地址佇列。拾取管線則在每個時鐘周期內從指令快取里拉取32個位元組加入拾取佇列,再送往解碼器。
推土機和Sandy Bridge一樣使用了物理暫存器檔案(PRF)。這是一個單獨的位置,用於保持執行指令的暫存器結果。這種設計可以消除不必要的數據移動和複製,只保留一個拷貝而不用對數據進行廣播。
快取設計
推土機的每個核心都有 64KB一級數據快取、64KB一級指令快取、32-entry全關聯數據頁表快取(DATA TLB)、完整亂序載入/保存單元,後者可以在每個時鐘周期內載入兩個128位或載入一個128位指令。
每個模組配備 2MB 16路關聯二級快取、124-entry二級頁表快取,可同時處理指令和數據請求。推土機支持最多23個二級快取不命中,用於保持記憶體系統一致性。
最後,一顆推土機處理器的所有模組與核心共享 8MB 64路關聯三級快取。
Turbo Core 2.0智慧型超頻技術
智慧型超頻(動態加速)這種技術最早是Intel在45nm Lynnfield上搞出來的,叫做Turbo Boost(中文名睿頻),Sandy Bridge上進化為第二代,可根據套用負載升降不同核心的頻率,從而兼顧對頻率、執行緒明暗度不同的套用與整體性能、功耗。AMD Phenom II X6六核心首次引入自己的智慧型超頻技術Turbo Core,但還不是很完善。Llano APU也部分加入了這種技術,並且支持CPU、GPU兩個核心的加速。現推土機迎來了真正的第二代。
推土機大大改進了電源管理技術,在核心級別上支持CC6電源狀態,在模組級別上可通過CC6支持二級快取的電源門控(Power Gating)。有了電源門控,空閒核心就可以幾乎完全斷電,從而給其它核心留出更大的加速空間。
推土機有三種運行模式:原始預設的基準頻率、全部核心開啟的加速頻率、半數核心開啟的加速頻率。
全部核心加速:如果多餘的熱設計功耗(TDP)空間允許,推土機可以對所有的核心進行加速,適合那些需要儘可能高頻率的執行緒密集型套用, 最高能超500MHz。
AMD宣稱,Turbo Core技術在這種情況下可以帶來4-7%的性能提升。
半數核心加速:這種情況下半數核心完全關閉,另外一半核心則更大幅度地加速,適合那些對多執行緒不太敏感、但需要高頻率的套用。相比第一代,加速幅度明顯更高了, 理論上最高可達1GHz 。
AMD宣稱,Turbo Core技術在這種情況下可以帶來5-12%的性能提升。
雖然AMD沒有就此技術發布專用的監控工具,但事實上已經有很多硬體類工具提供了支持,既有AMD自家出品的監控超頻軟體OverDrive,也有第三方的TMonitor、HWiNFO32/64、SIV等等。利用它們可以隨時查看每個核心的實時工作頻率,而且加速核心的頻率會以紅色顯示。
需要特彆強調的是, 推土機並不是簡單的全部或者半數核心以同樣的幅度加速,而是實現了真正的異步頻率,每個核心都可以有自己獨立的運行速度,利用任何監視工具都可以清楚地看出來。這一方面得益於推土機本身架構的改進(切換速度比K10快得多),另一方面也得益於Windows 7作業系統線上程分配上的最佳化。
架構特點
1、基於Bulldozer微架構
2、2-4個模組
3、每個模組包含兩顆核心、一個浮點單元、兩個整數單元
4、每模組獨享2MB二級快取
5、AVX、XOP指令集
6、Turbo Core 2.0技術
7、全新32nm製造工藝
8、全新Socket AM3+接口
9、雙通道DDR3-1866MHz記憶體支持
10、不鎖倍頻
超頻潛力
藉助液氮散熱,玩家成功將一顆還 未發布的FX-8150超頻到8.429GHz,這一紀錄已經打破了Intel單核賽揚創建的主頻紀錄,並且還獲得了金氏世界紀錄。從CPU-Z的認證頁面我們可以看到,用戶採用了AMD頂級的八核FX-8150 CPU進行超頻,主機板選擇了華碩的Crossshair V Fomula,基於AMD 890FX晶片組,並沒有採用最新的990FX晶片組主機板,看來AMD 890FX也是推土機的最好搭檔之一。記憶體選取了海盜船的DDR3 1333記憶體,畢竟CPU超頻對記憶體要求都不會太高。
從測試成績截圖裡面我們可以看到,玩家使用了31倍的倍頻,在此基礎上將外頻超頻到271.9MHz,達成了史上最高的8.429GHz,此時的電壓也達到了2.016V。
技術參數
"Zambezi" (32 nm)
CPU支持:MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, SSE4a, AMD64, AMD-V, AES, CLMUL, AVX, XOP, FMA4, CVT16.
全型號通用參數
電晶體數量:12億
核心面積:315平方毫米
步進:B2
接口:Socket AM3+
HT 3.1匯流排:5.2GT/s
記憶體支持:DDR3-1866 雙通道
型號 | 模組核心 | 主頻 | 加速頻率 | 二級快取 | 三級快取 | TDP |
FX-4100 | 雙模組四核心 | 3.6GHz | 3.8GHz | 2×2MB | 8MB | 95W |
FX-4170 | 雙模組四核心 | 4.2GHz | 5.0Ghz | 2×2MB | 8MB | 125W |
FX-6100 | 三模組六核心 | 3.3GHz | 3.9GHz | 3×2MB | 8MB | 95W |
FX-6200 | 三模組六核心 | 3.8GHz | 4.1GHz | 3×2MB | 8MB | 125W |
FX-8100 | 四模組八核心 | 3.1GHz | 3.7GHz | 4×2MB | 8MB | 95W |
FX-8120 | 四模組八核心 | 3.1GHz | 4.0GHz | 4×2MB | 8MB | 125W |
FX-8150 | 四模組八核心 | 3.6GHz | 4.2GHz | 4×2MB | 8MB | 125W |