无法在 Ubuntu 16.04 LTS 上禁用 CPU 限制

无法在 Ubuntu 16.04 LTS 上禁用 CPU 限制

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

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

  1. 禁用速度步伐BIOS 配置中的选项可防止 CPU 自动降低时钟

    什么是 Intel SpeedStep

    Bios-SpeedStep 禁用

  2. 修改 grup 文件以禁用英特尔_pstate驾驶和交流电源接口

    禁用 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
    
  3. 更改 CPU 频率调节器节能表现让所有 CPU 都以其最大时钟速率运行。

    切换到性能调节器

    sudo apt-get install linux-tools-common linux-tools-4.4.0-83-generic
    sudo cpupower frequency-set -g performance
    
  4. 手动将我的 8 个 CPU 核心的时钟频率设置为最大值 (4200 MHz)

    cd /sys/devices/system/cpu/cpu<X>/cpufreq
    cp cpuinfo_max_freq scaling_max_freq
    

    在哪里X是核心的索引 {0, 1, ..., 7}

  5. 然后我按照 Filipe FB 的建议做了几个技巧禁用 Ubuntu CPU 节流

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

    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
    

最糟糕的是,当我检查英特尔_pstate驱动器已使用此命令禁用

cat /sys/devices/system/cpu/cpu<X>/cpufreq/scaling_driver

恼人的字符串英特尔_pstate一直显示,说明还是启用状态。我已经没有办法了,是不是还缺少什么步骤。

预先感谢。

答案1

您可能正在被 thermald 咬伤。

以下是我针对 Linux Mint 18 问题发表的一篇文章的副本:

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

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

“我将笔记本电脑的 CPU 从 i7-4810mq 升级为 i7-4940mx 至尊版 CPU,其正常频率为 3.1ghz,四核睿频频率为 3.8ghz。在更改默认温度之前,我的机器睿频频率为 3.2ghz,最高睿频频率为 3.6ghz。更改默认温度后,其最高睿频频率为 3.8ghz。”

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

我想对我关于限制 CPU 的帖子进行更新。我现在不更改 thermald 限制的温度,而是执行以下操作...

删除 thermald:

sudo apt purge thermald

Thermald 的制造商表示,它是为没有冷却系统的手机设计的。它不适合在笔记本电脑或台式机上运行。在笔记本电脑或台式机上运行它会损害性能。对我来说,它甚至会导致完全死机。

黑名单限制技术-在文件中添加以下 3 行:

sudo nano /etc/modprobe.d/blacklist-throttling.conf

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

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

更新所有内核的所有 ramdisk:

sudo update-initramfs -u -k 全部

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

lsmod | grep -i 英特尔

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

答案2

您的系统正在使用 intel_pstate 驱动程序,您可能不想禁用它,而是想利用它。

设置此驱动程序的调速器非常简单。要将所有 CPU 设置为最大频率,只需使用以下命令:

echo 100 | sudo tee /sys/devices/system/cpu/intel_pstate/min_perf_pct

要执行相反的操作并强制 CPU 低功耗,请发出以下命令:

echo 20 | sudo tee /sys/devices/system/cpu/intel_pstate/max_perf_pct

其中 20 是您想要允许的最大性能百分比。将其设置为 10% 可能会导致 GUI 极其缓慢,但您可以尝试一下。

资料来源:内核网站

答案3

我在配备 CPU i7-7Y75 的 Dell XPS 13 (9365) 上运行 Ubuntu 18.10。

因为这台笔记本电脑没有风扇,CPU 节流使我的 CPU 几乎处于静止状态(从 3.5 Ghz 到 1.1 Ghz,有时到 900 Mhz)。

我使用这个程序解决了它:

https://github.com/erpalma/throttled

祝你好运。

答案4

我在配备 CPU i7-10510u 的 ThinkPad T15 上运行双启动 Ubuntu 18.04 LTS 和 Windows 10。令人惊讶的是,即使这台笔记本电脑被列为 Ubuntu,我也遇到了同样的 CPU 节流问题经过认证的硬件. 正如所提到的,预装的 Ubuntu 可能包含附加软件。

我最终通过安装这个程序解决了这个问题:
https://github.com/erpalma/throttled

谢谢

相关内容