我正在研究频率缩放,我需要对不同的静态频率进行不同的实验。我可以使用 acpi-cpufreq 驱动程序轻松映射静态频率,但我无法将静态频率设置为新的 intel_pstate 驱动程序。我尝试更改 /sys/devices/system/cpu/cpu0/cpufreq 中的 cpuinfo_min_freq 和 cpuinfo_max_freq,还尝试将其从 pstate-frequency -G -n 和 pstate-frequency -G -m 进行更改,但无法使其正常工作。
任何帮助都将受到感谢。
答案1
您正在寻找的命令是
sudo cpupower frequency-set -f <frequency>
答案2
感谢您的快速回复,但运行命令后出现以下错误。
# cpupower frequency-set -f 800000
Setting cpu: 0
Error setting new values. Common errors:
- Do you have proper administration rights? (super-user?)
- Is the governor you requested available and modprobed?
- Trying to set an invalid policy?
- Trying to set a specific frequency, but userspace governor is not available,
for example because of hardware which cannot be set to a specific frequency
or because the userspace governor isn't loaded?
答案3
添加内核intel_pstate=passive
参数/etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash intel_pstate=passive"
然后使用以下命令更新 grub:
$ sudo update-grub
重新启动后,你可以使用以下命令禁用涡轮频率:
$ cd /sys/devices/system/cpu/cpufreq/
$ cp policy0/base_frequency policy0/scaling_max_freq
$ cp policy1/base_frequency policy1/scaling_max_freq
重要提示:如果您有超线程,那么您就有虚拟核心。并且两个虚拟核心都需要一个限制,然后物理核心才会遵守该限制。
因此,在我上面的例子中,policy0 和 policy1 是针对映射到第一个物理核心的两个虚拟核心。