为什么CPU制造商停止增加其处理器的时钟速度?[关闭]


63

我已经读到,制造商不再专注于更高的时钟速度,现在正在致力于其他事情以提高性能。

  • 装有英特尔®至强®处理器E3110的旧台式机,时钟速度为3.0GHz
  • 以及带有AMD Opteron(TM)处理器6272的新服务器,时钟速度为2.1GHz

使用(单线程)执行简单的加密比较时

 openssl aes256c

台式机的性能远远优于服务器。

因此,即使进行了最新的优化,为什么时钟频率更好的处理器性能也会更好?


57
台式机芯片是双核的。该服务器是16核CPU。根本不适合使用单线程基准测试。
MSalters

@learner-因为处理器的速度无法随着它们所需的电压量的增加而增加,从而降低了热量。通过专注于功耗,理论上他们将能够在将来提高处理器速度。
Ramhound

1
请列举“制造商”的实际情况“降低”时钟速度(不比较苹果和橙子)或将问题标题限制为“不增加”。
Jan Doggen

8
自K6 / Pentium时代以来,AMD与Intel的时钟速度一直不是一个公平的比较。当AMD的Athlon处理器的核心时钟分别为1.8或2.1时,它们的销售价为2500+或3000+,但是它们通常分别以确实时钟为2.5或3GHz的Intel芯片进行基准测试。有简单的方法,现在的架构之间存在太多的差异,使简单的时钟速率的比较。
KeithS 2013年

Answers:


72

制造商不再专注于提高时钟速度的原因是因为我们无法再足够快地冷却处理器以使其可行。时钟速度越高,产生的热量就越多,现在我们进入了一个阶段,由于冷却它的能量过多,提高处理器速度不再有效。

其他答案详细介绍了更高的时钟速度并不意味着在所有领域都拥有更好的性能。


1
+1我似乎是在碰壁时立即购买了我的机器,就绝大多数市场(非OC)而言,我8岁的P4 3.4 GHz可能是最快的时钟速度。
Karthik T

2
请注意,功耗也是一个问题。如果您拥有16核3.0GHz,则可能会消耗200瓦以上的功率,而最普通的电源几乎无法与系统的其余部分配合使用。
Mixxiphoid

9
@Mixxiphoid您还需要以某种电路可以处理的电压将200W以上的功率带入CPU。这本身就是一项艰巨的任务。
CVn

1
不仅如此,要增加CPU时钟,他们还需要增加流水线,但是每次您需要分叉代码,更改上下文,跳转或清除内存时,您都需要清除整个流水线,并且需要再次填充它以提供该指令的结果,因此最好减少流水线和CPU频率,因此每次您需要进行派生,更改上下文,跳转时,都无需等待很长时间即可再次填充流水线。
Lefsler

1
@demonofnight:说“每次您需要(...)跳跃”都太过分了。无条件的直接分支不会造成控制危害,因此它们不会超出条件分支的数量,通过各种技术可以预测到约95%-99%(数据基于某些基于SPEC的论文)。如果目标尚未注册并且存在对它的错误预测,那么直接分支确实会带来问题。我不确定“派生代码”或“清除内存”是什么意思,但是上下文切换不应经常执行(中断和可能的I / O)。
Maciej Piechotka

37

处理速度比时钟速率高得多。

  • 由于流水线安排的不同变体,并且每个内核中都有多个组件单元(加法器等),因此不同的CPU在相同的时钟周期数内可以执行不同的数量。尽管在测试中并非如此,但您经常会发现“较慢”的芯片比快速的芯片(仅按时钟速率测量)可以做的更多,这是因为它能够在每个滴答声中做更多的事情。

  • 您执行的测试可能对CPU体系结构的差异非常敏感:可以针对特定体系结构进行优化,您可能会发现它的性能不仅在Intel芯片和AMD芯片之间不同,而且在不同系列的Intel(或AMD)芯片之间也不同。它也可能使用单个线程,因此不会利用CPU的多个内核。

  • 出于功率和热量管理的原因,人们正在降低时钟速率:提高时钟速率不会对功耗和热量输出产生线性影响。

  • 由于上述非线性关系,对于当今的需求而言,拥有多个处理单元要比推动一个单元的速度不断提高的效率要高得多。这还可以提供一些巧妙的技巧来节省电量,例如在不使用时关闭各个内核,并在需求再次增加时恢复它们。当然,如果您同时运行两个或多个实例,则多核当然不会对单线程算法有所帮助。


那么时钟速率和功耗之间的关系是什么?
user84207 2014年

$ P = CV ^ 2f $。您可能还需要阅读此内容
zakkak,2015年

19

您为什么认为制造商实际上仅通过比较两个处理器来降低时钟速度?

  1. 6272具有3 GHz的涡轮速度。较低的基本速度只是为了降低平均功率,并在所有核心承受压力时保持工作区可接受的TDP。
  2. AMD的下一代台式机高性能芯片FX-9590将达到5 GHz。

同样,时钟速度与每个时钟周期的性能也不相同。i7-3930K可以拥有3.8 GHz的P4与3.2 GHz的内核,但这并不意味着P4内核更快。

对于16核设计,这里关于功耗的所有说法都是完全正确和正确的,您自然会更加关注TDP问题。

同样,仅测试openssl的基准测试方法也很简单,可以得出真实的数字。也许您应该尝试任何加密基准测试套件。


3
只是为了比喻时钟速度=性能谬误。想象一个人以很小的步伐但非常快地(高时钟速度),而另一个人以非常慢的速度(较低的时钟频率)大步地迈步。迈出大步的人可以更快地行动。
Martin Konecny 2013年

@MartinKonecny:很棒的可视化!
扎克·拉塔

