說起近年來CPU領域的進展,很多人都知道蘋果的M1系列芯片、以及它取得了多少多少提升。相比之下,老牌CPU廠商英特爾的關注度卻越來越低,最主要的原因就是這個牙膏廠擠牙膏的速度太慢了。
不過,在英特爾發布了最新的12代酷睿處理器之后,事情就完全不一樣了。 國內外很多知名UP主都對它做了極其深入的性能測試,并且有點出乎意料地收獲了幾乎一邊倒的好評。很多人甚至說,英特爾這次把牙膏擠爆了、12代酷睿會幫助英特爾重新走回巔峰。
如果你對電腦或者數碼產品不是特別熟悉,可能會問:一個產品的正常升級換代,取得性能提升不是很正常的嗎? 升級帶來性能提升是正常的,但取得這么大的性能提升就不那么“正常”了,英特爾必然做對了什么事情。
所以問題來了,12代酷睿究竟做對了什么?究竟是一不小心走運擠爆了牙膏,還是發現了能夠源源不斷產生新牙膏的方法?
先說結論,我認為英特爾找到了一個新配方,能持續大幅提升芯片的性能。這個配方的名字,叫芯片架構的創新。而這個配方最重要的那味藥,就是異構。 問題又來了,異構究竟是什么東西?它為什么能幫助12代酷睿取得了如此大的提升?更重要的是對于普通消費者來說,怎么才能用得上這種創新?對于我們來說又有什么具體的意義?今天的文章我們就來好好說說這些問題。
什么是異構
先來看看“異構”這個詞到底是什么意思。從字面意思來看,異就是不同,構就是架構或者結構,所以異構其實就是“不同的結構”。它的反義詞是同構,也就是“相同的結構”。
如果你沒聽說過這兩個詞也完全沒關系,其實在我們日常生活中關于異構和同構的例子是有很多的。就拿我們家里的裝修和收納舉例,以前很多房屋裝修都是同樣的風格,看起來像是一個模子印出來的。收納也很簡單,比如廚房里都用一樣的四四方方的櫥柜,去收納各種鍋碗瓢盆。這其實就是同構。
但是我們在實際應用中就發現,這種結構并不好用。因為我們有各種各樣的鍋碗瓢盆,放在同樣的櫥柜里就會導致有的地方放不下,有的地方卻太空了。所以很多現代化的裝修,都是針對不同的廚具去針對性的設計收納空間,并且能最大限度的利用空間。這種方式其實就是異構。 同樣的例子還有很多,比如一列火車里有一等二等餐車臥鋪這樣不同的車廂,而不全都是相同的座位,這就是一種異構。我們吃的飯也有川菜粵菜漢堡炸雞這樣不同的菜系和品種,而不都是大鍋飯,所以這也是一種異構。
所以從廣義上來看,只要不是同構,就是異構。 但是,異構其實還有更進一步的意思。比如機場的行李管理系統,會把行李按照不同的航班進行調度,同一個航班,也會按艙位的不同進行先后處理。比如我們在等行李的時候,頭等艙的行李會先出來,而我們坐經濟艙的往往要等很久才能等到自己的行李。這里其實就是在異構這個概念里,增加了優先級和調度的概念。也就是說,由于結構的不同,對它的處理和應用的方式也是不同的。
再拿前面的廚房收納來舉例,我們會把盤子放在櫥柜的抽屜里,但是應該先放大盤子、再放小盤子,這樣才不會倒。放玻璃杯的時候,抽屜肯定就放不下了,所以應該放在杯具專用的地方,可能很窄很高,正好能放下杯子。所以這些不同結構的櫥柜和抽屜,就組成了一個異構的收納體系。 回到前面的問題,我們為什么要用異構呢?和同構相比,異構更加高效,每個部分各司其職,就像玩游戲的時候用的一套連招,能夠最大限度地發揮它的力量。
但使用異構的另一方面原因,其實是由于當技術發展到一定程度的時候,不可避免的遇到很多限制。很多年前,傳統地提升CPU性能的方法,就是堆料,也就是不斷增加CPU核心的數量,從而讓性能隨著核心數的增加而線性增加。多核架構在十幾年前就是非常熱門的研究方向,人們認為,只要能夠編寫和運行并行軟件,就可以將處理器架構直接擴展到數千個核心。
當然了現實總是非常殘酷。在之前的文章里介紹過,當時還在德州大學奧斯丁分校的道格博格爾教授寫了一篇文章,研究并提出了所謂的“暗硅效應”。
它說的是雖然可以不斷增加核心數量,但由于功耗的限制,我們卻無法讓這些核心同時工作。這就像一個大樓有很多房間,但由于供電量有限,我們無法同時開啟每個房間的燈,這就讓這個大樓在夜里看起來有很多黑暗的部分,這也是暗硅這個詞得名的原因。
暗硅效應的提出,完全改變了芯片產業發展的方向。人們意識到即使不斷的堆核,并且開發出了并行軟件,這種同構的方法帶來的性能提升也會非常有限。所以異構計算就應運而生了。事實上,在計算機領域,異構計算是一個近年來非常熱門的方向,就是因為異構計算能夠充分利用CPU、GPU、FPGA、ASIC等等不同芯片結構的特點,相互取長補短,從而實現更加高性能低功耗的計算系統。
對于CPU設計本身,也慢慢出現了異構的方法。比如手機的處理器絕大多數都是基于ARM的架構,它就采用了大小核的設計。在蘋果的M1芯片里,也采用了類似的設計方法。這些都不是新鮮事兒了。
但是新鮮的是,在x86架構的CPU里,12代酷睿Alder Lake是第一次嘗試了這種性能核+能效核的異構方法,結構就取得了非常好的效果。
硬件異構:兩種不同的內核
Alder Lake最主要的特點,就是采用了性能核+能效核的架構設計。它最大的特點就是有很強的擴展性和靈活性。
比如全系列Alder Lake都是采用了相似的設計,不管是臺式機、筆記本還是超輕薄的商務本,CPU架構都是相同的,只不過兩種類型的核心數量有區別。比如桌面端CPU最高可以支持8個性能核、8個能效核,面向筆記本的12代酷睿又分成了HPU三個子系列:H系列面向高性能移動平臺,可以支持4~6個性能核、4~8個能效核,最多14核20線程;面向高性能筆記本的P系列也是如此,性能核支持2~6個,能效核都為8個;而主打輕薄筆記本的U系列,最多支持2個性能核、8個能效核。使用這樣的設計,就能根據特定的應用場景,針對性的配置芯片核心的數量和種類,以取得性能和功耗的平衡和優化。
Alder Lake的能效核代號為Gracemont。值得注意的是,它并沒有采用業界通用的“低功耗”內核的這個說法,而是稱為“高能效”,這其實代表著Gracemount能夠很好的平衡性能和功耗這兩個非常重要但貌似相互矛盾的性能指標。
在之前架構日的文章里詳細介紹過,Gracemount在架構設計上也有很多創新和進步,比如在前端設計里采用了64KB指令緩存,并且進一步優化了分支預測單元。此外它還包含了兩個3寬度的亂序解碼器,這也是英特爾能效核的主要特點,它不僅可以單周期完成高達六個指令的解碼,也可以在兩個解碼器集群之間做負載均衡和亂序執行,進一步提升操作的并行性,從而提升性能。能效核的后端也提升了寬度,并且集成了多種整型、浮點型、還有向量運算單元,支持不同形式的運算和指令集擴展。
對于性能核來說,提升就更明顯了。Alder Lake里的性能核代號為Goldencove,它的設計目標非常明確,就是對單線程性能的極致擴展。比如它前后端的流水線、執行單元、亂序窗口、片上緩存和存儲系統都采用了更寬和更深的設計,它還集成了機器學習的方法,來更智能的做分支預測和流水線資源的釋放,進一步提升系統的吞吐量。
打個簡單的比方,如果我們把CPU比作水龍頭,指令和數據就是水龍頭里流的水。這次性能核就把水龍頭的水管做的更寬了,口做的更大了,而且加入了很多智能化的水量控制系統,就讓整體的流量變的更大了。
12代酷睿是英特爾首個采用混合架構的CPU產品,除了性能核與能效核之外,它還集成了對DDR4和DDR5等種內存架構的支持,也支持Wifi6E、Thunderbolt4、PCIe5.0x16等等這些最新的接口和數據傳輸技術。所有的這些單元都是以模塊化的方式進行集成,這樣和異構的內核一起,進一步提升了CPU架構的擴展性,也能非常靈活的應對不同終端的實際需求。
對異構的軟硬件支持
有了不同的處理器內核和硬件模塊其實還不夠,為了組成一個高效運轉的異構芯片,同樣重要的其實是如何把它們充分利用起來。 再拿我們裝修房子的例子,就算按現代的標準裝修了整間屋子,如果住的人不知道怎么用,把東西到處亂放,那么到頭來屋子里肯定還是一團糟。這個時候我們可以咨詢專門的收納師,或者直接請他們來幫忙進行收納。 芯片設計也是這樣,這里的收納師,其實有兩層,一個是調度器,另一個是操作系統。在12代酷睿里,英特爾特別提出了一個叫做線程調度器的結構。這也是一個全新的結構,我總結了它的3個主要特點。
首先,它存在于操作系統和內核架構之間,能在納秒級別、非常精確地監測線程和內核的運行情況。然后根據這些信息,它能為操作系統提供動態反饋,從而幫助操作系統做出最優的調度決定。最后,它可以可以對工作負載做實時分析,確保第一時間把正確的線程分配到正確的核心。
比如對于性能要求比較高的應用,就會被優先放在性能核上運行,一些后臺任務就會被放在能效核上運行,從而實現多任務的并行處理。如果這個時候有優先級更高的高性能應用出現,線程調度器也可以幫助操作系統來決定,將性能核上的哪些線程轉移到能效核上運行。整個調度的過程都是動態完成的,可以根據不同的應用靈活變化,不依賴某種固定的調度算法。
有了硬件調度器,軟件開發者就不需要糾結如何進行線程調度和資源分配了,也不需要修改已有的代碼去支持12代酷睿的異構架構。同時,使用專門的硬件單元去做線程和內核的調度,也可以更好的保證調度的性能和準確性。
當然了,操作系統還是需要對這個硬件調度器進行深度適配的。微軟新推出的Windows11,就有對線程調度器的優化支持,這個其實也是windows11的一個重要特性。 所以有了軟硬件對異構的支持,就可以充分發揮異構的優勢。就像前面提到的機場的行李管理系統一樣,這其實是一種進化版的異構,可以根據優先級進行任務的合理調度和資源分配,并且帶來多任務的處理優勢。
除了H系列之外,12代酷睿還有兼顧性能和功耗的P系列、以及面向低功耗的U系列,分別適合輕內容制作和對移動辦公有剛需的人群。
結語
總之,異構就是12代酷睿取得大幅能效提升的最主要原因。它不僅有能效核+性能核的混合設計模式,還有配合它進行性能釋放的線程調度器和操作系統的支持。有理由相信,這種異構的模式也將會成為未來CPU芯片設計的主流趨勢。
審核編輯 :李倩
-
芯片
+關注
關注
455文章
50714瀏覽量
423158 -
異構計算
+關注
關注
2文章
100瀏覽量
16294
原文標題:異構計算,只是大小核罷了?
文章出處:【微信號:bdtdsj,微信公眾號:中科院半導體所】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論