Guide: How to set up a fan curve in the BIOS

citay

Pro
SERGEANT
Joined
Oct 12, 2016
Messages
27,974
Setting up a fan curve involves a balance between airflow and noise. But it is not that difficult when you know a good way to do it, and you only have to do it once.

First, a word about the fans. I'll try not to make it too difficult, there is just some precise terminology i have to use, but in the end it's not that hard to understand, i promise.

If you want to skip this part and go right to the information about setting up fan curves, scroll down to FAN CURVES.


There are two different types of fans, which you can tell apart by their plug. Let's look at this picture:

noctua_pin_configuration_12v_fans.png


A three-pin plug means the fan is DC (= direct current) voltage-controlled. A 4-pin plug means it's PWM (pulse width modulation) controlled.
With a DC-controlled fan, the fan speed is regulated by the board powering it with lower or higher voltages (say, between 3V and 12V) instead of steady 12V.
With a PWM-controlled fan, the board powers it with a steady 12V, and the fan speed is controlled through the fourth pin via a PWM signal.

Note: The "RPM Speed Signal" pin (rotations per minute) in the picture is telling the motherboard at which speed the fan is spinning, it is not controlling the fan.

So for each fan, you have to select the right fan control method: DC for a 3-pin fan or PWM for a 4-pin fan.


Beware: Some cheaper motherboard models may only allow DC control for most of the fan headers, or only allow PWM control for all of the fan headers, regardless of the fan headers all being 4-pin headers or not. This may save them a little money on components around the fan headers, but it can be very inconvenient if you have the wrong type of fans and you can't control them properly as a result. So pay extra attention to that.

It's easy to notice in the BIOS: When you can't control some 4-pin fan headers with a PWM signal and instead only have DC (voltage) control available. Or when you don't have the ability to set a DC voltage for the fans, and you can only set a PWM percentage (then, when using 3-pin fans, they would always run at full speed here, because they would get constant 12V).

But you can also find out about this in the manual, before purchasing such a board.
Two examples of such boards. First, a board where they saved money on two of the headers:

PWM DC.png


Both CPUFAN headers can control the fan speed via PWM signal or DC voltage (depending on the fan and which control method you select in the BIOS).
But the SYSFAN headers at the bottom can only control the fan speed via DC voltage, despite having a 4-pin fan header.
"NC" means Not Connected, so they didn't implement PWM control on those headers for cost-saving. On more expensive board models, all the fan headers should be able to control fans with both methods. But in this example, you'd want your 4-pin PWM fans on the two CPUFAN headers, if possible.

Second example, from the MSI PRO Z790-S WIFI, the worst Intel Z-series board on the market:

Screenshot 2024-12-31 at 12-55-46 PROZ790-SWIFI.pdf.png


This board simply doesn't offer DC Voltage control for any fan headers, only PWM control. So if you use 3-pin case fans (or CPU fans) on this board, since they don't have the fourth wire for the PWM speed control signal, they're stuck at a full 12V. There is no way to control 3-pin fans on this board at all, the fan curves will be useless for them. You need some kind of solution like a seperate fan controller, which some cases may offer.

These shortcomings are mostly on lower-end board models. Once you go for a slightly nicer board model (from lower mid-range onwards), they should be able to have all fan headers controlled in both ways, DC voltage or PWM.


By the way: Every PWM fan can also be DC-controlled, it's just a slightly worse method of controlling it. One advantage of PWM control is that the fan will always turn on, even at a very low setting (unless it's purposely configured to stay off below 5% or 20% PWM signal for example). But when you go too low with the voltage on DC control, the fan might not turn on reliably, as the voltage is not enough to overcome the fan motor's resistance, so you'd have to add a bit of extra margin on the voltage.

The general target for the fan curves is:
- Nice low RPM (fan speed) at low temperatures
- Let the RPM ramp up gently with rising temperatures
- Only ramping up the RPM faster when the temperature approaches a quite high level.


Now, before setting the fan curves: Since we're doing this in the BIOS, this is a good time to first update the BIOS to the newest version. Because if you decide to update the BIOS later, it will reset all settings (on a lot of boards, that includes the fan curves), and you have to enter everything again. But since we'll start from scratch now anyway, updating the BIOS beforehand is a good idea.

