Disable Intel Turbo Boost to cool my laptop

Oct 18, 2024

One of the most frustrating points of owning Intel laptops, or any laptops, is dealing with heat issues. It usually stems from overclocking by the CPU. It's because of Intel Turbo Boost. It's a frequency scaler that can change a CPU's frequency to go higher than base clock depending on workload. That's why when you search for a CPU, there are 2 frequencies, Base Frequency and Turbo Frequency. The Turbo Frequency is for 1-core boost, multi-core boost is in lower frequency.

It makes sense on a desktop because we're not limited by battery life or thermal. But when you're on a laptop, those are the main concern. And a laptop when boosting up, has a tendency to overheat, bad! I have seen it reached 99 degree Celsius, even shutting down. So I have an aversion toward using Turbo Boost in a laptop and try turning it off. Several ways have been used to disable it.

Disable SpeedStep

This was my first method with my first laptop. However, it not only disabled the overclock, but also disable frequency scaling completely, which was not ideal but I didn't know at the time. Dynamic frequency scaling helps regulate power usage and thermal.

The 99%

My family had a convertible laptop with an i5-7200U. It was slow, ran hot as hell, small screen (13 inch) and expensive (800USD compared to 500 USD for a normal one). A way to deal with the heat was to go to Power Options in Control Panel of Windows, click on Change plan settings of the current power plan, Change advanced power settings. Afterward, scroll down to Processor Power Management. At Maximum processor state, fix On battery (and maybe Plugged in) to 99%. One downside is that you won't be accessing 100% of the CPU power. There is another way involving ThrottleStop but I've never looked into it.

Disable Intel Turbo Boost (Linux only)

This one was both hard and easy. Hard for anyone not understanding Linux. Easy because I think the way to do it is. Use Terminal and type:

echo 1 > /sys/devices/system/cpu/intel_pstate/no_turbo

This willturn off Intel Turbo Boost, for now. The next time you reboot, it resets to 0. To keep it last, put it in a file, chmod +x that file and put in a cron job for every startup like

@reboot home/user/noturbo

or create an udev rule if you want plugged in to have a different behavior to battery. Create a powersave.rules file, save it in /etc/udev/rules.d/:

# Rule for when switching to battery
SUBSYSTEM=="power_supply",ENV{POWER_SUPPLY_ONLINE}=="0",RUN+="/home/user/noturbo"

# Rule for when switching to powersupply
SUBSYSTEM=="power_supply",ENV{POWER_SUPPLY_ONLINE}=="1",RUN+="/home/user/noturbo"