我使用 ThrottleStop 禁用 BD PROCHOT,以在 Windows 上停止 CPU 节流。由于 ThrottleStop 在 Ubuntu 上不可用,我尝试寻找解决方案。我无法让事情正常运转。有一个关于如何做到这一点的问题,答案是您必须创建一个 C 程序来执行此操作。我无法做到这一点。有人可以建议另一种方法吗?
编辑:我使用终端找到了一种方法来实现它。有人可以告诉我如何为此编写一个 bash 文件,以便我可以在每次启动时运行它。我试过了,但似乎不起作用。
sudo cpufreq-set -c 0 -g performance
sudo cpufreq-set -c 1 -g performance
sudo cpufreq-set -c 2 -g performance
sudo cpufreq-set -c 3 -g performance
sudo modprobe msr
TEST = `$(sudo rdmsr 0x1FC)`
sudo wrmsr 0x1FC $(TEST)
答案1
我创建了以下名为 的文件prochot.sh
并将其放在 下/usr/local/bin/
。
#!/bin/bash
modprobe msr
lcase="$(rdmsr 0x1FC)" # the default output is in base 16 without 0x and character is in lower case
declare -i ID
ID=`echo "ibase=16; ${lcase^^}" | bc` # switch to upper case and then convert to base 10.
#echo $ID
if [[ $((ID%2)) == 0 ]]; then
echo "turn on PROCHOT"
ID=ID+1
else
echo "turn off PROCHOT"
ID=ID-1
fi
wrmsr 0x1FC $ID
授予其执行权限
sudo chmod +x prochot.sh
然后,我可以使用以下方法关闭或打开 BD PROCHOT
sudo prochot.sh