Saya baru mengenal Ubuntu dan ingin menonaktifkan turbo boost. Saya sudah mencoba cpufreq
tetapi saya tidak bisa membuatnya bekerja. apakah ada cara lain untuk melakukannya.
Di windows semudah mengubah kecepatan CPU dari 100 menjadi 99.
cpupower
.
Saya baru mengenal Ubuntu dan ingin menonaktifkan turbo boost. Saya sudah mencoba cpufreq
tetapi saya tidak bisa membuatnya bekerja. apakah ada cara lain untuk melakukannya.
Di windows semudah mengubah kecepatan CPU dari 100 menjadi 99.
cpupower
.
Jawaban:
Untuk membaca kondisi Turbo Boost saat ini, kita perlu menginstal msr-tools
sudo apt-get install msr-tools
Untuk mengetahui apakah fitur Turbo Boost dinonaktifkan, jalankan:
rdmsr -pi 0x1a0 -f 38:38
1=disabled
0=enabled
Ganti saya dengan nomor inti Anda
NOte: Jika Anda mendapatkan kesalahan berikut:
rdmsr:open: No such file or directory
kemudian muat modul "msr" dengan perintah berikut:
sudo modprobe msr
Untuk menonaktifkan fitur Turbo Boost, seseorang dapat mengatur seluruh register MSR 0x1a0 menjadi 0x4000850089, seperti di sini:
wrmsr -pC 0x1a0 0x4000850089
Di mana C mengacu pada nomor inti tertentu
Anda bisa mendapatkan nomor itu dengan menjalankan
cat /proc/cpuinfo | grep processor
maka setelah Anda tahu nomor Anda, Anda harus menjalankan perintah di atas untuk setiap inti. dalam nomor kasus Anda akan 0 & 1 jadi yang harus Anda lakukan
wrmsr -p0 0x1a0 0x4000850089
wrmsr -p1 0x1a0 0x4000850089
Solusi adalah singkatan dari blog ini
Dari http://notepad2.blogspot.com/2014/11/a-script-to-turn-off-intel-cpu-turbo.html
Script untuk menonaktifkan / mengaktifkan turbo boost
Script berikut dapat digunakan untuk mematikan / mengaktifkan turbo boost:
#!/bin/bash
if [[ -z $(which rdmsr) ]]; then
echo "msr-tools is not installed. Run 'sudo apt-get install msr-tools' to install it." >&2
exit 1
fi
if [[ ! -z $1 && $1 != "enable" && $1 != "disable" ]]; then
echo "Invalid argument: $1" >&2
echo ""
echo "Usage: $(basename $0) [disable|enable]"
exit 1
fi
cores=$(cat /proc/cpuinfo | grep processor | awk '{print $3}')
for core in $cores; do
if [[ $1 == "disable" ]]; then
sudo wrmsr -p${core} 0x1a0 0x4000850089
fi
if [[ $1 == "enable" ]]; then
sudo wrmsr -p${core} 0x1a0 0x850089
fi
state=$(sudo rdmsr -p${core} 0x1a0 -f 38:38)
if [[ $state -eq 1 ]]; then
echo "core ${core}: disabled"
else
echo "core ${core}: enabled"
fi
done
simpan ini ke file bernama turbo-boost.sh
Penggunaan: Anda dapat menyalin skrip di atas dan menyimpannya ke dalam file bernama turbo-boost lalu mengaturnya agar dapat dieksekusi:
sudo chmod +x turbo-boost.sh
Anda kemudian dapat menggunakannya untuk menonaktifkan / mengaktifkan turbo boost:
./turbo-boost.sh disable
./turbo-boost.sh enable
$ rdmsr -pi 0x1a0 -f 38:38
memberi saya daftar opsi untuk digunakan dengan perintah. misalnya: Usage: rdmsr [options] regno --help -h Print this help --version -V Print current version ....
Apakah sintaks di atas sudah usang / tidak berlaku secara umum?
Jika sistem Anda menggunakan driver penskalaan frekuensi intel_pstate:
$ cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_driver
intel_pstate
intel_pstate
intel_pstate
intel_pstate
intel_pstate
intel_pstate
intel_pstate
intel_pstate
Kemudian Anda dapat menanyakan status turbo yang diaktifkan atau dinonaktifkan:
$ cat /sys/devices/system/cpu/intel_pstate/no_turbo
0
Di mana 0 berarti turbo diaktifkan dan 1 berarti turbo dinonaktifkan. Dan Anda dapat mengubahnya dengan menuliskan (sebagai sudo) ke lokasi yang sama.
$ echo "1" | sudo tee /sys/devices/system/cpu/intel_pstate/no_turbo
1
Saya tidak pernah ingat lokasi atau bagaimana melakukan `tee 'dengan benar, jadi saya lebih suka skrip dijalankan sebagai sudo:
$ cat set_cpu_turbo_off
#! /bin/bash
echo "1" > /sys/devices/system/cpu/intel_pstate/no_turbo
$ cat set_cpu_turbo_on
#! /bin/bash
echo "0" > /sys/devices/system/cpu/intel_pstate/no_turbo
sudo echo "0" | sudo tee /sys/devices/system/cpu/intel_pstate/no_turbo
set_cpu_turbo_off
skrip di atas untuk dijalankan saat startup.
sudo echo "1" | sudo tee /sys/devices/system/cpu/intel_pstate/no_turbo 1 tee: /sys/devices/system/cpu/intel_pstate/no_turbo: Operation not permitted
sudo wrmsr --all 0x1a0 0x4000850089
melakukan trik.
Anda dapat mencoba mengatur /sys/devices/system/cpu/cpufreq/boost
nilai ke 0.
echo "0" | sudo tee /sys/devices/system/cpu/cpufreq/boost