
Fan Control optimized curves: 9950X3D & 9070XT
Hi all!
I wanted to share my tuned curves and just open up a discussion.
So my setup is all noctua G2 in fractal pop air, 9950X3D on NH-D15 and Sapphire 9070XT. Here's a link to my build
I obviously wanted to get as quiet without compromising temps, so it took me some time to find what I think is a finished tune for my PC. I'm briefly going to go over every component and how I came up with the curve that you see.
CPU: 9950X3D This CPU produces sharp temperature spikes, easily hitting 60°C under burst loads. However, these spikes don’t transfer much heat into the thermal mass of the cooler, and the CPU needs very little cooling below 50W. Because of this behavior I settled on the following curve:
20*C - 30%, 57*C - 40%, 70*C-60%, 75*C-100%.
Hysteresis up: 4*C, 1 sec
Hysteresis down: 4*C, 6 sec
I could get away with longer times at up hysteresis but I don't hear the fan going up/down constantly or at load spikes so I just left it as is
GPU: To avoid fan ramping I use 10 second average of hotspot temperature. Moreover on sapphire the max fan speed is 3500RPM and that is LOUD. I don't need 3500RPM anyway because I don't push the card that hard, and because from 2200RPM to 3500RPM at 300W load there pretty much only 2-3*C difference at hotspot. It's going to be hot anyway. Hence the RPM is capped at around 2500.
Curve is as follows: 44 *C - 15%, 57*C - 30%, 62 *C - 55%
Usually I get like 51-52 *C on hotspot, sometimes 54-55 with spikes of 60 *C in games like Witcher 3 at High settings and 3440 x 1440. That translates to around 130W of load.
Case fans logic:
Top intake (140mm) has almost the same curve as CPU cooler, however it's hysteresis is much larger at 4*C - 8sec Up, and 2*C - 8 sec Down. That is because I decided that this fan should function as a helper for the cooler - only at high and long loads like compiling or calculating simulations, and this hysteresis ensures just that.
Rest of the case fans: 2x 140mm front intakes, 2x120 top and back exhausts.
These fans use multiple curves and always follow the highest requested value.
Primarly they follow CPU temps and run at 19% (around 300RPM).
Hysteresis of: 3*C - 8 sec up, and 6*C - 8 sec down.
At 65*C they kick in with the following curve: 65*C - 24%, 72*C - 63%, 80*C - 74% - very agressive.
Similarly to the Top intake this is supposed to help with the cooling of CPU under sustained full load.
The most important curve for me is the GPU Hotspot Trigger and it works like so:
If the temperature exceeds 52*C at the GPU hotspot, and won't get below 43*C, the fans will be locked in at 45% (650RPM), otherwise they will follow the curve of CPU. This works great for gaming and I think it's better than following GPU temps as those can annoyingly fluctuate. Setting those fans to a fixed speed means the noise should be less perceivable.
And the last one is GPU Fan follower with offset. So, above 40% (around 1600RPM) of GPU fans speed, case fans will start to follow what's set on GPU. Once again this is to make sure that under sustained high load there will be an delivery of fresh air. It is very rare to exceed 1600RPM on this card anyway. I can increase/decrease the treshold at which this curve kicks in simply by adjusting or reducing the offset value.
Let me know what you think or if you have any suggestions for further improvements! I'm happy to share more details or screenshots of the curves.
Screenshots of all the curves are shared here.