
With each new generation of PCIe, the maximum possible data transfer rates increase. Already today PCIe 5.0 is capable of speeds up to 32 GT/s, and the upcoming PCIe 6.0 will double this figure. With such high performance, the problem of heating becomes more and more important, especially for compact mobile systems.
Intel's proposed pcie_cooling driver will be able to register virtual cooling devices for each PCIe port in the system. In case the specified temperature thresholds are exceeded, the driver will be able to forcibly reduce the PCIe link speed by changing the corresponding registers in the controller. This will relieve the load and power consumption of the PCIe-connected device.
At the moment pcie_cooling is limited only to controlling link speed, but in the future it is possible to add control over link width. This functionality is expected in the upcoming PCIe 6.0 revision with the new L0p power saving mode.
The fifth revision of patches for this driver has already been published. It includes code refactoring, improved error handling and compatibility with existing Linux kernel features. After a year of development, pcie_cooling is expected to be included in the main kernel branch soon.
The new driver will be a useful addition for performance desktop systems and ultrabooks equipped with powerful GPUs or compute gas pedals. It will allow flexible management of the performance/power consumption balance, avoiding thermal critical situations.