====== x86_energy_perf_policy ======
watch --interval '0.5' grep \'cpu MHz\' '/proc/cpuinfo'
* Check
sudo x86_energy_perf_policy
* Max Performance
sudo x86_energy_perf_policy --all 'performance' --turbo-enable '1' --force
====== Scripts ======
* [[linux:distros:ubuntu|Ubuntu]]
===== GNOME Power Management =====
* Automatic power-management like ''tlp''
* Required to remove so it doesn't override below udev rule
sudo apt remove power-profiles-daemon
===== AC =====
sudo mkdir -p '/etc/udev/scripts.d' && sudo -e '/etc/udev/scripts.d/ac-power.sh' && sudo chmod +x '/etc/udev/scripts.d/ac-power.sh'
#!/bin/bash
# AC
x86_energy_perf_policy --all 'performance' --turbo-enable '1' --force
# End
'/etc/udev/scripts.d/ac-power.sh'
===== Battery =====
sudo mkdir -p '/etc/udev/scripts.d' && sudo -e '/etc/udev/scripts.d/battery-power.sh' && sudo chmod +x '/etc/udev/scripts.d/battery-power.sh'
#!/bin/bash
# Battery
x86_energy_perf_policy --all 'balance-power' --turbo-enable '0' --force
# End
'/etc/udev/scripts.d/battery-power.sh'
===== udev Rule =====
sudo -e '/etc/udev/rules.d/99-power.rules' && sudo udevadm control --reload
# AC
ACTION=="add|change", SUBSYSTEM=="power_supply", ATTRS{type}=="Mains", ATTRS{online}=="1", RUN+="/etc/udev/scripts.d/ac-power.sh"
# Battery
ACTION=="add|change", SUBSYSTEM=="power_supply", ATTRS{type}=="Mains", ATTRS{online}=="0", RUN+="/etc/udev/scripts.d/battery-power.sh"
# End
===== Check =====
* Should report something like ''Write to unrecognized MSR 0x770 by x86_energy_perf'' early boot and on AC hot-plug
sudo dmesg | grep 'MSR'
watch --interval '0.5' grep \'cpu MHz\' '/proc/cpuinfo'