A quick how-to on BIOS updates:
1) Get the latest BIOS. It's always the topmost one when you click on "BIOS" on the MSI support page for the mainboard.
2) Extract the file and you will get a text file and the BIOS file. Put the BIOS file into the root folder of a USB stick/drive.
3) Enter the BIOS by pressing DEL during boot, go to "M-FLASH" in the BIOS.
4) Once M-Flash (the updater) is loaded, it will show a list of your drives. Select the USB stick and select the previously extracted BIOS file on there.
5) It will ask for confirmation and then update the BIOS. It's fully automatic from there, takes about two minutes.


Now, before we come to the topic of how to set good fan curves, let's first look at a proper way to create an airflow through the case. Normally there should be at least one intake fan (usually at the front) and at least one exhaust fan (usually at the rear, in line with the CPU cooler). This will ensure a defined airflow through the case which can extract the heat from the components.

All the fans should work in unison within that airflow, to get one stream of cold air coming in from the front, picking up some heat (mostly from the CPU and GPU), and the warmed-up air being exhausted out of the rear. So in modern cases, the airflow usually looks something like this:

airflow.png
master.png



Perhaps minus the fans on top of the case. But there often will be at least one fan (if not two or three) in the front, and one exhaust fan in the rear behind the CPU cooler. Each fan will have one or two arrow markings on one of the sides, showing the rotational direction as well as the airflow direction, and all the "airflow arrows" should be pointing towards the rear of the case. When the fans come pre-installed in the case, they will already be installed like that.

If the front intake fans outnumber the rear exhaust fan by 2:1 or 3:1, then the rear fan ideally runs on slightly higher RPM than the front fans, to create a more even airflow.

About over- vs. underpressure, or positive vs. negative pressure:

Usually there should be a slight overpressure / positive pressure, meaning, slightly more air intake than air exhaust. Because the problem with underpressure or negative pressure is, it can't be controlled where the air is being pulled from. So when there are more exhaust fans than intake fans (or there's more powerful exhaust fans, or they spin faster), they will usually pull air from the shortest path. Meaning, all the additional air does not come from the front, it will be pulled from every vent and case opening that is nearby.

But since we want a defined airflow, usually front-to-back/top, the best thing is to have a slight bias towards the intake fans. And most cases will naturally do that, as they tend to have more intake than exhaust fans. Then the exhaust fan should be on a slightly higher fan curve to spin a bit faster, but it's ok to still have some air blowing through the case vents below the rear exhaust fan, having the the front fans move slightly more air into the system than the exhaust fan alone can move out. Then the warm air that collects below the graphics card, or generally in the lower half of the system, can also slowly be replaced by fresh air as it exits through the rear case vents. You don't have to feel real wind coming through the vents, but it's good if the air is not totally stagnant, and you definitely don't want the air to be pulled in from there.



FAN CURVES

Now it's time to set the fan curves. Enter the BIOS (press DEL after power-on/reboot) and open the "Hardware Monitor" which offers the fan control.
For each fan, you can set four points of a curve, MSI calls this the "Smart Fan Mode".

This is how it might look:

MSI_SnapShot_21 Fan1.png


Note that each of the four points of a fan curve is restricted by the points next to it, it can't go lower than the previous point or higher than the following point.
So you may have to move a neighboring point if you hit a restriction on the point you want to adjust.


The goal for the first point of the curve is to find a setting with a bit of airflow, but where the fan is very quiet. This will be the setting when the CPU is doing nothing (idle).
You don't need a lot of airflow when the CPU temperature is low anyway. My fans spin only at around 400 RPM there, as you can see, just enough to keep some air moving through the case. Note that i have a high-end air cooler with two fans on there, as well as three 140mm case fans in a large case. So in a small case with fewer fans, you will need a bit higher RPM to keep it this cool inside. But there is no need to have the fans spin for example at 1000 RPM in idle.

For testing, it's good to open the case and put your hand behind the fan or behind the cooler (where the air gets blown through) to feel how much airflow the fan generates with different values. As long as you don't touch the motherboard or other components, there's no danger. And you can immediately feel the results of your adjustments.

