Skip to content

Instantly share code, notes, and snippets.

@ncdulo
Created February 11, 2020 21:37
Show Gist options
  • Save ncdulo/ae712d6677acfb52aea2b650adf9a53f to your computer and use it in GitHub Desktop.
Save ncdulo/ae712d6677acfb52aea2b650adf9a53f to your computer and use it in GitHub Desktop.
Enable or disable Intel Turbo-Boost via MSR
#!/usr/bin/env bash
# Enable or disable Intel Turbo-Boost
# Requires msr kernel module to be built and loaded
# Will ask for root privileges when the time comes
# Copied, with love, from:
# https://notepad2.blogspot.com/2014/11/a-script-to-turn-off-intel-cpu-turbo.html
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
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment