无法在 Ubuntu 16.04 LTS 上禁用 CPU 节流

Dan*_* Do 11 intel cpu

我正在尝试关闭计算机上的 CPU 节流,但没有成功。谁能帮我找出问题所在?

我的台式机装有 Intel Core i7-7700 3.60 GHz,并安装了 Ubuntu 16.04 LTS 内核 4.4.0-83-generic。我的步骤如下:

  1. 禁用BIOS 配置中的SpeedStep选项以防止 CPU 自动降低时钟

    什么是英特尔 SpeedStep

    Bios-SpeedStep 禁用

  2. 更改 grup 文件以禁用intel_pstate驱动器和ACPI

    禁用 intel_pstate 驱动器

    gksu gedit /etc/default/grub
    # Find the line GRUB_CMDLINE_LINUX_DEFAULT="splash quiet"
    # Append this line GRUB_CMDLINE_LINUX_DEFAULT="splash quiet acpi=off intel_pstate=disable"
    sudo update-grub
    sudo reboot
    
    Run Code Online (Sandbox Code Playgroud)
  3. 将 CPU 频率调节器从powersave更改为performance,以使所有 cpu 以其最大时钟速率运行。

    切换到性能调控器

    sudo apt-get install linux-tools-common linux-tools-4.4.0-83-generic
    sudo cpupower frequency-set -g performance
    
    Run Code Online (Sandbox Code Playgroud)
  4. 手动将我的 8 个 cpu 内核的时钟速率设置为最大值 (4200 MHz)

    cd /sys/devices/system/cpu/cpu<X>/cpufreq
    cp cpuinfo_max_freq scaling_max_freq
    
    Run Code Online (Sandbox Code Playgroud)

    其中X是内核 {0, 1, ..., 7} 的索引

  5. 然后我按照 Filipe FB 在Disabling CPU Throttling Ubuntu 中的建议做了一些技巧。

    遗憾的是,在执行完上述所有步骤后,我仍然无法将内核时钟配置为固定值。这里有

    cat /proc/cpuinfo | grep MHz   # showed me
    cpu MHz     : 3473.578
    cpu MHz     : 3600.140
    cpu MHz     : 3600.140
    cpu MHz     : 3036.515
    cpu MHz     : 2613.656
    cpu MHz     : 3120.046
    cpu MHz     : 3425.203
    cpu MHz     : 3600.000
    
    Run Code Online (Sandbox Code Playgroud)

最糟糕的是,当我使用此命令检查intel_pstate驱动器是否已被禁用时

cat /sys/devices/system/cpu/cpu<X>/cpufreq/scaling_driver
Run Code Online (Sandbox Code Playgroud)

烦人的字符串intel_pstate 一直显示,这表明它仍然处于启用状态。我已经用完了解决方案,是否有任何遗漏的步骤。

预先感谢。

Rog*_*orn 10

你可能被热敏数据咬了。

这是我在有关 linux Mint 18 的问题上发表的帖子的副本:

“如果您拥有高性能和/或游戏 PC,您确实需要将 Thermal Daemon 使用的默认温度设置为高于 55 °C (131 °F)。配置文件中的示例温度为 75°C (167 °F),但一些聪明人决定所有 PC 的默认温度应为 55 °C。当使用 Handbrake 处理视频时,我可以在所有 8 个线程以 100% 的情况下达到 89 °C。当你达到 55°C 时开始限制你的电脑,这意味着它需要更长的时间来完成任何事情。你越热,它用来减慢你速度的方法就越激进。我真的让它对我的桌面进行了硬锁定,它变成了太激进了。配置文件在/etc/thermald/thermal-conf.xml."

“查找第一行。将 55000 (55 °C) 更改为更高的值,例如 75000 (75 °C)。75 °C 是配置文件示例部分的默认值。我个人将其设置为 90000 (90 °C) ). 在我作为计算机用户和修理工的所有日子里,我从未见过 CPU 被热损坏。基本上在 100 °C 时,您的 CPU 会锁定(在 Windows 中,您会出现蓝屏)。除非您超频,否则我只是不这样做”根本没有看到对热敏的需求。然而,卸载它并不能解决问题,因为您的内核似乎有一个内置模块来做同样的事情。如果你想让你的 PC 提高默认温度是最好的方法以最佳性能运行。

“我将我的笔记本电脑 CPU 从 i7-4810mq 升级到了 i7-4940mx 极限版 CPU,它在 3.1ghz 正常和 3.8ghz 四涡轮增压下运行。在更改默认温度之前,我的机器将涡轮增压至 3.2ghz 和 3.6ghz 顶部。更改后默认温度现在在 3.8 GHz 的最高涡轮增压下达到最大值。”

更新!!!!!!!!!!!

我想在我关于节流 CPU 的帖子中添加更新。而不是改变温度限制在我现在做以下...

移除散热片:

sudo apt清除热

根据制造商的说法,thermald 是为根本没有冷却系统的手机设计的。它不是为了在笔记本电脑或台式机上运行而设计的。在笔记本电脑或台式机上,它会影响性能。对我来说,它甚至导致了完全的硬锁定。

黑名单限制技术 - 将 3 行添加到文件中:

须藤纳米 /etc/modprobe.d/blacklist-throttling.conf

黑名单 intel_powerclamp
黑名单 intel_rapl
黑名单 intel_rapl_perf

使用 ctrl+o 然后 ctrl+x 保存并退出 nano。

更新所有内核的所有 ramdisk:

须藤更新initramfs -u -k all

测试:重新启动并确保 heatd 没有运行,并且上述英特尔节流模块也没有运行。

lsmod | grep -i 英特尔

结果:自从我买了一台游戏笔记本电脑并升级到英特尔 i7 4940mx 以来,我在重载时获得了笔记本电脑的最大速度。我使用手刹、搅拌机和其他重载软件进行了测试。在运行 i7z (sudo i7z) 以查看 CPU 速度和涡轮速度时,速度没有因节流而下降。