For testing the airflow, turn off "Smart Fan Mode" for a while, so you can influence the fan speed directly. You can also turn off the other fans, so you can find the sweet spot for low temperatures with the particular fan you're checking. Remember, you only need a slight airflow for this starting point of the fan curve, the goal is not to have unnecessary noise when the temperature is low.

For this goal (a bit of airflow, but being very quiet), the resulting PWM % value (or DC voltage on 3-pin fans) is your starting point at 30°C or 40°C for this fan's curve. The temperature you select depends on where you want the fan to first start ramping up. It makes no sense to define a temperature below the ambient temperature, or below the minimum CPU temperature, you'd just be wasting the whole adjustment point. So anything below 30°C only makes sense with powerful cooling methods that can actually hold the CPU below 30°C.

Next, don't go to the second point, but the third one. Find a good level where the airflow is strong but the noise is still bearable, and use this as your "full CPU load" setting for higher temperature values like 65°C or 75°C. To fine-tune this point of the curve, you might have to go back and forth from the BIOS to Windows, where you monitor the fan speed with certain CPU load and fine-tune the setting afterwards. But it doesn't take that long to do, and you only have to do it once.

As for the second point of the curve, the inbetween point: Set it slightly below a straight line between the first and third point, to not make the fans ramp up too fast at medium temperatures.

For the final point, set it for 85°C or 90°C CPU temperature and 100% PWM value (or full 12V DC with a 3-pin fan). This is the "worst case" point for safety.
Now you should have all four points of the curve set to a sensible value, and most of the time, the fan should stay between the first and the third point. The highest last point is just a safety measure.

I would always create such an "ascending dominant" curve:

curve.png


A perfectly straight line makes no sense, you'd be wasting the two middle adjustment points.
A descending dominant curve makes no sense, as it will make more noise than necessary.

Here are examples. You might of course have to use different values, but just to see how it should rougly look like. The curve needs to be done for your particular fans.

This is for a PWM fan (4-pin), which is controlled by a PWM % signal:

BIOS_Fan1.png


I would always prefer "Temperature source" CPU for the CPU fan(s), and probably most other fans too.
Usually, the CPU temperature is the most important one, and will influence the other temperatures.
By the way, a "Step down time" of 1.0s makes the fans spin down less audibly.

However, it's also feasible use "Temperature source" System for case fans. Here's an example for a DC (voltage-controlled) 3-pin fan.
Note: The following picture is not how it should be set when using the CPU temperature as the source (which is the usual temperature source),
it's an example of a fan curve when using the System temperature as the source, which could be done for case fans.
When using CPU temperature as the source, the fan curve should not be this steep, it should be more like the pictures above.

MSI_SnapShot_24 Fan4.png


Of the six total fans in my PC (two on the CPU cooler, four in the case), this lower front intake fan is the only one for which i use the "System" Temperature Source. I want it to react to the system temperature with a steeper curve, since the system temperature will obviously increase much more slowly than the CPU temperature. The graphics card can be a major contributor to heating up the whole system, and since i can't use a graphics card sensor as the temperature source, this is sort of a roundabout way to handle that. Of course, you can also have the CPU as the temperature source for all the fans, then you should use a shallower curve like in the pictures before this one.

Here's a 4-pin system fan (in my case, a Noctua NF-A14 PWM) with the CPU as the temperature source:

23 Fan3 BIOS 1.D0 MSI_SnapShot_23.png


In my system, the CPU temperature actually stays very low under load, since i have a mid-range CPU and a high-end CPU cooler. Therefore, even for the system/case fans, i can set this steep of a fan curve and not worry about getting jet engine noises under load, it will still stay pretty quiet. Depending on the individual configuration, it might be better to have the system fans on less steep of a curve compared to the CPU fan(s), just so the noise is less annoying under load. It all depends on your setup, what kind of fans you have, and noise/temperature preference.

When you have a graphics card (GPU) with a pretty high power draw, and/or there will be a lot of gaming done on the PC, then it's also a good idea to observe the various temperatures during a stint of gaming, running HWinfo Sensors in the background, set up as mentioned in step 1) of this guide with the sensors expanded. Because apart from the CPU temperatures, the GPU and other temperatures (SSD, RAM, System...) are of course also important. A GPU can take quite high temperatures, and for some cards it's not unusual or concerning to see high 80°C there under load, that can be pretty normal. But it shouldn't cause excessive temperatures for other parts. So while thinking about achieving a good balance of temperatures vs. noise, it's good to keep the entire system in mind, for example in a gaming scenario, and not only test full CPU load.


