我想更改 cpufreq-*
命令的当前驱动程序以控制 Intel NUC 上的 CPU 频率。当前的驱动程序是 intel-pstate
,它仅允许 performance
和 powersave
作为调控器。
$ cpufreq-info --driver
intel_pstate
$ cpufreq-info --governors
performance powersave
intel-pstate
驱动程序没有 userspace
作为调控器,它允许固定 CPU 频率。所以,我想更改 cpufreq-*
命令的驱动程序。
我检查了可用的驱动程序并插入了 p4-clockmod
驱动程序:
$ ls /lib/modules/$(uname -r)/kernel/drivers/cpufreq/
amd_freq_sensitivity.ko p4-clockmod.ko speedstep-lib.ko
$ sudo modprobe p4-clockmod
但是,cpufreq-info
的驱动程序仍然是intel-pstate
。
$ cpufreq-info --driver
intel_pstate
请告诉我如何更改cpufreq-*
命令的驱动程序。
最佳答案
你应该可以这样做:
加载正确的模块:
sudo modprobe p4-clockmod
禁用intel-pstate
驱动程序:
echo off | sudo tee /sys/devices/system/cpu/intel_pstate/status
激活新驱动:
echo p4-clockmod | sudo tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_driver
如果 intel-pstate
启用了 HWP 支持,则上述情况可能无法实现(关闭它需要使用内核命令行参数 intel_pstate=no_hwp
重新启动 如果我没记错的话,more info here)。
如果你想让事情永久化,你必须改变你的内核命令行参数:
编辑/etc/default/grub
并更改GRUB_CMDLINE_LINUX_DEFAULT
,您应该添加intel_pstate=disable
和p4- clockmod
,所以它应该是这样的:
GRUB_CMDLINE_LINUX_DEFAULT="... intel_pstate=disable p4-clockmod"
更新 grub 配置:
sudo update-grub
# or
sudo grub-mkconfig -o /boot/grub/grub.cfg
重启并检查模块是否加载了 lsmod
。
另请注意,这不仅仅是“更改 cpufreq-*
命令的驱动程序”。这会更改系统范围的频率缩放驱动程序,cpufreq-*
命令仅适用于当前使用的任何驱动程序。
关于linux - 如何将频率缩放驱动程序从 "intel-pstate"更改为 "acpi-cpufreq"或 "p4-clockmod"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61356296/
相关文章:
php - 更改 Woocommerce 管理员订单列表时间和日期格式
ios - SwiftUI View 未更新以反射(reflect) UIViewControlle
javascript - 如何在保持背景颜色不变的情况下为 Puppeteer 生成的 pdf 页面
ionic-framework - Ionic 5 键盘的问题
python - 当没有 activate.bat 并且我是凡人时,如何在虚拟环境中的任务调度程序中
google-cloud-platform - 自托管 Gitlab,在 Google Cloud