ADVERTISEMENT
講到超執行緒(Hyper-Threading)大家應該都不陌生,筆者這邊就簡單解釋,一般來說 1 顆實體處理核心在同一時間內,僅能執行 1 條執行緒,這在 Intel Pentium 4 以前和 AMD 舊世代處理器都是如此。
Intel 在 2003 年推出 Northwood 架構 Pentium 4,1 顆實體處理核心可模擬 2 顆邏輯核心,同一時間內便可處理 2 條執行緒,增進運算效能。不過由於 2 條執行緒還是共享單顆處理核心資源,因此效能增幅並非 2 倍,有時還會因為執行緒分配不良導致效能倒退嚕。
此技術被 Intel 稱之為超執行緒,其它家廠商大多稱之為概念名詞 SMT(Simultaneous Multithreading)。而對手 AMD 部分則是能夠經常聽到 CMT(Clustered Multithreading),這是由 2 個實體處理核心共享 1 個浮點運算處理核心的技術。
▲Intel 於 2003 年首次將單核多執行緒技術帶入一般家用消費市場。
美國德克薩斯州大學奧斯汀分校、Calxeda 和 Intel 的研究人員,於 2012 年發表有關於 MorphCore 的論文,Soft Machines 也在 2014 年發表 VISC 架構,以上 2 件事情都在解決目前多處理核心的效率問題,提升整體系統效能。
此技術中文大多稱為逆(反)超執行緒,英文為 Reverse Hyper-Threading 或是 Inverse Hyper-Threading。概念剛好和超執行緒相反,單一執行緒將在多個處理核心上同時處理,解決目前半導體技術往上提升時脈的耗電量和發熱問題,對於作業系統和軟體開發也更為簡單。
▲Soft Machines VISC 架構原理。
最近國外人員進行 SPEC CPU2006-Suite 其中的 Computational Fluid Dynamics (470.lbm) 測試,發現到怪異的現象,Intel Core i7-6700K 的單、雙執行緒效能相當高,除了打敗 Core i7-4790K 之外,也贏過自己在 3、4 執行緒時的效能。
▲Intel Core i7-6700K 和 Core i7-4790K 的比較。
圖片左方為實體核心數量,右方為邏輯上的核心數量,右邊的數據和 Core i7-4790K 合乎預期,隨著使用越多執行緒,效能就會持續往上,而使用超過實體核心數量的執行緒,反而會造成效能降低的情形,這和先前我們所理解的超執行緒缺點相符。
有趣的是 Core i7-6700K 使用較少執行緒的成績,單執行緒超過 Core i7-4790K 約 2 倍有餘,雙執行緒增加的幅度也相當大,這已經不是微架構差異能夠解釋的效能增進,國外媒體猜測 Intel 應該已經在 Skylake 實作逆(反)超執行緒。
有趣的是從發售開始,Intel 並未完整揭露 Skylake 微架構的整體改進,可能會於之後舉辦的 IDF 才會公開細節。若是真是如此,Skylake 除了晶片組通道數量變多、規格提升之外,對消費者來說又會多個相當強力的升級誘因。
資料來源
Skylake mit inversem Hyper-Threading?
MorphCore: An Energy-Efficient Microarchitecture for High Performance ILP and High Throughput TLP
請注意!留言要自負法律責任,相關案例層出不窮,請慎重發文!