Each fan model has a different RPM range and therefore needs different values or voltages to reach a certain airflow. Also, each different PWM-controlled fan model can interpret the PWM signal differently. This is because some mainboards don't allow a PWM signal lower than 20% for example, to never have the fan turn off. So to circumvent that, a fan maker might decide to let the fan interpret a 20% PWM signal from the mainboard as "still turned off", and turn on at 21% PWM. Another fan might interpret 0% PWM as the turn off signal and 1% as the lowest possible RPM, or may never turn off and just map the entire PWM signal range to the lowest and highest RPM. And all variations in between.

Here's an example of an Arctic fan which has implemented a semi-passive mode, it stays off with any PWM signal below 5%:

P12-PWM-PST-Argb-0dB-Mode-EN.jpg


These Arctic P12/P14 PWM PST are very good fans by the way, almost unbeatable in price/performance.

Another example of a fan with a semi-passive mode is this Noiseblocker one, which has the following PWM-signal-to-fan-speed mapping (depending on the variant):

Screenshot 2023-06-27 at 21-58-11 TData_eloopX120_de_en.cdr - TData_eloopX120_de_en.pdf.png


So for each fan model, you will need different PWM values (and for 3-pin ones, different voltages), but just go by airflow and noise.
And the concept of the fan curve is always the same.

Once you're done, it's a good idea to write down your settings or make a screenshot/picture of them (in the BIOS, F12 saves a screenshot to a FAT32-formatted USB drive).
Because whenever the BIOS settings are reset (due to BIOS update, CMOS Clear or empty battery), you'll need your notes or pictures to know what fan curves you had before.
Although in BIOS updates for newer boards, the fan curves are actually kept between updates nowadays, which is good.

My other guides:
RAM explained: Why two modules are better than four / single- vs. dual-rank / stability testing

Guide: How to set good power limits in the BIOS and reduce the CPU power draw
Guide: How to find a good PSU

Someone asked me if they can thank me for my work by sending me something via Paypal: Yes, that's possible, just write me a message and i'll tell you my Paypal 😉
 
Last edited:
package power is 45W min to 64.6W average,

Too much. Whatever you did, you don't want these side effects. Try with stock settings, see how low power draw gets in idle.

Does that mean first point should be 46C?

First point should be around the lowest temperature you can see for your CPU. But only if there's no misconfiguration which makes the CPU draw too much power in idle. So i would first try to get the power consumption down, then maybe you can set 35°C or so.
 
Too much. Whatever you did, you don't want these side effects. Try with stock settings, see how low power draw gets in idle.



First point should be around the lowest temperature you can see for your CPU. But only if there's no misconfiguration which makes the CPU draw too much power in idle. So i would first try to get the power consumption down, then maybe you can set 35°C or so.
CPU Package power on stock settings,
Cpu package power on stock settings for CPU ryzen the best it was doing is 54.40, reached 142.75- average of 74.30 W on idle actaully disabled pbo and curve optimizer for this to read..
 

Attachments

  • Screenshot (22).png
    Screenshot (22).png
    350.5 KB · Views: 114
Can you expand the sensors using the <-> arrows on the bottom left? And check your power plan in Windows, should be on Balanced.
 
i expanded the screenshot and ryzen master included after setting stock values ppt-tdc-edc to its original setup in system, power plan is balanced too for windows. i get lower temps but ryzen is pretty off on those software on right side, here are HWINFOS. basically im new to most programs for windows operating systems. just understood the Curve optimizer and pbo manually setup for gaming. let me know if the 2.5-year-old paste is needed to run longer or repasted.
 

Attachments

  • Screenshot (24).png
    Screenshot (24).png
    527.5 KB · Views: 127
i expanded the screenshot and ryzen master included after setting stock values ppt-tdc-edc to its original setup in system, power plan is balanced too for windows.

I don't get why the power draw is so high in idle. So i need to see more sensors to also see CPU load and so on.

I mean this, click on the arrows:

Unbenannt.png
 
