然后我就查社区资料,看到一个标注了已解决字样的帖子,但是那帖子是针对14版本写的,也不太详细,老实说没看懂。。。
下面说下我目前的情况:
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors
显示
performance powersave,说明我用的是Intel_pstate
现在我想换用cpufreq的ondemand策略,请问改怎么办?
(这些术语都是百度的。。。真是什么都不懂

之前就是看的您的回复,可是当时没看懂,太感谢了vickycq 写了:intel_pstate 问题参见 viewtopic.php?f=126&t=477189
增加内核参数 intel_pstate=disable 从而将频率调度驱动由 intel_pstate 改为 acpi_cpufreq
===============
附增加内核参数方法
===============
1 - 临时增加
开机到 GRUB 界面时,按 e 进入编辑界面
在 'linux' 一行末尾增加内核参数。看起来像这样:ro splash vt.handoff=7 intel_pstate=disable
按 Ctrl+x 启动
2 - 永久增加
编辑 /etc/default/grub 在 GRUB_CMDLINE_LINUX_DEFAULT 中增加内核参数
看起来像这样:
GRUB_CMDLINE_LINUX_DEFAULT="ro splash vt.handoff=7 intel_pstate=disable"
保存后执行 update-grub
那麽执行以下指令 看看究竟有无禁用 intel_pstateicefrog09 写了:问题是我完成上述操作2后再cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors仍然只显示performance powersave两个,没有ondemand等策略怎么办?
代码: 全选
cat `find /sys | grep scaling_driver`
代码: 全选
grep -R 'ACPI_CPUFREQ=' /boot
grep -R 'FREQ' /boot | grep DEFAULT
1. 未正确禁用 intel_pstate;icefrog09 写了:1. cat `find /sys | grep scaling_driver`
intel_pstate
intel_pstate
2. 内核已开启 acpi_cpufreq 支持;icefrog09 写了:CONFIG_X86_ACPI_CPUFREQ=y
3. 正确切换到 acpi_cpufreq 后,由于内核被设定为默认 performance 模式,可能需要增加一些额外设定,以默认使用 ondemand 模式;icefrog09 写了:CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
4. 新加参数 intel_pstate=disable 之前须有空格分隔icefrog09 写了:GRUB_CMDLINE_LINUX_DEFAULT="ro splash vt.handoff=7intel_pstate=disable"//之前这行引号内为quiet splash
成功添加参数 intel_pstate=disableicefrog09 写了:/proc/cmdline:
BOOT_IMAGE=/boot/vmlinuz-4.4.0-22-generic.efi.signed root=UUID=250b7264-6f36-458d-b45a-bd30730c1fd7 ro ro splash vt.handoff=7 intel_pstate=disable vt.handoff=7
成功禁用 intel_pstate 并切换为 acpi_cpufreqicefrog09 写了:sudo cat `find /sys | grep scaling_driver`
acpi-cpufreq
acpi-cpufreq
此处描述不清icefrog09 写了: sudo echo 'ondemand' > /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor
在root权限下进行了如上设置,但没有任何输出,不知道是否改动成功
不是icefrog09 写了: sudo grep -R 'FREQ' /boot | grep DEFAULT
/boot/config-4.4.0-21-generic:CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
是不是缺少配置文件?
代码: 全选
cat /sys/devices/system/cpu/*/cpufreq/scaling_governor
创建或修改 /etc/rc.local 添加以下内容icefrog09 写了:在ect下没找到rc.local,只有rc.d系列文件夹
代码: 全选
#!/bin/sh -e
echo 'ondemand' > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
exit 0
代码: 全选
sudo chmod 755 /etc/rc.local
sudo systemctl enable rc-local.service
非常抱歉 的确是我疏忽了icefrog09 写了:出现了如下问题,应该是您大意了
cat /sys/devices/system/cpu/*/cpufreq/scaling_governor
ondemand
performance
其他核心默认都是performance,只改了第一个
代码: 全选
echo 'ondemand' | tee /sys/devices/system/cpu/cpu?/cpufreq/scaling_governor