我有一个关于 Intel Turbo Boost 以及在 Ubuntu 12.04 中禁用它的功能的问题。我想禁用 Turbo Boost,因为它会产生大量热量,而且我发现在 Ubuntu 中不需要它(与 Windows 相比,它非常轻量)。我发现通过安装 msr-tools 并运行 modprobe msr,然后:
wrmsr -p(PROCESSOR) 0x1a0 0x4000850089
其中 PROCESSOR 是我的 CPU 核心的编号,它允许我关闭该核心的 Turbo Boost。将 msr 添加到我的 etc/modules 并将 wrmsr 行添加到我的 rc.local 后,我发现我能够在启动时关闭 Turbo Boost。
我的问题是:我使用的这种方法是否可以安全地禁用 Turbo Boost,还是我应该尝试寻找其他解决方法。
我有一台 MSI-GE60,BIOS 中没有 Turbo Boost 设置,所以像这样更改它似乎是唯一的方法。
感谢任何能提供帮助的人。
答案1
您可以将最大 CPU 频率设置为略低于 turbo boost 的设置 - 附件是我在 rc.local 中使用的代码
echo 1 > /sys/module/processor/parameters/ignore_ppc
for x in /sys/devices/system/cpu/cpu[0-3]/cpufreq/;do
echo 2501000 > $x/scaling_max_freq
done
在我的系统中,250100 的速度是涡轮速度,非涡轮速度是 2500000
查尔斯·格林
答案2
您也可以通过设置/sys/devices/system/cpu/cpufreq/boost
为 0 来禁用增强功能。
答案3
例如,要禁用超过 69 度的涡轮增压,您可以每 1 分钟执行一次 crontab:
echo $[`cat /sys/devices/platform/coretemp.0/hwmon/hwmon0/temp1_input`/69000] > /sys/devices/system/cpu/intel_pstate/no_turbo
答案4
您很可能必须通过 BIOS 进行操作 - 至少对我来说是这样。否则,您可以安装 indicator-cpufreq ( sudo apt-get install indicator-cpufreq
) 并将其设置为不使用 Turbo 的设置,例如保守设置。您甚至可以将其设置为恒定速度(我的通常为 1.2),并在发现速度变慢时更改它。我还推荐硬件传感器指示器:
sudo add-apt-repository ppa:alexmurray/indicator-sensors
sudo apt-get update
sudo apt-get install indicator-sensors
监测你的体温,确保其不会过高。