电脑在运行时中央处理器(CPU,Central Processing Unit)的温度。CPU保证在温升20到30度的范围内一般是稳定的。
电脑在运行时中央处理器(CPU,Central Processing Unit)的温度。CPU 保证在温升 20 到 30 度的范围内一般是稳定的。
CPU 温度提高是由于 CPU 的发热量大于散热器的排热量,一旦发热量与散热量趋于平衡,温度就不再升高了。发热量由 CPU 的功率决定,而功率又和电压成正比,因此要控制好温度就要控制好 CPU 的核心电压。
当电脑因为 cpu 温度过高,或硬件问题导致进不了系统,无法第三方软件查看 cpu 的温度时,我们还可以采用第 2 种方法,即:进入 BIOS 里查看 cpu 温度。
如果出现电脑死机进不了系统,或电脑系统蓝屏怎么查看是不是内部电脑硬件温度过高引起的呢?这个肯定就不能使用软件查看了,不过我们可以进入电脑 bios 设置里的 power 里面查看电脑硬件的健康情况和温度等。
温度测量
随着电脑的更新换代,原来只有服务器才能用的双核,四核已经进入普通家庭用户了,CPU 数量从 1 核,2 核,3 核到 8 核,运行速度越来越快,CPU 的温度越来越高,电脑出现问题的时候也越来越多,cpu 温度多少正常,才不会导致出现电脑蓝屏重新启动呢?有些说是 60,有些说是 70,到底多高cpu 温度不会死机呢?
CPU 保证在温升 20 到 30 度的范围内一般是稳定的。也就是说,cpu 的耐受温度为 60 度,按夏天最高 35 度来计算,cpu 温度应该为 55 度,不能超过 65 度。当然按此类推,如果你的环境温度是 20 度,cpu 最好就不要超过 50 度。温度当然是越低越好。不管你超频到什么程度,都不要使你的 cpu 高过环境温度 30 度以上。 因为 CPU 长时间工作在高温度下,容易缩短使用时间,而且可能导致直接挂掉。所以不要在 BIOS 里把 CPU 温度调到 65 度,一般 60 度就可以了。
多数现存的程序从主板上的 Super I/O 芯片读取温度,电压以及转速信息,通过芯片生产厂家提供的公式进行转换,然后显示给用户。所有人都承认通过这种途径测量的电压从来不是精准的。
测量电压可以用万用表这样简单和直接的办法,可是 CPU 温度怎么办?很多人想知道关于 CPU 温度,他们主板上的传感器有多精确。以我个人的经验,我只能说“这些传感器很一般”。他们只能达到帮助判断 CPU 是否过热的程度。
厂家进行温度监测的方式造成了这个精确性问题。有些主板使用一个安置在 CPU 插座内部的测温二极管。这个二极管要直接接触 CPU 底部来达到测温的目的 —- 这也许是最不准确的测温方式了。
好在这种拙劣的方式不再常用(实际上基本没有了)。这是因为绝大多数现代 P4/Athlon64 开始使用现代 CPU 内部安置的温度二极管,这种方式相对精准得多了,可是仍然有一些因素干扰信息的精确读取。
这些因素包括信号在到达 Super I/O 芯片被采样前必须通过的那些电路和部件。另外一个因素就是传感器所处的位置。在一个 CPU 核心上有若干部位产生热量,有些部位会比另一些部位产生更多的热。如果我们把一个传感器安置在 CPU 核心一个并不产生大量热的位置的话,这样我们测到到的温度会和把传感器安置在 CPU 核心最热的部分完全不同。
技术革新
Intel 和 AMD 双双意识到为止测温问题解决的并不好,于是用到了一个新的方式。这个方式仍然包括热敏二极管,但是热敏二极管是一个模拟器件,所以读数必须被转换成数字数据。这个工作由 ADC(模数转换器)来完成。
一个热敏二极管加上一个模数转换器就构成一个被称为 DTS(数字温度传感器)的部件。理论上来说这个 DTS 的工作方式十分简单:一个 CPU 核心上的电路从热敏二极管上采样然后把数字数据输出到 CPU 一个特定的寄存器中,从而任何程序都可以随意读取该数据。这种方式的长处就是所有工作都在 CPU 内部即时完成,和易于被干扰和衰弱的模拟信号相比,数字信号传输的时候不会损失精确性。
这个系统另一个优点就是你可以在一块芯片上集成若干个传感器。Intel 和 AMD 都在 CPU 的每一个核心上集成了一个 DTS,这意味着你可以看到你每一个核心的温度。例如当你在双核 CPU 上运行程序并把该程序的相关性设定到某一个核心的时候,你会看到只有一个核心会升温并且会升得非常之快。当然另一个核心温度也会上升,毕竟两个核心共处在一个硅片上,只是不会上升到全力工作的核心那么高罢了。
Intel 和 AMD 都使用 DTS 来监测过热并通过“throttling”或者完全关闭系统来保护 CPU, 用何种方式由不同的极限温度决定。
第一个官方宣布使用 DTS 的是 Intel 在 Core Duo(Yonah)系列,随之延续到 Core 2 Duo 系列。AMD 官方宣布从 Rev. F Opteron 开始支持 DTS。有趣的是通过一些测试,DTS 早在 AMD 64 芯片就已经存在了。
Intel 指出他们的 DTS 被安放在 CPU 核心最热的部位。AMD 虽然没说明他们把 DTS 放在了哪里,我可以肯定不是在最凉快的部分。
通过无数的测试,我发现对于 Intel CPU,DTS 报告的温度显得非常的合理。Intel 的白皮书指出他们的 CPU 在出厂之前 DTS 都通过了严格的校准。
在 AMD 的 Rev. F 芯片上,DTS 的温度报告也显得十分准确,但是从各种途径的报告和我从 AMD 白皮书上了解到的来看,AMD 的 CPU 在出厂前 DTS 没有经过同 Intel 一般正确的校准。AMD 声称他们 DTS 的精确度在±14oC。我注意到 AMD 的一些较老的 CPU(Rev F 之前)或者在两个 Core 之间有一个很大的差值,或者报告一个非同寻常的低温。我觉得这也可以理解,毕竟在 AMD Rev F 之前的 CPU, DTS 还没有被官方支持。
有两个更为重要的数值你一定要了解:
1、TCaseMax:这个值表示能使 CPU 100%稳定运行的在 核心表面正中或者是 IHS (就是 cpu 的金属顶盖)正中的最高温度。
2、Tjunction (or TjunctionMax) :这个值表示在核心和核心所在 PCB 板之间所容许的最大温度,通常这个值要远高于 TCaseMax.
很重要的一点就是在解读 DTS 温度时不要混淆这两个值。当 DTS 报告一个比 TCaseMax 还要高的温度时并不意味着 CPU 处于危险状态。因为 TCaseMax 是 CPU 所能忍受的最高外部温度。可是如果 CPU 达到了 Tjunction,你就要小心了,这是一个你不想让 CPU 超过的温度。
在 Intel CPU 中 TjunctionMax 不难被测到,在 AMD Rev. F CPU 中,TCaseMax 可以被检测到。可惜的是我还不知道如何检测 Intel CPU 的 TCaseMax, 或者 AMD CPU 的 TjunctionMax (这个值更为重要)。
DTS 令人吃惊的是它用起来很简单。传统的 Super I/O 芯片要求你对不同的 I/O 芯片进行编程,因为他们所用的地址和算法各不相同。
使用 DTS 的话,你只需要读取 MSR( for Intel ) 或者 NB 寄存( for AMD ), 简单的计算一下就成了,下面是公式:
AMD_CoreTemp = DTS_Value – 49
AMD 的 DTS 数据是 8 位,可以理论上报告-49 – 206 摄氏度的范围。
Intel_CoreTemp = Tjunction – DTS_Value
Intel 的 DTS 数据是 7 位,可以报告 Tjunction 和 Tjunction 往下 126 度。如果 Tjunction 是 85 度(Conroe),则理论值下限就是-42 度。可是我从没见过哪个 CPU 能报告低于 0 度的温度。这些 CPU 的 DTS 看来在某些温度点就停止继续下探了。