หากต้องการอ่านสถานะปัจจุบันของ Turbo Boost เราต้องติดตั้งเครื่องมือ msr
sudo apt-get install msr-tools
หากต้องการทราบว่าปิดใช้งานคุณสมบัติ Turbo Boost หรือไม่ให้เรียกใช้:
rdmsr -pi 0x1a0 -f 38:38
1=disabled
0=enabled
แทนที่ i ด้วยหมายเลขแกนของคุณ
ไม่:
ถ้าคุณได้รับข้อผิดพลาดต่อไปนี้:
rdmsr:open: No such file or directory
จากนั้นโหลดโมดูล“ msr” โดยใช้คำสั่งต่อไปนี้:
sudo modprobe msr
หากต้องการปิดใช้งานคุณสมบัติ Turbo Boost คุณสามารถตั้งค่า 0x1a0 MSR ทั้งหมดให้เป็น 0x4000850089 เช่นเดียวกับที่นี่:
wrmsr -pC 0x1a0 0x4000850089
โดยที่ C หมายถึงหมายเลขหลักเฉพาะ
คุณสามารถรับหมายเลขนั้นได้ด้วยการวิ่ง
cat /proc/cpuinfo | grep processor
จากนั้นเมื่อคุณทราบหมายเลขของคุณแล้วคุณต้องเรียกใช้คำสั่งด้านบนสำหรับแต่ละคอร์ ในกรณีที่หมายเลขของคุณจะเป็น 0 & 1 ดังนั้นคุณต้องทำ
wrmsr -p0 0x1a0 0x4000850089
wrmsr -p1 0x1a0 0x4000850089
โซลูชันหมายถึงบล็อกนี้
จากhttp://notepad2.blogspot.com/2014/11/a-script-to-turn-off-intel-cpu-turbo.html
สคริปต์เพื่อปิด / เปิดใช้งานเทอร์โบบูสต์
สคริปต์ต่อไปนี้สามารถใช้เพื่อเปิด / ปิด 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
บันทึกสิ่งนี้ลงในไฟล์ที่เรียกว่า turbo-boost.sh
การใช้งาน: คุณสามารถคัดลอกสคริปต์ด้านบนและบันทึกลงในไฟล์ชื่อ turbo-boost จากนั้นตั้งค่าให้สามารถเรียกใช้งานได้:
sudo chmod +x turbo-boost.sh
จากนั้นคุณสามารถใช้มันเพื่อปิด / เปิดการใช้งานเทอร์โบบูสต์:
./turbo-boost.sh disable
./turbo-boost.sh enable