Screenshot 2023-06-27 at 21-58-11 TData_eloopX120_de_en.cdr - TData_eloopX120_de_en.pdf.png


So for each fan model, you will need different PWM values (and for 3-pin ones, different voltages), but just go by airflow and noise.
And the concept of the fan curve is always the same.

Once you're done, it's a good idea to write down your settings or make a screenshot/picture of them (in the BIOS, F12 saves a screenshot to a FAT32-formatted USB drive).
Because whenever the BIOS settings are reset (due to BIOS update, CMOS Clear or empty battery), you'll need your notes or pictures to know what fan curves you had before.
Although in BIOS updates for newer boards, the fan curves are actually kept between updates nowadays, which is good.
So for each fan model, you will need different PWM values (and for 3-pin ones, different voltages), but just go by airflow and noise.
Pwm and DC differences aren't controlling the system as quiet as expected for me to really understand your airflow and noise concept we went into this thread. I previously gave you a screenshot of the fans, for 35c settings or 40c settings, either way i put them on the exact model of cpu fan 1 to drive them at the same speed, i cant seem to find out how to control the aio fans but i think there is no control at all for it in bios, therefore im only changing its fans normally in bios, without the entire system fan cooling all in one.
 
i cant seem to find out how to control the aio fans but i think there is no control at all for it in bios, therefore im only changing its fans normally in bios, without the entire system fan cooling all in one.

If your Corsair fans plug into a Corsair fan controller of some sort, then you have to use its own software to control it in Windows, Corsair iCUE.
 

Attachments

  • Screenshot (25).png
    Screenshot (25).png
    533.7 KB · Views: 110
  • Screenshot (26).png
    Screenshot (26).png
    531.6 KB · Views: 108
So for each fan model, you will need different PWM values (and for 3-pin ones, different voltages), but just go by airflow and noise.
Pwm and DC differences aren't controlling the system as quiet as expected for me to really understand your airflow and noise concept we went into this thread. I previously gave you a screenshot of the fans, for 35c settings or 40c settings, either way i put them on the exact model of cpu fan 1 to drive them at the same speed, i cant seem to find out how to control the aio fans but i think there is no control at all for it in bios, therefore im only changing its fans normally in bios, without the entire system fan cooling all in one.
so in that cpufan1 previous photo + DC fan curve id just copy directly for rpms and cpu fan temps copy to DC fan curve and set to cpu as temperature source? what does either way i put them on the exact model of cpu fan 1 to drive them at the same speed actually mean in this case, it sounds like u repeat to follow one curve altogether but want to setup the two types of fans on a system curve rpm but i cant get a fast enough answer to start the bios change of same speed cant follow you. Due to the fan in cpu -pwm signal is not default it said its auto on DC so id need a diferent photo on the curve to start with, could u confirm that its not pwm by checking this out? H115i pro aio 280mm
 
Last edited:
Now we can finally see all sensors. Very wide monitor, you would have room for three times as many sensors. Why the two screenshots, what is the difference? Anyway, can't quite find the reason for 55W idle CPU Package Power on there. CPU load seems low enough. Ok, VCore doesn't go down that much. Don't know what to make of it.

One thing i see, your RAM is only running at DDR4-2666 with loose timings, despite 1.35V DRAM Voltage. Either this is a really old kit that had a DDR4-2666 XMP profile, or maybe you haven't enabled A-XMP and only set 1.35V for it (which is unnecessarily high for that speed and timings). But we're getting beyond the scope of this thread.

so in that cpufan1 previous photo + DC fan curve id just copy directly for rpms and cpu fan temps copy to DC fan curve and set to cpu as temperature source?

