CPU做一個(gè)超強(qiáng)單核不行嗎?本文揭示答案!
CPU的的單核性能有多重要,這個(gè)不用再重復(fù)了,但是CPU的單核性能可以無限增加下去嗎?回答這個(gè)問題之前,先說一個(gè)小故事吧。
很多年前VIA威盛還可以跟英特爾硬剛,那時(shí)候是Pentium 4時(shí)代,英特爾在CPU頻率不斷突破1GHz、2GHz、3GHz之后要做更高頻率的CPU,放言稱奔4頻率上4GHz,后來就有了英特爾前任CEO巴瑞特下跪的一幕,因?yàn)橛⑻貭栐诒?時(shí)代并沒有如承諾的那樣推出4GHz高頻的產(chǎn)品。
但是很多人不知道的是,4GHz并不是英特爾當(dāng)時(shí)的最終目標(biāo),2001年的IDF會(huì)議上英特爾曾經(jīng)表示奔4處理器可以上10GHz頻率。如今18年過去了,這個(gè)目標(biāo)一直都沒實(shí)現(xiàn),(硅基時(shí)代)可能永遠(yuǎn)都無法實(shí)現(xiàn)了。
這件事就能說明CPU頻率不是想提升就提升的,奔4時(shí)代過去這么多年了,其實(shí)CPU的主流頻率依然在4GHz左右,英特爾雖然在酷睿i7-8086K上首次實(shí)現(xiàn)官方5GHz頻率,但絕大多數(shù)處理器日常使用的頻率都沒這么高,高負(fù)載下頻率在4GHz出頭就不錯(cuò)了。
制約單核性能超強(qiáng)的CPU出現(xiàn)的第一個(gè)問題就是頻率無法大幅提升,而這個(gè)因素也跟現(xiàn)在的制程工藝有關(guān),實(shí)質(zhì)上是摩爾定律已經(jīng)失效了,這個(gè)影響了半導(dǎo)體行業(yè)50年的金科玉律隨著硅基芯片物理極限的到來已經(jīng)失效了,從28nm節(jié)點(diǎn)之后其實(shí)就沒有帶來很大的性能改進(jìn)了,而且功耗問題也越來越嚴(yán)重。
大家都知道理論上制程工藝越先進(jìn)(制程數(shù)字越小),CPU性能會(huì)更高,功耗、發(fā)熱會(huì)更低,但是實(shí)際上這個(gè)問題很復(fù)雜,CPU的功耗可以分為靜態(tài)功耗(Static Power)及動(dòng)態(tài)功耗(Dynamic Power),前者主要是漏電流引起的,制程越先進(jìn),漏電流又有增加的趨勢(shì),而動(dòng)態(tài)功耗可以用1/2*CV2F這個(gè)公式來計(jì)算,F(xiàn)頻率越高,動(dòng)態(tài)功耗就越高。
為了上更高的頻率,電壓增加不可避免,但電壓高了功耗也高了,總之靜態(tài)功耗、動(dòng)態(tài)功耗的存在就決定了CPU頻率越高,功耗就會(huì)極速增加,將會(huì)嚴(yán)重影響處理器的性能表現(xiàn),因?yàn)橐殿l。
說到這一點(diǎn),英特爾的14nm工藝雖然被人調(diào)侃擠牙膏,但從技術(shù)上來說真的很牛了,從Skylake架構(gòu)的第一代14nm到現(xiàn)在Coffee Lake的14nm++工藝,性能提升26%,或者功耗降低52%,在不改變基本結(jié)構(gòu)的情況下這個(gè)成績很難得。
制程工藝的放緩導(dǎo)致CPU頻率不可能大幅提升,有很多人會(huì)想到那么有沒有非常牛的CPU架構(gòu)讓IPC性能大幅提升呢?理論上這種思路是可以的,但是現(xiàn)實(shí)很殘酷,CPU架構(gòu)還是要服從半導(dǎo)體工藝物理定律的,沒有先進(jìn)的工藝,再好的CPU架構(gòu)也不可能實(shí)現(xiàn)。
此外,即便不考慮工藝對(duì)CPU架構(gòu)的影響,單純說CPU架構(gòu)的話,不論是X86還是ARM架構(gòu),在64位時(shí)代CPU單元不外乎就是ALU單元、緩存、I/O等子單元, 但是不論提升那部分單元,歸根到底還是要算到晶體管數(shù)量上來,還要考慮提升導(dǎo)致的成本——這個(gè)成本不只是錢的問題,比如提升L1/L2/L3緩存可以提高性能,但是緩存占用的核心面積很大,而且還有命中率及命中懲罰的問題,不是隨便加加單元就行的。
此外,CPU的內(nèi)部還可以分為整數(shù)部分、浮點(diǎn)部分,前者對(duì)日常使用很重要,浮點(diǎn)性能對(duì)計(jì)算更重要,但CPU的浮點(diǎn)性能并不是日常所需的,所以大家普遍感覺不到這部分的提升。
公平地說,近年來CPU浮點(diǎn)單元的進(jìn)步是符合題目所說的單核超強(qiáng)的要求的,因?yàn)閺腟SE到AVX到AVX2再到最新的AVX-512,CPU浮點(diǎn)性能是有大幅提升的。如英特爾所說:“借助多達(dá)兩個(gè)512位融合乘加 (FMA) 單元,應(yīng)用程序在512位矢量內(nèi)的每個(gè)時(shí)鐘周期每秒可打包32次雙精度和64次單精度浮點(diǎn)運(yùn)算,以及八個(gè)64位和十六個(gè)32位整數(shù)。因此,與英特爾高級(jí)矢量擴(kuò)展 2.0(英特爾 AVX2)相比,數(shù)據(jù)寄存器的寬度、數(shù)量以及FMA單元的寬度都增加了一倍。”
但是前面也說了,CPU的浮點(diǎn)性能不是日常所需的,整數(shù)性能更加重要一些,但是整數(shù)單元性能提升就沒這么明顯了,導(dǎo)致很多人以為CPU架構(gòu)多年來擠牙膏。