我目前有一个双核处理器在工作,而四核则在家里。我注意到,就启动应用程序/浏览网络而言,两台PC都相当。
我可以看到的区别是我的双核是2.8GHz,我的四核是2.4GHz。
拥有时钟速度快的双核或时钟速度中等的四核会更好吗?
我目前有一个双核处理器在工作,而四核则在家里。我注意到,就启动应用程序/浏览网络而言,两台PC都相当。
我可以看到的区别是我的双核是2.8GHz,我的四核是2.4GHz。
拥有时钟速度快的双核或时钟速度中等的四核会更好吗?
Answers:
注意:此答案写在8年前。此后,并行编程变得越来越重要。这可能是由于固有的时钟速度限制和快速接近的晶体管尺寸限制引起的。
您的主要问题是软件不是为多核编写的。
请看Jeff Atwood关于选择双核或四核的出色文章。
对于大多数软件而言,使用两个内核后,您很快就会达到收益递减的地步。在《四核台式机和收益递减》中,我质疑当今的软件能真正有效地使用甚至四个CPU内核,远不及我们几年后看到的不可避免的八个和十六个CPU内核。
您在这里得到了回答(摘自杰夫的文章的重点),
但是,此处有些意外,例如Excel 2007和“迷失星球”的“并行操作”设置。软件工程最终可能会发展到时钟速度比并行性重要的地步。或者,如果我们不能在更快的时钟速度和更多的CPU内核之间做出选择,那么最终可能无关紧要。但是与此同时,时钟速度在大多数情况下都是赢家。越来越多的CPU内核并没有自动变得更好。典型的用户将拥有他们负担得起的最快的双核CPU,从而获得更好的收益。
该问题的前端总线(这个词总是逗得我)。
随着Nehalem的改变,就像ArsTechnica去年所说的那样。
摩尔定律给处理器设计人员带来了晶体管丰富的尴尬,这是英特尔45纳米Nehalem处理器中最明显的地方。Nehalem在今年晚些时候推出了4核和8核版本,Nehalem将大量的硬件打包到一个处理器插槽中。(早期的数字显示四核Nehalem的晶体管数量为7.81亿;尚未出现8核模型的数字。)但是,尝试将所有硬件与Intel平台的现有前端总线体系结构一起使用将是愚蠢的。因此,同样重要的是,Nehalem还敲响了英特尔早已成熟的前端总线体系结构早该死的丧钟。
英特尔新的QuickPath Interconnect(QPI)代表的英特尔系统带宽状况的根本变化可能是影响Nehalem设计的最大因素。在QuickPath和Nehalem的集成内存控制器之间,Nehalem处理器将能够访问前所未有的聚合带宽,尤其是在两插槽和四插槽的实现中。
AMD较早地将内存控制器移至处理器中,并使用了Hypertransport。
根据我的经验,从一核到两核都有巨大的性能优势。突然,一个高CPU程序不会锁定您的计算机或使其变得异常缓慢。巨大的差异。
但是二到四?对于99%的人来说,这不会有任何改变。您将不得不一次运行很多程序,或者使用可以利用两个以上内核的程序(实际上,这些内核并不多)。想到某些媒体编码器。
在这方面,英特尔酷睿2s和AMD现象之间也存在差异。AMD使用Hypertransport,这是一种点对点协议,因此每个内核都有专用带宽。英特尔酷睿2(而不是酷睿i7和其他基于Niehalem的CPU)使用前端总线,该总线是共享带宽,因此您有更多的内核在争夺相同带宽。
在某些情况下,这可能会使同一个时钟四核(略微)变慢。物有所值仍采用双核恕我直言。话虽如此,我有一个四核。
我喜欢Donald Knuth的总结:
在我看来,这似乎或多或少地像是硬件设计师的想法已经用尽,他们正试图通过让我们的机器仅在少数几个机器上运行得更快,就将摩尔定律的未来消亡归咎于软件作者。关键基准!如果整个多线程的想法最终失败了,而不是被认为是那么棒的“ Itanium”方法更糟,那么我一点都不感到惊讶–直到事实证明,所希望的编译器基本上是不可能编写的。
让我这样说:在过去的50年中,我编写了1000多个程序,其中许多程序规模很大。我什至没有想到其中有五个程序将通过并行性或多线程功能得到显着增强。当然,例如,多个处理器对TeX毫无帮助。
对于某些应用程序,利用多核非常容易。但是某些其他应用程序将永远不会从中受益,而其他一些应用程序如果开发人员对其进行优化,则可能会受益(这非常困难)。
这取决于。如果您正在做的事情将大量使用每个核心,则最好使用4个核心(视频编辑,渲染等)。目前大多数人会发现两个快速内核更好,因为编写的应用程序很少能充分利用4个内核
一切都归结为芯片的TDP或其热设计点。TDP对平台的约束越多,您从Intel的Turbo模式中获得的利益就越大。让我换一种说法:为了将四个内核装入130W TDP,与在同一TDP上只有一个内核相比,每个内核必须以更低的时钟速度运行。
在较高的TDP时,通常有足够的散热空间来运行各个内核。在较低的TDP时,CPU制造商必须在内核数量和时钟速度之间进行权衡-这就是我们可以得到一些乐趣的地方。
所有这些都是在必须选择内核(或线程)和内核频率之间进行的。
如果您要进行大量视频编码,3d渲染或分布式源代码构建,则内核越多越好。从1到2到4到8核时,这些类型的应用程序的性能将出现明显的差异。
否则,运行标准应用程序实际上不会从更多内核中受益。即使是游戏,也不会真正充分利用多个内核。IMO,您最好把钱花在更好的图形卡上。