I have only been using this nifty utility for a couple of weeks, and I heartily recommend it to anyone seeking better fan speed control. I found the available online documentation to be a bit skimpy, so my first attempts at fan control were by the school of hit-and-miss!
Background: My system is an old 2008 Gateway, which I considered replacing with something newer, but then decided to try a few cheap upgrades and tweaks first, just for the heck of it.
The mobo is a relic Intel DG965OT (locked 1066 FSB), and the original cpu was an LGA 775 Core 2 duo E6300 running at a whopping 1.87 GHz.
First I upgraded the cpu to a quad core Q6600, 2.4 GHz, which woke things up dramatically (2979 vs 1120 benchmark speed; a 266% increase in speed).
I then started using RealTemp 3.70, and discovered that my core temps were kind of high (60-90C) with the original cpu fan speed control algorithym in the bios. RealTemp has no provision to control fan speeds, plus I suspect the reported temps are higher than they really are.
So then I downloaded SpeedFan 4.47, and started tweaking it.
I was able to get it working fairly well, but when heavily loaded I noticed the cpu fan speed was quite unstable. No matter how I tweaked, the fan speed would not ramp up fast enough to keep the cpu cores cool, before the warning temp kicked it up to 100%.
A side note: core 0 of my particular Q6600 seems to indicate about 6 to 12 deg C higher than any of the others, so it essentially dominates control of the cpu fan speed. I have no reason to suspect that it actually runs hotter; I think the temp sensor is just not calibrated like the others. I have read elsewhere that multi-core Intels often exhibit this quirk.
Also the Q6600 core temps increase dramatically and quickly when loaded, from the low 30’s up to high 50’s, in a matter of a mere second or two.
The standard fan speed response curve ramps up the fan speed in an increasingly steep non-linear rate as the core temp increases. It has a min of 30C, and a max of 60C, with the resulting speeds at about 35% and 100% respectively, as shown below. So you don’t get a significant fan speed increase until you start hitting pretty high temps.
I discovered that you can modify the response curve using the mouse pointer to kind of “drag” the individual data points up and down. I changed mine to an essentially linear response as the temp increases, with a slightly lower starting point, as shown here:
As you can see I also increased both the min and max temps for core 0, because it seems to report higher offset temps as mentioned earlier.
I have set the warning temp for this core at 65C (where the cpu fan is forced to 100%) and this seems to work well. The other 3 cores are set to warning at 60 C.
Now when the cpu load increases the temp and fan speed ramps up fairly steadily to around 60C (~90 % fan speed), and settles there. Once unloaded it drops almost immediately back down to the 50-60% speed range.
Since the northbridge MCH heatsink is in close proximity to the cpu fan/heatsink (and therefore the temp is influenced by the cpu fan), I have the cpu fan speed also controlled by the MCH temp. The MCH and ICH on this board seem to run fairly high in the 46-48 deg C range usually.
Since several inputs control both of the fan speed regimes, I use the “Max of Speeds” control method instead of the “Sum of Speeds” method selector, on the fan control tab.
There is a total of 11 temp mobo sensors reported by SpeedFan: cpu die, 4 separate cpu cores, ICH, MCH, 2 disk drives, and 2 motherboard temps.
The cpu fan speed is controlled by each of the 4 cpu cores, and the MCH temp (total 5).
The HDD & chassis fan speed is controlled by the ICH, MCH, Harddisk 0, Harddisk 1, and each of two motherboard temp sensors (total 6).
I don’t use the cpu die temp for fan control because for some reason it comes up as a negative number; in the -50 range when idle, changing to about -25 or so when loaded. It seems like it is the difference between the actual die temp and some arbitrary threshold temp, such as +85C perhaps. It responds to load changes more slowly than the core temp readings.
One mobo temp sensor reports around 36C usually, the other around 42C. I believe the first is in the area of the DIMM sockets, while the latter may be in the voltage regulator area. Who knows?
There is a small 80mm fan for the disk drives, which is controlled by the chassis fan driver, as is the 92mm case fan. Though not a perfect situation, this does seem to work. The drives normally run around 34-36 deg C from the SMART reporting.
Another thing I found is even at very low manual speed settings on the SpeedFan main screen such as 0% or 10%, all fans still continue to run, or at least the reported speeds still show a few hundred rpms. They don’t seem to stall at low PWM outputs, so I suspect the bios has an overriding minimum fan speed output value, that is irrespective of the software control.
SpeedFan changes I’d like to see:
1. A way to alter the size of the main SpeedFan screen. Currently its size is fixed, and the temperature reporting window is not big enough to accommodate all 11 temperatures on my system.
2. The ability to drive 3 or more fans separately, instead of just two. This limitation may be imposed by the mobo of course, I am not certain.
Experimentation and tweaking continue almost daily……..