lis*_*szi 4 cpu-load intel cpufreq temperature turbo-boost
我安装了 kubuntu 14.04,CPU turbo 频率有问题。我已经阅读了很多关于它的内容,但找不到正确的答案。
我的联想 Y580 笔记本中有一个 i7-3630QM CPU @ 2.40GHz 和 3.20GHz Turbo。如果我将 CPU 置于满载状态(在 8 个线程的搅拌机中进行渲染),所有内核的频率都会跃升至 3.2GHz 左右,但是几秒钟后,当温度升高时,频率会降低至 2.4GHz,并保持不变在渲染过程中,(风扇不以最大速度运行)。
当我使用 ubuntu 12.10 时没有出现这个问题,但它在 13.10 和 14.04 中出现。
我的笔记本散热器非常好,所以全速涡轮增压没有过热问题(在 ubuntu 12.10 中,3.2GHz 下的 CPU 温度为 85-90°C),所以我想全速使用它。我如何在 ubuntu 14.04 中以 3.2GHz 的全速使用带有涡轮增压的 CPU,而没有这个(温度?)限制?
(与terdon讨论后)我认为问题在于cpu freq在风扇响应高温之前按比例降低。cpu 从 3.2GHz 降到 2.4GHz 后,风扇转了一会儿,但由于 cpufreq 已经降级,它产生的热量较少,因此风扇的转速回落。没关系,如果cpu冷却后频率再次上升到3.2GHz,但它仍然停留在2.4GHz。
一些测量:
i7z 程序的输出,渲染刚开始时:
Cpu speed from cpuinfo 2394.00Mhz
cpuinfo might be wrong if cpufreq is enabled. To guess correctly try estimating via tsc
Linux's inbuilt cpu_khz code emulated now
True Frequency (without accounting Turbo) 2394 MHz
CPU Multiplier 24x || Bus clock frequency (BCLK) 99.75 MHz
Socket [0] - [physical cores=4, logical cores=8, max online cores ever=4]
TURBO ENABLED on 4 Cores, Hyper Threading ON
Max Frequency without considering Turbo 2493.75 MHz (99.75 x [25])
Max TURBO Multiplier (if Enabled) with 1/2/3/4 Cores is 34x/33x/32x/32x
Real Current Frequency 3192.01 MHz [99.75 x 32.00] (Max of below)
Core [core-id] :Actual Freq (Mult.) C0% Halt(C1)% C3 % C6 % C7 % Temp
Core 1 [0]: 3191.98 (32.00x) 100 0 0 0 0 83
Core 2 [2]: 3192.01 (32.00x) 99.8 0 0 0 1 92
Core 3 [4]: 3192.00 (32.00x) 100 0 0 0 0 88
Core 4 [6]: 3192.00 (32.00x) 100 0 0 0 0 76
...
Run Code Online (Sandbox Code Playgroud)
5-10 秒后(也满载):
Cpu speed from cpuinfo 2394.00Mhz
cpuinfo might be wrong if cpufreq is enabled. To guess correctly try estimating via tsc
Linux's inbuilt cpu_khz code emulated now
True Frequency (without accounting Turbo) 2394 MHz
CPU Multiplier 24x || Bus clock frequency (BCLK) 99.75 MHz
Socket [0] - [physical cores=4, logical cores=8, max online cores ever=4]
TURBO ENABLED on 4 Cores, Hyper Threading ON
Max Frequency without considering Turbo 2493.75 MHz (99.75 x [25])
Max TURBO Multiplier (if Enabled) with 1/2/3/4 Cores is 34x/33x/32x/32x
Real Current Frequency 2462.52 MHz [99.75 x 24.69] (Max of below)
Core [core-id] :Actual Freq (Mult.) C0% Halt(C1)% C3 % C6 % C7 % Temp
Core 1 [0]: 2394.01 (24.00x) 100 0 0 0 0 65
Core 2 [2]: 2394.00 (24.00x) 100 0 0 0 0 74
Core 3 [4]: 2462.43 (24.69x) 100 0 0 0 0 71
Core 4 [6]: 2462.52 (24.69x) 99.9 0 0 0 0 61
...
Run Code Online (Sandbox Code Playgroud)
预先感谢您的回答。
这不是错误,这是一个功能!检查您的温度,CPU 速度降低的唯一原因是您过热。看看你显示的第一个输出,你的一个内核在 92°C 下运行!一开始就很热,而且在您的时钟速度降低之前它可能会变得更高。
您可以通过运行sensors来检查 CPU 可以处理的最高温度。例如,对于我的英特尔 i7:
$ sensors
coretemp-isa-0000
Adapter: ISA adapter
Core 0: +77.0°C (high = +95.0°C, crit = +105.0°C)
Core 2: +79.0°C (high = +95.0°C, crit = +105.0°C)
Run Code Online (Sandbox Code Playgroud)
因此,在我的机器上,95.0°C 被认为是高温度,而 105°C 是机器将关闭的临界温度。您的规格可能略有不同,但 92.0°C 绝对高。
现在,您可以强制您的 CPU 保持相同的时钟速度。这是由 CPU 调控器控制的。您可能已将其设置为ondemand,但可以使用以下选项:
例如,要将您的调控器更改为“性能”,请运行以下命令:
echo "performance" | sudo tee /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
Run Code Online (Sandbox Code Playgroud)
但是,可能的结果只是在达到高温时您的计算机将关闭。它也可能仍然缩小规模,我不确定安全功能是如何实现的。无论如何,重点是您不想这样做,因为它会严重损害您的硬件。
您的计算机不会让您超过特定温度并且您不想搞砸的原因有很多。我不知道有什么方法可以实际禁用温度限制,如果我这样做了我也不会告诉你。有更简单的方法,但禁用温度安全限制无疑是破坏计算机的好方法。
经过长时间的搜索,我在 tis 页面上找到了我的问题的答案:http : //www.webupd8.org/2014/04/prevent-your-laptop-from-overheating.html
旧的acpi-cpufreq不能很好地控制涡轮增压,但intel_pstate驾驶员thermald可以。我已经启用intel_pstate并安装了thermald. 现在 cpu 可以在 turbo boost 模式下运行,几乎连续地在 3.2GHz 上运行。这意味着在 Blender 中渲染期间大约有 25-30% 的额外性能。
不幸的是,这也意味着更多的热量,所以我的 CPU 核心温度在 90-100°C 左右移动,有时会自行调节。所以 tredon 你是对的,我应该清洁风扇。:)
在 Intel 的页面上,105 °C 是我的 CPU 的最高结温,在它上面激活了热节流,所以我不必担心 CPU 过热。
不幸的是,我找不到任何有用的示例来配置和使用thermald,所以我保留了默认选项,但正如我所读到的那样,它对冷却有很大帮助。
| 归档时间: |
|
| 查看次数: |
14836 次 |
| 最近记录: |