Turn Off BD PROCHOT
“BD PROCHOT" stands for bi-directional prochot. PROCHOT stands for processor hot. This signal is what initiates thermal throttling so the CPU can slow down and keep from over heating.
BD PROCHOT can cause CPU run at a very low frequency, on ThinkPad E440, which is only 800MHz(max 2.3GHz). The cause of the signal activation usually are aging power adapter, aging battery, or bad sensor on matherboard. Each of cause can activate BD PROCHOT.
In order to restore the CPU back to full speed, can just clear the BD PROCHOT signal, on windows, use software Throttle Stop and uncheck the corresponding control.
The register address of BD PROCHOT signal bit on CPU is 0x1FC. The bit is the signal sign. So on Linux, the solution is use
msr-tool to write the bit to 0. the step is following:
sudo apt install msr-tool sudo modprobe msr
read the 0x1FC register:
sudo rdmsr 0x1FC
clear the bit, the output bitwise and with 0xFFFFE. Write back the value:
sudo wrmsr 0x1FC value
Done. Check the CPU frequency :
lscpu | grep MHz
To auto turn off the BD PROCHOT on every boot:
Write the steps in a shell script. Give permission:
chmod +x shellfile
Add the path of script to the last line of
sudo vim /etc/rc.local