如今的CPU核心數(shù)量越來越多,似乎核心越多性能就會越好,起碼這些CPU品牌在向消費(fèi)者傳輸這個信息,但CPU的核心真的越多越好嗎?
事實(shí)上,CPU的核心多了之后,在使用多線程應(yīng)用時,操作表現(xiàn)會有明顯的提高,比如圖片編輯、視頻剪輯以及3D動畫渲染。但在大多數(shù)情況下,更多的核心不僅毫無好處,反而還會拖累整個電腦。
增加的發(fā)熱量是最大的攔路虎
發(fā)熱量永遠(yuǎn)是電腦性能提高道路上最大的敵人,不論什么硬件,性能提高勢必會伴隨著發(fā)熱量的增多,如果不能對硬件實(shí)施有效的降溫,那么高性能就只是“空中樓閣”,好看,但沒用,多核CPU就是如此。
CPU的核心多了,需要的電能和產(chǎn)生的熱量就會跟著變多,但因?yàn)樵O(shè)計原因以及對電腦空間的有效利用,這些核心都被堆放在一個狹小的空間里,所以散熱效果往往并不理想。所以在很多廠商設(shè)計多核CPU時,都會受到熱設(shè)計功耗的限制。
也就是說為了避免CPU的功率過高,發(fā)熱量過大,廠商們會降低各核的頻率,從而降低自身的功率和發(fā)熱量。雖然也有幾款多核CPU在宣傳時會說自己的頻率很高,但這種所謂的高頻率一般只能堅持一段時間,或者只有在使用一些對CPU需求不大的軟件時才能保持高頻率。
頻率降低其實(shí)就意味著性能降低,雖然降低之后的性能依舊會比其他一些較低級的CPU強(qiáng),但這些降低的性能就變成了損耗,這樣不值得。
統(tǒng)一or非統(tǒng)一,內(nèi)存訪問的選擇
一般核心比較多的CPU,會把自身的核心分組進(jìn)行工作,我們稱每組為一個節(jié)點(diǎn),CPU通常會把核心分為兩個節(jié)點(diǎn)。而CPU又分為兩種架構(gòu),他們分別為NUMA架構(gòu),也就是非統(tǒng)一內(nèi)存訪問,還有UMA架構(gòu),它的意思是統(tǒng)一內(nèi)存訪問。NUMA架構(gòu)的特點(diǎn)是CPU的每個節(jié)點(diǎn)都各有一個內(nèi)存控制器和節(jié)點(diǎn)本身專用的物理內(nèi)存,而UMA架構(gòu)則是只有一個內(nèi)存控制器,并且所有核共享一個大的內(nèi)存池。
一般來說NUMA會更快一些,但是對于分了很多線程的軟件來說,想要流暢運(yùn)行會很吃力。因?yàn)镹UMA架構(gòu)的CPU,它的每個節(jié)點(diǎn)都要等另一個節(jié)點(diǎn)把數(shù)據(jù)處理完之后才能開始工作,所以不同節(jié)點(diǎn)訪問內(nèi)存的時間不同,因此這類多線程軟件寧愿只使用一個節(jié)點(diǎn),把其他的核心都空著不用,也不愿意跨節(jié)點(diǎn)運(yùn)行,這樣就造成了性能的損耗。
既然NUMA架構(gòu)的CPU存在這樣那樣的問題,那么用UMA架構(gòu)就可以避免嗎?其實(shí)不然,UMA架構(gòu)的CPU雖然是一個內(nèi)存控制器控制所有的內(nèi)存訪問,以此來確保所有軟件訪問內(nèi)存的用時相等,但是相比之下,NUMA架構(gòu)的軟件在訪問內(nèi)存時反而會更加方便直接,這樣一來UMA的性能損耗會更大一些,并且節(jié)點(diǎn)越多,性能損耗就越嚴(yán)重。
其實(shí)不管用什么架構(gòu),只要是多節(jié)點(diǎn)的CPU,都無法避免性能損耗,反而是核心數(shù)量少一些的CPU能夠避免這個問題,因?yàn)樗鼈兏揪蜎]有節(jié)點(diǎn)。
設(shè)計缺陷同樣會影響CPU的多核性能
有些CPU本身就是核心一多,性能就會出現(xiàn)瓶頸的設(shè)計,其中最鮮明的例子就是AMD之前發(fā)售的FX推土機(jī)CPU。
這里要講一個概念那就是浮點(diǎn)性能,簡單來說,我們計算機(jī)在做運(yùn)算時,會處理非常多的數(shù)字,但這些數(shù)字往往并不是整數(shù)。其中會有一些極小數(shù)或是極大數(shù)需要參與運(yùn)算,這里就需要用到浮點(diǎn)性能。浮點(diǎn)性能越高,這些運(yùn)算就會越快,在處理一些較為復(fù)雜的運(yùn)算時,比如3D建模等,浮點(diǎn)運(yùn)算會顯得非常重要。
一開始時的AMD處理器,雖然核心很多,但是性能就是比不上英特爾,這是因?yàn)樵?a target="_blank">ADM之前的FX推土機(jī)CPU中,雖然有8個核心,但浮點(diǎn)單元只有4個,因此這8個核心就要公用4個浮點(diǎn)單元,所以浮點(diǎn)性能就會很低。
這極大的影響了該款CPU在處理一些重要的軟件時所需的單線程的性能,雖然這種設(shè)計讓AMD用更低的成本得到更多的線程,但性能卻遠(yuǎn)遠(yuǎn)比不上英特爾。而補(bǔ)救的方法也很簡單,就是提高頻率,但是提高頻率發(fā)熱量就會增加,所以當(dāng)初的AMD被笑話了很久。
現(xiàn)在的很多軟件,尤其是游戲,它們看重的并非是核心的數(shù)量,而是單核的性能。有很多游戲甚至根本沒有針對多核進(jìn)行優(yōu)化,或者是需要在設(shè)置中打開多核渲染才能用到其他核心的性能,這樣就很容易造成“一核有難,多核圍觀”的尷尬場面。
多核確實(shí)有多核的好處,在跑支持多核工作的軟件時,多核CPU的確有著顯著的優(yōu)勢。我在本文中想表達(dá)的意思也并非也多核CPU沒有低端CPU強(qiáng)。現(xiàn)在的英特爾和AMD的多核CPU,都是已經(jīng)大幅改進(jìn)過,也用了智能的加速機(jī)制,來達(dá)到與更便宜的CPU相類似的單線程性能。
但是對多核CPU來說,性能損耗是無法避免的,而且核心越多,性能損耗往往就越嚴(yán)重。因此,在選擇CPU是,最好還是先確定自己究竟需不需要多核的CPU,畢竟辛苦賺來的搬磚錢可不能浪費(fèi)。
-
處理器
+關(guān)注
關(guān)注
68文章
19291瀏覽量
229906 -
3D
+關(guān)注
關(guān)注
9文章
2880瀏覽量
107564 -
cpu
+關(guān)注
關(guān)注
68文章
10868瀏覽量
211844
發(fā)布評論請先 登錄
相關(guān)推薦
評論