2实现这个功能的方法是集成一个特殊的电路(热

 楼道监控     |      2018-10-11 15:56

  随着INTEL发布了更加高频率的Pentium 4处理器的同时,也对系统集成商提出了有关于CPU散热系统的新要求。其中有:CPU核心的极限温度;机箱内的极限温度;推介的一系列CPU散热器等.同时Intel公司还声明说:只有符合了一定的外界环境CPU才能够正常运作。

  然而,问题是:我们怎么样才能够完全满足这些散热要求。当然,如果我们使用的是惠普或者戴尔的品牌机,我们完全不必考虑这些。因为我们的制造者无论是在选择主板散热器或者其他组件的时候都充分考虑到了它们的散热特性。但如果说到是我们自己组装的兼容机的时候,我们可能没有考虑到这些处理器的特殊散热要求。此外,在所有的调查和统计中都表明:当用户的CPU用于超频的时候,机箱、散热器都似乎显得徒然。随着超频后的CPU频率的提高,它在电能消耗和热量产生都有了巨大的提高。而随着CPU核心温度的提高,势必会造成整个系统功能的不稳定。

  PC在超频期间不稳定是很正常的。但超频后CPU的性能比它默认的频率性能更加低的现象是很少的。但事实如此,这虽然听起来很荒缪,但还是经常发生在Intel Pentium 4处理器的身上。这个现象的发生主要是因为CPU的温度,更准确一点说,就是CPU内部的热量控制电路根据温度修改了CPU的性能。在我们今天的文章里我们会找出热量控制电路的工作原则和查出Pentium 4处理器的性能与它核心温度的关系。

  Intel为它的Pentium 4 CPU开发了一个新的技术:热量控制电路。目的是为了确保CPU能够稳定的工作和在CPU过热的时候保护CPU.每一个Pentium 4里面有两个热敏二极管。其中一个负责向主板的硬件监控系统报告CPU的温度。另一个则在核心最热的地方,接近ALU(算术逻辑部件运算器)的地方,构成了热量监控电路的一部分。

  AMD Athlon XP 的CPU也有一个相似的热敏二极管,但这两个处理器在这里有着本质的区别。Athlon XP的热敏二极管把CPU的温度报告给主板后,主板的一个特殊逻辑单元就会处理所收到的数据,当报告温度超越了临界值的时候,就会强行把PC关掉。当然,在关机后所有未保存的数据都会消失。Pentium 4的热量监视器则是基于不同的原理:即使CPU的温度在临界值附近波动,PC依然能够稳定的工作。系统会关闭也只是因为某些突发事件。这也意味着在温度的升高的时候,CPU必须控制好自己,以提供它运行应用程序的稳定性。

  2实现这个功能的方法是集成一个特殊的电路(热量监视器)到Pentium 4的核心里面,这个热量控制单元通过当前温度与临界温度的对比,而控制CPU热量的释放。热量监视器的工作意味着将会有两条电流的相互比较:一条通过热敏二极管。另一条是独立的,作为参考基准。热敏二极管的电阻会因温度而变化,因此通过它的电流也会随着CPU的核心温度而变化。通过与参考电流的比较,我们能够判断当前电流是否达到了临界点。热量监视器的工作原理也非常简单:如果CPU最热的地方超过一定值,它会发送一个过热信号使热量控制电路系统开始工作,减少热量的释放和阻止温度的进一步升高。

  有很多错误的观点关于这个热量控制机制。最常见的错觉就是Pentium 4在过热的时候减少了它的时钟频率。也就是说,如果它默认的频率是2.2GHz,在它过热的时候可能会降到1.8GHz或者更多。我们说现在的CPU频率就是它的正常频率的话可能就不太正确了。让我们了解清晰一点吧,通过Pentium 4 2.8GHz CPU的时钟频率的变化来了解这个过程。

  假设CPU的外频为133MHz,它乘与21的倍频就等于Pentium 4 2.8GHz。这个频率就是像WCPUid等软件所读出来的 Pentium 4的记号。这个频率决定了处理器的算术单元的工作效率。热量控制单元能够影响到这个频率。当温度正常的时候,ALUs(算术逻辑运算器)将会接受到2800MHz的频率。但当温度超过一定值的时候,热量监视器就会发送过热的信号,从而使热量控制电路开始工作。然后,更新的调节信号会发送到 CPU,以便决定多少时钟周齐应该被忽视以减少热量的释放。发送到CPU的调节信号如下图表所示:

  结果,一些时钟周期可能被从正常的2.8GHz中排除出去。也就是说,过热信号的缘故、一些时钟周期空周期所代替。因此,会将一个较低的最终频率发送到ALUs。虽然主板和CPU内部的时钟发生器还是保持在2.8GHz ,但是CPU的性能也会随着发热量的降低而降低。Intel声称说最终频率降幅可能达到30-50%之多,这主要取决于CPU的工作模式。

  3随着温度的降低,热量控制电路将会开始减少空时钟周期的数量以使CPU返回它原来的工作模式。只要CPU核心温度比临界值低1oC,热量监视器就会停止发送过热信号。随后,热量控制单元就会停止产生空的时钟周期,CPU的频率也就恢复到2800MHz的正常值。

  这里有一个问题:什么温度值被定为临界值呢?当热量监视器与热量控制电路开始工作的时候?其实,它对于不同频率的Pentium 4是不同的。此外,Intel声明说每一个CPU集成的热敏二极管在的制造时候已经被校准了,并且,一旦热量监视器的临界温度设定好以后就再也不能更改了。

  热量控制电路能够通过主板的BIOS或者用一个软件通过ACPI启用。如果它是通过软件启用的话,热量控制电路能够工作在“需求”模式。也就是说,通过软件调节空时钟周期和有效周期的比例,它能够在任何温度的情况下被启用。空时钟周期可以达到总频率的12.5% 到87.5%之间。因为这样,热量控制电路在默认的情况下是设置为禁用的。因此,它必须在系统启动前在主板的BIOS打开,或者在进入系统之后通过驱动或者一些其它特殊的软件将其打开。

  我们能够从热量控制系统这种技术中得到什么呢?例如:有一个Pentium 4 CPU,它工作在一个很差的散热系统之下,CPU和散热片之间没有涂上导热胶,并且系统风扇也关掉了,系统处于过热状态。所有的这些原因都可能导致CPU过热,因而这个CPU的性能将会比装备了良好散热系统或在其它具有良好通风环境的CPU差。这个问题在CPU超频的情况下更加明显。一颗超频的CPU会比它没有超频的时候发出更多的热量。因此,一个超频而又没有足够好散热条件的CPU会比它在没有超频的时候慢也是很有可能的。

  例如,我们把一颗Pentium 4 2.2GHz的CPU超频到4 2.8GHz,但不改进散热系统。在这个情况下,CPU的温度会迅速地达到临界值。同时,热量监视器和热量控制电路开始起作用:CPU开始产生空的周期。结果,用户会在启动的时候或者WCPUid类型的软件中看到CPU工作在2.8GHz上,但实质,处理器这时候的性能甚至比工作在Pentium 4 2.2GHz的时候还低。

  其实,热量控制电路并不如它所想象般的强大。可以说它在过热的时候对于保护CPU温度的升高是很有效的,但是在CPU风扇被关闭之后却不能够保持系统的正常运作。例如,在PC摔倒的时候。为了避免CPU受到损害,第二个热敏二极管要保持它与CPU温度的一定比值。当这个值在波动的时候,它就不再只是降低CPU的速度,而是发送了终结信号,从而关闭整个系统。而这时候的CPU的温度远远比它的临界值低。由于热量监视器和热量控制电路是集成到CPU里面的和主板独立开来的。所以抗过热系统的反应非常快:温度的比较只需要十亿分只一秒。因此,当你把散热器从CPU移走之后,这个系统依然可以有效的保护你的CPU。

  值得注意的信息:Intel声称在温度达到135oC的时候才会发出终结信号。

  在我们的测试里我们将要找出热量监视器控制热量的办法和查出Pentium 4的性能与温度的关系。

  为了观察热量监视器和热量控制电路技术的反应,我们选择了缓慢增加CPU的温度,直到它到达临界点为止,并观察性能的变化。如果我们把风扇关掉或者拿走的话,CPU的温度就会因变化得太大以至看不见明显的动态图。因此,我们使用了一个特殊的方法来增加CPU的温度。首先,我们通过Zalman风扇调节器来调节CPU风扇的转速。

  我们把风扇的转速从4500rpm调到2200rpm,并在最后把风扇拿掉,这样我们就能够通过降低风扇的效率而影响它的温度。如果我们把风扇完全关掉的话,就会因为温度增加的太快,以至过热保护系统还没有启用就把系统关掉了。但这样之后我们并没有把实验终止。因为简单的风扇转速调节并没有给我们一个满意的关于CPU温度的平滑变化图。还有,风扇的转速越低,风扇的散热效率自然也就越低了。到最后,最慢的转速和冷却效率图就会变成非直线

  C的室温似乎显得非常困难(但我们的实验就是需要这种精确的效果)。然而,我们可以使用温室来模拟外面的环境。在这里我们使用了一个SANYO的医学孵卵器MIR-253。它就像是一个162x50x70尺寸和254升容量的碗柜。显示器线、键盘线、鼠标线、和电源线都通过一个特别的开口连接到这个容器的内部。这样,把PC放在里面就可以用手动的方式控制温度的变化了。MIR-253孵卵器就像家里的冰箱一样通过连接一个发热器和一个冷却单元来改变温度。它的功耗是220W,能够保持的内部温度在-10oC 到+50oC之间,可以精确到0.1oC。但是在我们的实验中我们发觉它不能够达到如此高的精确度。因为里面有PC的存在,还有PC发出的巨大热量,使环境的温度有了很大的提高。因此,孵卵器的温度通常是在0.5oC-1.0oC之间波动。现在我们能够在MIR-253孵卵器的帮助之下,把温度精确到1oC。从而能够控制孵卵器内部CPU的温度适当地增长。

  我们决定在一个真实的应用程序环境而非综合的基准来测试CPU的温度对性能的影响。在测试的过程中使用了Unreal Tournament 2003游戏和FRAPSutility。FRAPS utility可以实时显示Direct3D应用程序的fps数,并且可以显示为较大的字母,这对于运行在低分辨率的程序来说是非常有用的.实质上FRAPS utility会占用一些CPU资源以至影响到结果,但由于我们在测试的时候配置并没有改变,所以获得的结果还是可信的。

  为了使游戏更多地依赖于CPU,在测试前应该改变一下Unreal Tournament的设置,以减少显卡的工作效率。把Unreal Tournament 2003分辨率设置为320x240,色深为16bit,运行在单个窗口模式。我们运行DM-Asbestos在即时战斗的模式。为了不影响贴图的速度,应该把所有的特效都关闭。游戏开始后,我们选择一处fps rate保持恒定的地方。然后停止操作,同时不要接触键盘、鼠标,以便保持游戏窗口的一定状态。这样,我们就能得到真实游戏的同一个场境的贴图速度。这个时候的速度将主要依赖于CPU的温度。因为游戏是运行在窗口模式的缘故,我们可以借助ASUS主板自带的热探头和和它的硬件监控系统软件来同步追踪CPU温度的变化。我们所需要做的,只是在Unreal Tournament 2003 开始之后,记录下孵卵器内部温度的升高数目。结果你将在等一下看到,现在让我们来谈一谈其他的。

  我们上面已经提到了,我们使用测试CPUIntel最新的支持超线程技术的Pentium 4 3.06GHz。但我们今天从另外一个方面来谈这个技术:它对CPU发热量的影响。一方面,由于使用超线程技术的CPU核心比其它低频率的CPU核心(像 Pentium 4 2.8GHz)大5%,这从理论上导致了发热量的增大。另一方面,由于一个物理CPU可以被系统认定为两个逻辑的CPU,使带有超线程技术的CPU工作起来会更有效率。但我们不能够明确地指出这样会对发热量产生什么影响。那么我们就不要猜了,让我们在主板BIOS打开和禁止超线程技术的两种情况下对Intel Pentium 4 3.06Ghz的CPU进行测试。测试的室温是20oC.CPU风扇的转速被设置为最大。我们通过CPU Burn utility,SiSoft Sandra 2003,Unreal Tournament 三个应用程序来提高处理器的温度。

  第一个项目是CPU Burn测试。我们运行了10分钟CPU Burn,然后记下CPU的温度。但是,有一点必须注意的是,这个软件在超线程技术出来之前就已经发布了。

  SiSoft Sandra 2003是一个很好的支持超线程技术的软件。我们循环地进行CPU多媒体的基准测试。在运行了57次测试之后,我们测量了CPU的温度。既然我们使用Unreal Tournament来测试,我们就要找出游戏运行到什么时候CPU的温度是最高的:是否打开了超线程技术。我们用以上提到设置的运行了10分钟游戏。然后记下CPU的温度(我们同样是通过ASUSPCProbe Utility来记录温度)。

  正如我们所看到的,处理器的温度在空闲模式的时候比在打开超线程的时候低。还有就是在不支持超线程技术的程序中温度也比较低。同时,为超线程技术做过优化的应用程序,因为它打开了所有的CPU管道以追求更高的效率,处理器会发出更多的热量。在进行热量监视器和热量控制电路试验的时候,在当Unreal Tournament在禁用超线程达到最高温度时,我们决定打开超线程,因为这样将能产生更多的热量。

  测试结果现在让我们来总结一下这篇文章的主要观点:温度对Pentium 4 性能的影响。孵卵器周围的最初温度是28o

  C。从这刻起,我们稳定地增加空气的温度,并且记下以下四个方面的参数:孵卵器的空气温度,机箱内的空气温度,CPU温度和CPU性能。

  现在让我们看看得到了什么结果?当CPU的温度超过了72oC(阶段1)的时候,游戏的速度开始变化。从那时候起我们看到了Unreal Tournament的速度缓慢地减缓。我们估计是因为热量控制电路根据CPU的温度限制了它的速度。但我们发觉当现在CPU的温度恒定(阶段2和3)的时候,游戏的性能还是保持下降的趋势。这意味着Pentium 4表面的温度不变,但它核心的温度还是在增长的。我们可以说,这个阶段温度与速度成正比。也就是说,热量控制电路起了很好的作用。

  C升到63oC;CPU的温度从69oC升高到85oC。我们的实验表明了Pentium 4 3.06GHz的临界温度是72oC。因为从那时候起,热量监视器开始发送过热信号,热量控制电路开始减慢CPU的速度。当我们把CPU的温度提升到比临界值还高13oC的时候,我们发现CPU的性能有两次的降低;Unreal Tournament 2003也从115fps降到了49fps.不幸的是,这时我们再也不能提高温度了,因为MIR-253 孵卵器只能提供+50oC的温度。因此,我们所能做的是关闭CPU风扇。这时,CPU的温度猛升到94oC,而且在一分钟之内系统就被关闭了。但在这期间,Unreal Tournament 2003的速度并没有变化,这也激起了我们的好奇心。但带给我们的事实是,Pentium 4 3.06GHz的性能比它在最高性能的时候降了2.3倍。于是,我们决定用另外一种方法来检查我们的设想正确与否。我们使用CPU RightMark 2 RC3测试.这个基准测试能看出CPU的实时性能,还有允许跟踪是否CPU的性能降低了。8

  CPURightMarK 生成的图形改变太快,所以不允许我们用增加环境温度的方法来测试。为了使CPU的性能随着CPU RightMarK而下降,我们必须在开始的时候对CPU进行预热,但是不要使温度达到临界值。我们没有把CPU风扇关掉,因为这样做的话会使温度升高到临界值,热量控制电路也就会马上降低CPU的性能也就能达到我们预期的效果。因此我们用另一种预热的方法:通过关掉系统的风扇。这样的话CPU的温度就会足够快的达到所需要的温度,RightMark也就能显示出较好的结果。结果是,我们得到了以下的性能图表。它没有标出温度,但我们并不是很需要知道温度。毕竟,我们对CPU速度的调节极限更加感兴趣。

  Pentium4使用的热量监视器和热量控制电路技术并不是一个普遍使用的抗过热技术。我们的实验证明了这个技术对于阻止温度的升高的确有一定的作用,但是存在高消费:性能的损失达到两倍。此外,我们的测试也表明了在CPU风扇减慢的时候,热量控制电路技术并不能保持Pentium 4 3.06GHz CPU的稳定性。Pentium 4 对环境的温度存在高度的免疫力。无论是酷热的炎夏还是冰冷的寒冬,它都能够稳定地工作。可能,即使在其他CPU结冰的时候,Pentium 4 还能保持工作,虽然性能可能会有点损失。Intel声称在经热量控制电路调整后,性能会比默认频率低50%.但我们的测试表明:在过热的时候性能的损失超过50%。但是,它还是比Intel的通过软件控制热量控制电路的所能达到的损失87.5%低。

  我们的测试还显示了为什么Pentium 4 处理器有时候工作得比预期的慢。即使CPU没有被超频,但还是有很多其它过热因素:一个很差的CPU风扇,小的机箱,没有机箱风扇,太多发热量大的扩展卡,或者只是因为房间的温度过高。无论什么过热原因,热量控制电路会设定一定的性能-温度比。还有,我们的测试表明了Pentium 4 3.06GHz CPU的核心温度从72升高到75