我一直在摆弄电源管理,我找不到一种方法来做出我想要的持续的改变。例如,我使用以下命令设置了最大cpu频率:
sudo cpupower frequency-set --max 2GHz但是,在每次重新启动时,该值都会返回到它的原始值。是否有一种标准的方法使此更改持久?我读过关于内核模块的文章,但不知道它们是如何工作的.有谁可以帮我?
请注意。我的机器正在运行Ubuntu 20.04。
发布于 2020-05-30 13:25:05
CPU频率缩放的Arch Wiki页面提出了几种在cpupower持久性中执行更改的不同方法。
cpufreq的S systemd服务,就像Arch中所建议的那样。sudo systemctl enable cpupower
每次你启动机器的时候服务都会启动。我现在没有在带有systemd的机器上运行,所以我不能执行任何测试。
udev规则。我现在已经测试过这个了,它运行得很好。只需编辑名为/etc/udev/rules.d/50-scaling-governor.rules或类似的文件(如果它不存在就创建它),并向其中添加以下内容:SUBSYSTEM=="module", ACTION=="add", KERNEL=="acpi_cpufreq", RUN+="/bin/sh -c 'echo 2000000 | tee /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq'"
这将将CPU0的最大频率更改为写入的值。在您的例子中,2000000或2.0 GHz。要对计算机中的每个CPU执行相同的操作,只需将前面的命令更改为
SUBSYSTEM=="module", ACTION=="add", KERNEL=="acpi_cpufreq", RUN+="/bin/sh -c 'echo 2000000 | tee /sys/devices/system/cpu/cpu*[0-9]/cpufreq/scaling_max_freq'"
这将改变系统中每个CPU的最大频率。
https://unix.stackexchange.com/questions/588674
复制相似问题