If you have a 3-pin fan, you use DC voltage control, if you have a 4-pin fan, you use PWM control (we've been over this). You can certainly copy the shape of a PWM fan curve over to a DC curve for a 3-pin fan. But each fan model reacts differently to whatever voltage or percentage you give it. So a direct 1:1 fan curve copy, from one fan model to a different fan model, may only achieve similiar results, but almost never identical ones. Not that you necessarily want all fans to behave 100% identically. You can always start from a curve that's been copied over, but then you can experiment a bit if some adjustments are better in any way.
 
Now we can finally see all sensors. Very wide monitor, you would have room for three times as many sensors. Why the two screenshots, what is the difference? Anyway, can't quite find the reason for 55W idle CPU Package Power on there. CPU load seems low enough. Ok, VCore doesn't go down that much. Don't know what to make of it.

One thing i see, your RAM is only running at DDR4-2666 with loose timings, despite 1.35V DRAM Voltage. Either this is a really old kit that had a DDR4-2666 XMP profile, or maybe you haven't enabled A-XMP and only set 1.35V for it (which is unnecessarily high for that speed and timings). But we're getting beyond the scope of this thread.



If you have a 3-pin fan, you use DC voltage control, if you have a 4-pin fan, you use PWM control (we've been over this). You can certainly copy the shape of a PWM fan curve over to a DC curve for a 3-pin fan. But each fan model reacts differently to whatever voltage or percentage you give it. So a direct 1:1 fan curve copy, from one fan model to a different fan model, may only achieve similiar results, but almost never identical ones. Not that you necessarily want all fans to behave 100% identically. You can always start from a curve that's been copied over, but then you can experiment a bit if some adjustments are better in any way.
probably need to raise the curve optimizer offset to get more or less cpu power draw on idle , i have pbo on its custom settings cause the system went to default on the reset, so id mess up my gaming if i change it to default again. Also ddr4 in bios xmp does not exist / or docp enabled, for the bios page is messy with that setting, i have 2666mhz 16x2 CL19 kit of ram.
 
Yeah, then it's just some quite early/old DDR4 kit.
just a concern to the power Watt draw with this computer - id manually add PBO advanced power limit control instead of enabled option or motherboard limit option in bios, with a b450 tomahawk with no pbo2, only pbo version 1, insane with changes i see to know the best enabled way out of box on pbo setting and curve optimizer setting this week. ive checked the numbers during games and no frame issues for PPT TDC EDC manual pbo advanced, with that high power draw, should i keep it stock enabled only? to get some more mhz i add a positive override to it, as well, 100-200 mhz. curve optimizer negative 25. same photo ive already included above
 
I would not accept a 55W idle power draw for my CPU (if that number is correct), that's for sure. My entire PC needs less than 30W in idle. For AMD you're always gonna have a bit higher power draw (in idle) than for Intel, yes. But this would be a bit too much for me, so i would experiment with the CPU settings. It's at least 20-25W too much in idle, i've seen 5900X with 30W and less. That's if we assume that number the CPU gives is accurate (i would double-check with an energy meter at the power outlet on the wall, before the PSU).

I cannot give you exact settings for that, just try completely on BIOS defaults to get some baseline numbers, you can always do whatever custom settings later.
 
I would not accept a 55W idle power draw for my CPU (if that number is correct), that's for sure. My entire PC needs less than 30W in idle. For AMD you're always gonna have a bit higher power draw (in idle) than for Intel, yes. But this would be a bit too much for me, so i would experiment with the CPU settings. It's at least 20-25W too much in idle, i've seen 5900X with 30W and less. That's if we assume that number the CPU gives is accurate (i would double-check with an energy meter at the power outlet on the wall, before the PSU).

I cannot give you exact settings for that, just try completely on BIOS defaults to get some baseline numbers, you can always do whatever custom settings later.
Will you accept this number?????????????? Power Draw on idle of cpu new thermal compound just added. 5900x compound replaced after 2.5 years. Id like to put up a correct PBO on the b450 ryzen 5000 series cpu on am4 bios together, cause i reset that setting and took a while to configure it, but am i limited to setting up PPT and TDC and EDC with this motherboard, curve optimizer to get exact what id want for power draw numbers are programmed to safe as of research. i just want to keep it idle for 6 days a week, or game occasional. thank you. Did u want a screenshot of cinebenchtoo?
And question in regard to setting up Power limits in b450- I see two tabs it sets up for amd overclocking and overclocking tab for the same pbo entering does that mean keep them both the same Limits exactly and disable one?
 

Attachments

  • Screenshot (27).png
    Screenshot (27).png
    522.2 KB · Views: 104
If you want, create a new thread for it, this is getting a bit too off-topic for this one. I have to say, i'm not an expert with AM4 CPU settings optimization, my specialty is more on the Intel side. But maybe other people can help you get on top of this better.
 
Back
Top