Linux Developers Discussing Possible Kernel Driver For Intel CPU Undervolting
While the Intel Extreme Tuning Utility (XTU) on Windows allows for undervolting laptop processors, currently on Linux there isn't any Intel-endorsed way for undervolting your CPU should you be interested in better thermal/power efficiency and other factors. But a hypothetical Linux kernel driver could be coming for filling such void.
There does exist the intel-undervolt program that is unofficial and developed by an independent developer for undervolting Intel CPUs from Haswell and newer on Linux. Besides dropping the CPU voltage, it also allows manipulating the throttling power/thermal limits for Intel processors. That intel-undervolt functionality relies on reverse-engineering and discoveries made by the community for the support. That program in turn is touching the CPU MSRs directly for manipulating the behavior.
Jason Donenfeld who is known for his WireGuard work happened to send a patch to kernel developers so writes to the particular OC mailbox MSR won't result in kernel warnings being printed, the particular MSR used by intel-undervolt. This patch stems from the recent work on Linux aiming to tighten up access to CPU MSRs from user-space.
The discussion among kernel developers to this patch then evolved into whether touching this undocumented MSR should be permitted and in what scenarios, among other concerns. Ultimately though most developers seem in agreement that it would be better for a kernel driver to handle the Intel CPU undervolting than a program running in user-space that is directly interacting with the MSR in question. From there Intel Linux developers also got roped in over the lack of MSR documentation concerning under-volting and any guidance from Intel about any sane manner for supporting such functionality under Linux similar to Intel XTU on Windows.
While there are kernel developers from multiple organizations interested in such functionality for in turn providing an Intel under-volt kernel driver, at the moment the ball appears to be in Intel's court. There is a need for documentation concerning the relevant MSR(s) and thus waiting on Intel engineers to find such documentation internally and see if/what can be publicly released. Hopefully Intel's large open-source team will be able to provide some fruits soon as there are many Linux laptop users especially who would enjoy a supported means of easily under-volting their hardware on Linux especially with more vendors beginning to offer pre-loaded Linux laptops.
There does exist the intel-undervolt program that is unofficial and developed by an independent developer for undervolting Intel CPUs from Haswell and newer on Linux. Besides dropping the CPU voltage, it also allows manipulating the throttling power/thermal limits for Intel processors. That intel-undervolt functionality relies on reverse-engineering and discoveries made by the community for the support. That program in turn is touching the CPU MSRs directly for manipulating the behavior.
Jason Donenfeld who is known for his WireGuard work happened to send a patch to kernel developers so writes to the particular OC mailbox MSR won't result in kernel warnings being printed, the particular MSR used by intel-undervolt. This patch stems from the recent work on Linux aiming to tighten up access to CPU MSRs from user-space.
The discussion among kernel developers to this patch then evolved into whether touching this undocumented MSR should be permitted and in what scenarios, among other concerns. Ultimately though most developers seem in agreement that it would be better for a kernel driver to handle the Intel CPU undervolting than a program running in user-space that is directly interacting with the MSR in question. From there Intel Linux developers also got roped in over the lack of MSR documentation concerning under-volting and any guidance from Intel about any sane manner for supporting such functionality under Linux similar to Intel XTU on Windows.
While there are kernel developers from multiple organizations interested in such functionality for in turn providing an Intel under-volt kernel driver, at the moment the ball appears to be in Intel's court. There is a need for documentation concerning the relevant MSR(s) and thus waiting on Intel engineers to find such documentation internally and see if/what can be publicly released. Hopefully Intel's large open-source team will be able to provide some fruits soon as there are many Linux laptop users especially who would enjoy a supported means of easily under-volting their hardware on Linux especially with more vendors beginning to offer pre-loaded Linux laptops.
36 Comments