luckylinux / supermicro-fan-control

Supermicro Fan Control
GNU Affero General Public License v3.0
3 stars 0 forks source link

CPU Temperature Controller might be too slow to React #4

Open luckylinux opened 4 months ago

luckylinux commented 4 months ago

The Temperature Controller running every 30s and increasing Fan Speed by default by 5% might be too slow to React.

This could be seen for instance on a Supermicro X11SSM-F with Intel Xeon E3-1230 v5 with a Standard Low-Profile (1U) Heatsink that come with many such Supermicro Systems/Servers.

Part Number should be Supermicro SNK-P0046P. image

As such, the Heatsink as a very low Thermal Mass/Thermal Capacity, and even with only 4 Cores / 8 Threads, that was enough to bring the CPU over 72 °C [Celsius] while doing some Intensive Work (tested by doing a Linux Kernel 6.10 Compile Test with make -j16 and make -j8).

Therefore, probably 2 Control Loops should be Implemented running in Parallel with different Periods, either Synchronously (triggered by Interrupt) or Asynchronously or a mix of the two.

Proposed Periods:

Furthermore, the Fan Controller shall be run at the lowest of the Two Aforementioned Periods, in order to update the Fan Speed in a Timing Manner:

It might also be worth to implement a non-linear Fan Speed Increase:

(similarly for a decrease: one could reduce quickly if temperature fall < 50°C for Instance)

To be evaluated. In any case the Period for the Controller needs to be adjusted.