CPU的的單核性能有多重要,這個不用再重復了,但是CPU的單核性能可以無限增加下去嗎?回答這個問題之前,先說一個小故事吧。很多年前VIA威盛還可以跟英特爾硬剛,那時候是Pentium 4時代,英特爾在CPU頻率不斷突破1GHz、2GHz、3GHz之后要做更高頻率的CPU,放言稱奔4頻率上4GHz,后來就有了英特爾前任CEO巴瑞特下跪的一幕,因為英特爾在奔4時代并沒有如承諾的那樣推出4GHz高頻的產品。
但是很多人不知道的是,4GHz并不是英特爾當時的最終目標,2001年的IDF會議上英特爾曾經表示奔4處理器可以上10GHz頻率。如今18年過去了,這個目標一直都沒實現,(硅基時代)可能永遠都無法實現了。
這件事就能說明CPU頻率不是想提升就提升的,奔4時代過去這么多年了,其實CPU的主流頻率依然在4GHz左右,英特爾雖然在酷睿i7-8086K上首次實現官方5GHz頻率,但絕大多數處理器日常使用的頻率都沒這么高,高負載下頻率在4GHz出頭就不錯了。
制約單核性能超強的CPU出現的第一個問題就是頻率無法大幅提升,而這個因素也跟現在的制程工藝有關,實質上是摩爾定律已經失效了,這個影響了半導體行業50年的金科玉律隨著硅基芯片物理極限的到來已經失效了,從28nm節點之后其實就沒有帶來很大的性能改進了,而且功耗問題也越來越嚴重。
大家都知道理論上制程工藝越先進(制程數字越小),CPU性能會更高,功耗、發熱會更低,但是實際上這個問題很復雜,CPU的功耗可以分為靜態功耗(Static Power)及動態功耗(Dynamic Power),前者主要是漏電流引起的,制程越先進,漏電流又有增加的趨勢,而動態功耗可以用1/2*CV2F這個公式來計算,F頻率越高,動態功耗就越高。
為了上更高的頻率,電壓增加不可避免,但電壓高了功耗也高了,總之靜態功耗、動態功耗的存在就決定了CPU頻率越高,功耗就會極速增加,將會嚴重影響處理器的性能表現,因為要降頻。
說到這一點,英特爾的14nm工藝雖然被人調侃擠牙膏,但從技術上來說真的很牛了,從Skylake架構的第一代14nm到現在Coffee Lake的14nm++工藝,性能提升26%,或者功耗降低52%,在不改變基本結構的情況下這個成績很難得。
制程工藝的放緩導致CPU頻率不可能大幅提升,有很多人會想到那么有沒有非常牛的CPU架構讓IPC性能大幅提升呢?理論上這種思路是可以的,但是現實很殘酷,CPU架構還是要服從半導體工藝物理定律的,沒有先進的工藝,再好的CPU架構也不可能實現。
此外,即便不考慮工藝對CPU架構的影響,單純說CPU架構的話,不論是X86還是ARM架構,在64位時代CPU單元不外乎就是ALU單元、緩存、I/O等子單元, 但是不論提升那部分單元,歸根到底還是要算到晶體管數量上來,還要考慮提升導致的成本——這個成本不只是錢的問題,比如提升L1/L2/L3緩存可以提高性能,但是緩存占用的核心面積很大,而且還有命中率及命中懲罰的問題,不是隨便加加單元就行的。
此外,CPU的內部還可以分為整數部分、浮點部分,前者對日常使用很重要,浮點性能對計算更重要,但CPU的浮點性能并不是日常所需的,所以大家普遍感覺不到這部分的提升。
支持AVX512的酷睿i9-7900X浮點性能提升很大
公平地說,近年來CPU浮點單元的進步是符合題目所說的單核超強的要求的,因為從SSE到AVX到AVX2再到最新的AVX-512,CPU浮點性能是有大幅提升的。如英特爾所說:“借助多達兩個512位融合乘加 (FMA) 單元,應用程式在512位矢量內的每個時鐘周期每秒可打包32次雙精度和64次單精度浮點運算,以及八個64位和十六個32位整數。因此,與英特爾高級矢量擴展 2.0(英特爾 AVX2)相比,數據寄存器的寬度、數量以及FMA單元的寬度都增加了一倍。”
但是前面也說了,CPU的浮點性能不是日常所需的,整數性能更加重要一些,但是整數單元性能提升就沒這么明顯了,導致很多人以為CPU架構多年來擠牙膏。
我覺得這個問題大體上可以用發動機來說明,3.0t大單缸!車蹦著跑
電子速度是3*10^6公里每秒。即使全速前進,頻率10G,意味著每個tick電子只能行進2厘米。在芯片大小基本上5至10厘米的情況下,一個tick指令根本無法傳出芯片,何況要在幾千萬個晶體管間周轉。散熱已到極限
這我很好奇,從32位到64位進步還是明顯的,那128位呢?
我是程式員,來說一下為什么多核比單核流弊吧。我們假設有一萬個計算任務要執行,每個任務耗時1毫秒,那么執行完一萬條任務就需要1萬毫秒,也就是10秒鐘。如果有兩個CPU,每個CPU分5000條,總執行時間就能降到5秒,如果四核就能降到2.5秒,8核就能降到1.25秒,這就是多核的意義,它可以多個核心協同工作,提升運行效率。(實際上沒這么理想,因為線程調度、管理競爭需要消耗性能,因此雙核的效率并不是單核的兩倍,而是要小于2倍的)。
把cpu體積提高10倍其實也沒多大 主板設計成立體分層以縮小體積 這樣不就可以大大的提升性能了嗎[捂臉]
換個邏輯。比方說你有1個非常優秀的工程師,處理一個bug需要一個小時。有10個bug 一個工程師處理下來需要10小時。連續工作10小時。疲了,累了,工作效率低下。就像cpu一樣發熱。降頻。如果你有10個工程師 同時處理10個bug 1小時完成。大家都不是很累。這么講 能理解么
研究e進制的cpu放棄二進制
不是摩爾定律失效了,而是當前的技術無法遵從目前的摩爾定律去發展,明了說就是技術達不到
問個問題,既然CPU14nm工藝制程就非常極限了,為什么行動電話芯片可以達到7nm?
以前一個CPU風扇就可以解決了,未來如果真有10G單核,估計要泡到水里使用了。CPU再快,周邊配套設施沒提升,猶如用跑車拉起重機。這是一個產業鏈全面升級的過程,CPU的進步只是起了一個標桿的作用,產業鏈里因材料或技術無法突破,研發出與之匹配的周邊,也是白搭。另外我們現在見到的在售CPU,對于成熟的廠家來說,已經是5年前甚至10年前的技術,如果一下子把最流弊的技術商業化,那他們拿什么來維系下一個10年?