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

無功補(bǔ)償?shù)?b class='flag-5'>越多越好嗎?
磁環(huán)電感繞線圈數(shù)越多越好嗎
谷景揭秘直流流共模電感圈數(shù)繞制越多越好嗎
磁環(huán)繞線電感圈數(shù)越多越好嗎
低壓側(cè)并聯(lián)的電容是越多越好嗎?

評(píng)論