Stops CPU throttling on Intel-based Macs
A malfunctioning or missing battery and an overzealous thermal controller can cause unnecessary throttling on many Macs, which can be quite hard to get rid of and bring them to a near-unusable state. By setting the appropriate values on the IA32_HWP_REQUEST (0x774) or IA32_PERF_CTL (0x199) MSR, TurboMac keeps your device on a high performance profile.
NO WARRANTY! I AM NOT TO BE HELD LIABLE FOR ANY DAMAGES.
This product was designed around a personal need - getting rid of the unbearable CPU throttling after my girlfriend's laptop battery died. As such it has only been tested on one device - a Macbook Pro 2017 running Catalina. It only works on Intel-based Macs.
We are messing with CPU registers dealing with thermals, so appropriate care is recommended. Something going seriously wrong is pretty unlikely by itself, but in combination with other factors (did you mess with your fan settings? BD_PROCHOT?), and Macs' overall sensitivity you could, if very unlucky, end up causing permanent damage to your CPU.
DISCLAIMER: Disabling SIP brings your system to a more vulnerable state. It is recommended that after installation you re-enable SIP (without the kext restriction) by running csrutil enable --without kext
from Recovery mode. Even after you've done this, as long as the kext signing restriction remains disabled you should take special care when installing kexts.
- OS X 10.11 (El Capitan) and higher: Disable System Integrity Protection (SIP) by running
csrutil disable
from the terminal in Recovery mode. - OS X 11 (Big Sur) and higher: Also disable Authenticated Root by running
csrutil authenticated-root disable
from Recovery mode. - Open the Build folder
- Grant the installer appropriate for your OS version execution privileges using
chmod +x /path/to/installer
from the Terminal. - Open the appropriate installer and follow further instructions. Make sure you don't reboot until the installer script is fully complete.
You can verify that the extension has loaded correctly by seeing if it shows up when you type kextstat | grep TurboMac
in the Terminal.
Follow the same steps as in the Installation section, except open the uninstallation script instead of the installation script. You can entirely re-enable SIP and Authenticated Root when done.
Made by Marko Calasan, 2022.
This product is licensed under the GNU General Public License v3.0.
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.