电子说
CPU是中央处理器,是电脑的核心,所有需要在电脑中运行的软件都需要经过CPU的调度才能正常工作,经过多年的发展,CPU的核心数越来越多了,那么是不是核心数越多的CPU就越好呢?
CPU的核心数量可以说是决定了电脑的计算能力,正常情况下核心数越多表示电脑的计算能力越强,在处理图片、视频剪辑以及3D动画渲染等场景下使用给用户的体验会越好,但是处理器的最终运行效果并不能并独的以核心数进行判断,核心数的增加,CPU的功耗、成本等也都在增加着,所以过多核心数的CPU并不适合每一个人。
在有些情况下,电脑的核心数增加并不能给我们带来任何好处,反而会因为发热量的增加拖累整个电脑。因为发热量是电脑性能提升的一个拦路虎,不论什么硬件,性能提高势必会伴随着发热量的增多,如果不能对硬件实施有效的散热控制温度,那么高性能就只是“空中楼阁”,好看但没用。
影响CPU性能的参数非常多,核心数仅仅其中的一方面,另外CPU的架构、制造工艺、运行频率等方面都和CPU的核心数一样重要,单单从核心数来比较CPU的性能过于片面。CPU的面积相对固定,当核心数多了,需要的电能和产生的热量会跟着变多,所以散热效果往往并不理想。所以在很多厂商设计多核CPU时,都会受到热设计功耗的限制。
有些厂家为了避免CPU的功率过高,发热量过大,同时又想堆砌更多的核心数,厂商们会降低各核心的频率,从而降低自身的功率和发热量。这样虽然核心数增加了,但是CPU的整体性能没有太大的变化或者没有变化,因为频率降低其实就意味着性能降低。为了能让消费者选购这多核CPU,厂家在宣传时会说自己的频率很高,但这种所谓的高频率只是一个峰值,只能坚持很短的一瞬间。
一般核心比较多的CPU,会把自身的核心分组进行工作,我们称每组为一个节点,CPU通常会把核心分为两个节点。然后又可以细分为:NUMA架构(非统一内存访问)和UMA架构(统一内存访问)。NUMA架构的特点是CPU的每个节点都各有一个内存控制器和节点本身专用的物理内存,而UMA架构则是只有一个内存控制器,并且所有核共享一个大的内存池。
正常情况来说NUMA架构会更快一些,但是对于分了很多线程的软件来说,想要流畅运行会很吃力。因为NUMA架构的CPU,它的每个节点都要等另一个节点把数据处理完之后才能开始工作,所以不同节点访问内存的时间不同,因此这类多线程软件宁愿只使用一个节点,把其他的核心都空着不用,也不愿意跨节点运行,这样就造成了性能的损耗。
既然NUMA架构的CPU存在这样那样的问题,那么用UMA架构就可以避免吗?其实不然,UMA架构的CPU虽然是一个内存控制器控制所有的内存访问,以此来确保所有软件访问内存的用时相等,但是相比之下,NUMA架构的软件在访问内存时反而会更加方便直接,这样一来UMA的性能损耗会更大一些,并且节点越多,性能损耗就越严重。
所以说多核确实有多核的好处,在跑支持多核工作的软件时,多核CPU的确有着显著的优势。但是对多核CPU来说,性能损耗是无法避免的,而且核心越多,性能损耗往往就越严重。所以我们在选择CPU的时候,不能只看CPU的核心数,需要从其他方面来考虑。
全部0条评论
快来发表一下你的评论吧 !