2
@MartinKonecny我的理解是,大多数汇编程序指令(ADD,MOV,IMUL等)都是在单个周期内执行的。那么,对于这些新处理器,是否可以在单个周期中执行多个指令?
nialsh

4
@nialsh对于CISC计算机根本不是真的(事实上CISC的定义之一是指令要花费多个周期),如果所有指令都花费了一个周期,那么最慢的指令将花费与最快的指令相同的时间来执行。指令。
Scott Chamberlain

x86 CPU过去每条指令需要多个时钟周期,但是如今,它们可以在每个时钟周期中运行多条指令。
Oskar Skog's

13

您的测试用例(aes-256加密)对特定于处理器的优化非常敏感。

有各种CPU具有特殊指令,旨在加快加密/解密操作。这些特殊说明不仅可能仅出现在您的台式机上-可能是AMD CPU具有不同的特殊说明。另外,openssl可能仅对Intel CPU支持这些特殊指令。您是否检查过这种情况?

要找出哪个系统更快,请尝试使用“适当的”基准测试套件,或者更好地使用典型的工作负载。


该特殊说明的翻译在哪里进行?我不确定是否有用于不同指令集的不同编译器。
Shubham

编译器确实具有针对不同指令集的选项,和/或特殊的“内部功能”可以紧密地映射到特定于CPU的指令。单个可执行文件可以检查其运行在哪个CPU系列上,并根据该系列选择不同的代码路径。
罗素·波罗戈夫

10

简单:AMD芯片是16核芯片,因此速度要快得多。在115瓦时,这意味着每个内核产生的功率约为7瓦。如果每个内核以3 Ghz运行,这将是无法实现的。为了达到7瓦的数字,AMD降低了时钟频率。将时钟频率降低10%可以将功耗降低20%,从而使您可以在芯片上增加25%的内核。


10

正如其他人所说的,如果我们过去推动相同的相对时钟速率增加所需的电压,我们将无法再有效地冷却CPU。曾经有一段时间(P4时代或更早),您可以购买新的CPU并看到“立即”收益就是速度,因为与上一代产品相比,时钟频率已大大提高。现在,我们碰到了各种各样的热墙。

每个新一代的处理器的时钟速率都略有提高,但这也与适当地冷却它们的能力有关。英特尔等芯片制造商一直在致力于缩小CPU的芯片尺寸,以使其具有更高的能效并在相同时钟下产生更少的热量。顺便提一句,这种缩小的芯片尺寸使得这些芯片使现代处理器更容易因过电压而不是过热而死。这意味着它还限制了任何当前一代CPU的最高时钟速率,而无需芯片制造商进行其他优化。

芯片制造商高度关注的另一个领域是增加芯片上的内核数量。这确实会导致计算能力的显着提高,但仅当使用利用多核的软件时才如此。 注意此处的计算能力和速度之间的差异。简而言之,速度是指计算机可以执行一条指令的速度,而计算能力是指计算机在给定的时间内可以执行多少次计算。 现代操作系统和许多现代软件确实利用了多个内核。问题是并发/并行编程比标准的线性编程范式更困难。这增加了市场上许多程序充分利用这些更新的处理器功能所花费的时间,因为许多开发人员不习惯以这种方式编写程序。当今市场上仍有一些程序(现代的或旧的)无法利用多核或多线程。您引用的加密程序就是这样一个例子。

芯片制造商关注的这两个领域是内在联系的。通过减小芯片的裸片尺寸和功耗,它们便能够增加所述芯片上的内核数量。最终,尽管如此,这也将碰壁,导致另一个更剧烈的范式转变。

这种范式转变的原因是由于我们接近硅作为芯片生产基础材料的极限。英特尔和其他公司一直在努力解决这一问题。英特尔已经表示,它可以替代硅,并且我们可能会在2017年以后的某个时候开始看到它。除了这种新材料之外,英特尔还在研究3D晶体管,这种晶体管可以“有效地将处理能力提高三倍”。这是一篇文章,提到了这两种想法:http : //apcmag.com/intel-looks-beyond-silicon-for-processors-past-2017.htm


2
  • 热损失 H等于频率的4度f

    高〜f ^ 4

    因此,频率的微小增加导致高的热损失。

  • 进一步小型化

    更高的频率导致进一步的晶体最小化。目前,我们尚无与纳米级材料有效合作的技术,而纳米级是极限。


2
-1第四个电源部分不正确。CPU中的功率(每秒产生的热量)(大致)与时钟频率成线性比例,例如P〜f CV ^ 2 + P0(en.wikipedia.org/wiki/CPU_power_dissipation)。授予的电压取决于时钟速度(尽管不一定是线性的)。请参阅:physics.stackexchange.com/questions/34766 底线,CPU产生的功率在1.6 GHz-5 GHz范围内的时钟速度上大致呈线性至二次方。(不支持f ^ 4)。
jimbob博士13年

2

如其他答案所述,CPU制造商希望降低时钟速度以控制功耗和散热。为了以相同的时钟速度执行更多工作,使用了几种策略。

大型片上存储器高速缓存可以使更多数据“接近” CPU,可以以最小的延迟进行处理,而主存储器则要慢得多。

不同的CPU指令需要使用不同数量的时钟周期来完成。在许多情况下,您可以使用简单的电路在多个时钟周期内实现操作,也可以使用更复杂的电路以更少的时间来实现。

奔腾4是英特尔演进中最生动的例子,奔腾4在时钟速度上是一个很大的离群值,但性能却不成比例。位移指令在以前的芯片中可以在一个周期内位移32位,因此在Pentium 4中使用的电路要简单得多,每个位移需要一个周期。人们期望Pentium 4架构由于其简单性而可以扩展到更高的时钟速度,但这并没有奏效,而快速复杂的移位电路又回到了Core和更高版本的架构中。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.