- Joined
- Oct 12, 2016
- Messages
- 22,732
By now, and not only since threads like these, many Intel users will have heard (or have found out) that a lot of Intel CPUs have a very high power draw that can really push the CPU cooling capabilities to the limit and beyond. There used to be a time where a cheap tower air cooler would be enough for any CPU available for that socket. That era pretty much ended with the i9-9900K, the first "monster", and then from 10th gen onwards, Intel really started pushing the higher-up CPU models to the absolute edge. Causing higher and higher power draw, which has now gotten ridiculously high with the 14th generation like the 14900K.
The way the i9 models behave nowadays, and even the latest i7, you would think you're working with a highly overclocked CPU. And in a way, that's true - overclocked from factory, to be able to compete with AMD's best offerings. A tower cooler is not sufficient at all sometimes, the insanely high power draw can even cause trouble for really good, large AIOs (water coolers). But not only i9 and i7 CPUs are this extreme nowadays, the lower models can also have a power draw that may be too much for the CPU cooler at hand.
When the power draw becomes too much for the cooling capabilities in your PC and it can no longer keep the CPU at reasonable temperatures under load, what happens? Thermal throttling. This is a mechanism that prevents the CPU from dying of overtemperature. It acts when the CPU temperature approaches 100°C and then tries save it from overheating, by (sometimes drastically) throttling the CPU, which reduces the voltages and thus the power draw and heat output, but also reduces the frequencies and thus the performance.
But it's not good to rely on that, because if it comes to that and your cooling is already maxed out (fans at high speed, good airflow through the system), it means the CPU generates more heat than the cooler can get rid of, so thermal throttling has to step in to prevent the worst. In essence, it's an emergency mechanism, not something that should be able to happen for daily use. You want power limit throttling to step in before thermal throttling ever has to. So you should 1) set power limits according to your cooling, and 2) try to reduce the CPU core voltage.
Because the high power draw comes partly from CPU voltages that are way higher than what would be required for stability. So if we can lower those voltages more to what the CPU actually needs (while still staying fully stable), everything will improve considerably. But we'll come to that in step 2).
These optimizations have become even more important when using the latest BIOS versions, as can be read here:
Explained: How the new BIOS versions are causing higher temperatures.
Before everything, i would always update the BIOS to the latest version, because it limits the potential for any CPU degradation. Update how-to:
1) Get the latest BIOS. It's the topmost one on the MSI support page for your board.
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.
After the update, upon first entering the BIOS again, it will show the revised cooler selection screen (which is really the power limit selection screen):
Usually you can choose the middle option, no matter if your CPU would natively want to draw more power (like an i9 would) or less power (like an i5 would). Because this middle option happens to have the maximum values i would allow for any CPU (even an i9), so it's a good basis to work off of, and lower the power limits if necessary. Meaning, if there is any thermal throttling with those limits, they have to be optimized to the individual cooling capabilities, which i will shortly explain.
Note: The BIOS first has the values for the first option "Intel Default Settings" loaded. So after the middle option is selected, press F10 to save and exit, then the "MSI Performance Settings" are applied. Now there are 253W power limits set for the CPU (together with a 400A CPU Current limit), and in the first step, we now test what power limits are actually required for the temperatures to stay reasonable.
1) Test which power limits you need to set for your cooling. One way is to eyeball a number that your cooler might be able to handle comfortably (with a good tower cooler, we could say 180W for example), you set those power limits in the BIOS for a test, then you check how high the temperatures get under fully multithreaded load. If they are now in the mid-80°C range, that's good, you found your cooler's potential and you have some headroom left for higher ambient temperatures in the summer. If you still run into thermal throttling, you set the limits a bit lower.
To test the limits, check your sensors with HWinfo64 after ten minutes of full CPU load. Run HWinfo and open "Sensors", then expand all sensors by clicking on the little <--> arrows on the bottom, also expand the columns of the sensors a bit so everything can be read. Make it three big columns of sensors (or four, if the screen resolution is high enough). In the end, it should be a screenshot with all the sensors visible at once, like this:
Always make sure your power plan in Windows is set to "Balanced", this is the only proper one. Leave the PC in idle for a a minute or two first to establish the "minimum" baselines for the values. Then, produce full CPU load with Cinebench (either R24 or the still-more-popular R23), Run the "CPU Multi" benchmark, and after completing a 10 minute run, when the CPU temperatures have stabilized at the highest level, check the score and the HWinfo sensor window.
Example of a Cinebench R23 run, leave HWinfo Sensors open in the background.
What are we looking at in HWinfo after the Cinebench run?
Mostly these values in the "Maximum" column (the highest recorded values during monitoring):
Now, this is from my own system, using one of the best air coolers around (Noctua NH-D15), and only using a i5-13500, which i managed to also lower the voltage (and thus power draw), we will come to that as well in step 2) below. The result is that, even under full load, i have a pretty quiet system, and in idle, i don't even hear if it's on or not. Also, it's staying well clear of any dangerous temperatures under full load, thanks to less than 110W of power draw. It doesn't get any better than that: The cooler is overkill for the CPU, so everything can be set to run very quietly, and there is no stress on anything whatsoever. I can leave the power limits maxed out in the BIOS (4096W), because the power draw is so low, and this is very far away from >90°C temperatures which would be thermal throttling territory.
But for most people it will look a bit different at first, especially with higher CPU models that draw more power. Once there's a 14th gen i7 or i9 in there, it will absolutely gulp down the electricity, we're talking 300+ Watts easily under full load (also see here). The power draw of the higher-end CPU models has gotten completely out of hand (quite similar to high-end GPUs).
So for a lot of CPUs, the power limits have to be set according to what your cooling can handle. Otherwise it may look like this:
This PC actually crashed after a couple seconds (in hindsight, surely having to do with the stability issues on 13th/14th gen), but just before it crashed, it managed to draw 322W and immediately cause thermal throttling from hell. Even a nice 360mm AIO cooler cannot deal with this kind of heat.
After setting 253W power limits and improving the cooling setup a bit, this was the result:
No thermal throttling anymore, but still too high temperatures, there should be some headroom for higher ambient temperatures. If the CPU temperature is mid-80°C, perfect. Above 90°C, you should reduce the power limits, below 80°C you can raise them if you want, of course it also depends on the noise you want to tolerate, that has to do with the fan curves. It's certainly worth checking if the fan curves are set properly (low fan speeds in idle, slowly ramping up with higher temperatures, full speed at around 90°C). I would try to stay away from the 90°C range CPU temperatures under full load, because as mentioned, that slowly enters thermal throttling territory. It is not good to rely on that, and when it's hot in the summer and the cooler has to work with warmer ambient air, it can more easily run into thermal throttling. So there needs to be some thermal headroom to account for that.
With a lot of CPU models, not much performance will be lost from setting power limits (unless they are very low). That is because above a certain power draw, the performance increase will be in the low- to mid-single-digits, while power draw will rise pretty much exponentially. So these last performance gains are to be dismissed anyway, they are highly ineffective "junk performance". You are improving the calculation efficiency by limiting the power draw a bit, because there will be less energy spent for the job to finish.
Furthermore, under gaming for example, the CPU is only at partial load, or full load only on a couple cores (usually games are happy with about six cores), so the CPU power draw will be well below the power limits. They only come into effect on fully multithreaded load like encoding, rendering and such, and there they prevent the temperatures from getting out of hand.
How to set power limits? You go here in the BIOS and enter a number in Watts for the Long and Short Duration Power Limit:
In the BIOS, first press F7 to switch to Advanced View, then go to "OC\Advanced CPU Configuration" and set the values. Then check in Windows if the temperatures under full load are ok. If not, lower the values until you stay away from the >90°C range. Then the cooling is protected and there is no dependence on thermal throttling.
If there is some seemingly random thermal throttling being registered by HWinfo, despite the temperatures not even getting into the 90°C range, it can potentially due to momentary single-core-boosting with CPU models that have this feature. In this case, there will be a BIOS setting on this same page, called "Intel Turbo Boost Max Technology 3.0", which you can try disabling. Yes, for single-threaded loads you may lose a very tiny bit of performance, but it's better to have the CPU running more safely. The days people could run an i9 completely unlimited are pretty much over. Today it's about managing the CPU and preserving its useful life.
A word about another limit, the "CPU Current Limit (A)" in the BIOS screenshot, aka "IccMax": This is somewhat related to the power limits, it limits the internal CPU current in Amperes. In light of the recent instability issues with 13th- and 14-gen CPU models, Intel recommended certain values there for different CPUs (latest Intel recommendations).
This Current limit can be additionally set, it can give a bit of extra security, for example 307A as a precaution (with power limits up to the lower 200W range), and when going up to power limits of 253W (the maximum i'd recommend), with good cooling on an i9 CPU, then you may also set up to 400A (but never higher). Once the power limits are set to the CPU cooling capabilities of the individual system - which most of the time means probably somewhere between 150-250W, depending on the cooler and the airflow in the case - then this current limit might not even come into action, because the power limits would act before the current limit can act.
Note that Intel also recommend certain power limits for different CPU models, but those are more or less arbitrary, they have nothing to do with your individual cooling capabilities. One thing i would say, there is no benefit in allowing more than ~250W for any CPU, not even a 14900KS. Because it will always make the CPU run more inefficiently from that point onwards (at the very latest, for other CPU models even earlier). That's then "junk power draw" or "junk performance", meaning the power draw still keeps increasing a lot, but only for minimal performance gains, it basically just ruins the efficiency. So even with a high-end 360mm AIO, you will not tend to see me recommending limits higher than 253W.
If short-term performance is of high importance, one could experiment with different values for the Short and Long Duration power limits. For example, set 220W Short, then 200W Long, if the cooling is good for a bit over 200W of heat. This way, thermal throttling with continuous full load could be avoided, while still allowing slightly higher power draw for the first minute of full load. But at such high limit, it doesn't make a big difference anymore, certainly not for games or any mid-load workloads, it would have to be full load on most or all cores.
With the power limits taken care of, we come to the next important step:
2) Lowering the "CPU Lite Load" mode, for lower voltages. That's a setting that has to be found out for each specific CPU by doing stability testing. By lowering it, you essentially shave off the generic headroom that MSI like to add on VCore (CPU core voltage), and adapt it to your specific CPU sample. This is a good way to lower power consumption in all load states. I have been recommending it for ages, and it has been proven to be highly efficient hundreds of times by now.
This is an example of CPU Lite Load on Auto setting (resulting in Mode 9 there, the grey value is the currently active one):
It's on the same BIOS page as the power limits.
Short guide: Just manually set a lower mode for CPU Lite Load. Your only limit for lowering it would be the point where the CPU becomes unstable because the voltage becomes too low. Once you see instability in any CPU stress testing tool (i list a few further down below), or even in normal workloads like Cinebench already, then back off one step and test the next higher mode (so for example Mode 3 -> 4). Once you find the lowest stable mode (say if Mode 4 is stable), i recommend to actually set it one mode higher than that (Mode 5 in this example), to have stability headroom and not be on the edge of stability. If you see a big performance decrease from lowering the mode by a bunch of steps, then you need to disable the option "IA CEP" (it's on the same BIOS page as all the other options mentioned here). Done.
There's no need to change the power limits from what you determined before either, because those limits only have to do with your cooling capabilities, these don't change once you determined what your cooling can handle. But now, when you make the CPU draw a bit less power, it will also have to throttle less under full load (if the CPU model natively wants to draw more power than where you set the limits at), and it can thus boost the clocks a bit higher. This is the beauty of optimizing CPU Lite Load: When done correctly, it will not lower performance, it will actually increase it. Because within the power limits you set, when there's less voltage used for a given frequency, it can then boost higher than before. But it all has to be tested for stability.
Check the performance too:
Now, an important step for this is to first confirm that the performance remains roughly the same as before. Because on that "Advanced CPU Configuration" page in the BIOS, there can be a setting called "IA CEP Support", which is the "Current Excursion Protection" for the IA cores (= normal CPU cores). It wants to prevent any undercurrent or overcurrent from a narrow window that is expected for a CPU. Once it sees a break from the norm, it will work against it by also lowering performance a lot. With an active "IA CEP", when using a lower "CPU Lite Load" mode, the performance can massively decrease, depending on the configuration, similar to here. "IA CEP" then has to be disabled for the performance to get back to normal.
Why do i mention this "IA CEP" setting?
Because this is ideally checked before/during fine-tuning the CPU Lite Load mode. IA CEP on [Enabled] would not allow any instability, no matter how much you lower "CPU Lite Load", since it would also slow down the CPU to a crawl. So in the end, it's impossible to test for stability when it cannot become unstable (because IA CEP also lowers CPU performance accordingly). So if there is a huge performance loss when lowering CPU Lite Load, for example a much lower Cinebench score all of a sudden, then you have to first disable "IA CEP" to remove this overprotective mechanism and actually shave off the VCore you want while maintaining stability.
Is it safe to disable "IA CEP"?
Yes, because it is needlessly fighting the outcome of undervolting. By lowering the voltage, you are trying to do the best thing you can do to the way a CPU operates (as long as it stays stable), and IA CEP is working against it because it detects a deviation from a narrow "normal" range it tries to uphold. But we are know that lowering the voltage is not dangerous (quite the opposite), so we should not let IA CEP interfere in this instance. Furthermore, using an updated BIOS with the new 0x129 microcode will prevent the voltage spikes that can cause CPU degradation, so that's already the main line of defense. The recommendation to keep IA CEP enabled comes from a time way before BIOS updates with this new microcode were available, plus it was meant for default BIOS settings, not for hand-optimized settings. Here is more circumstantial evidence that disabling IA CEP should not cause the current to go crazy.
What to do when the option "IA CEP" is not available?
We know now, if IA CEP is available and you notice a severe performance drop (for example Cinebench score getting lower), then it has to be disabled, simple as that.
But what if IA CEP is not available as an option on your board? Then there's two possibilities, which you can't influence:
1) Performance stays the same when you lower CPU Lite Load (which is what you want, and is the case with my configuration), or:
2) Performance drops off a cliff once you lower CPU Lite Load enough, or otherwise try to lower the core voltage (bad, this would severely limit the undervolting capabilities).
If the option is not available and you notice a performance drop, then you either have to use the lowest CPU Lite Load mode that still keeps the full performance (often around Mode 9), or you have to use a more sophisticated undervolting method that tries to "dance around" IA CEP becoming active, using a combination of different settings. But that is beyond the scope of this guide.
Here is an example of what a user set for their specific configuration in the BIOS:
Now, this is just to illustrate where the settings are, this is not how everyone should set it! Everyone has to set their own values, because each cooling configuration can deal with a different amount of power draw (=heat) from the CPU before it starts getting into trouble. And each individual CPU has a different point at which it becomes unstable if you shave off too much core voltage. So never just apply other people's settings, good values for the power limits and CPU Lite Load always have to be found out through individual testing!
What stress tests are good? I would say, OCCT (up to an hour of CPU test, Linpack test), Prime95 Torture Test (20 minutes or so of Small FFTs), Cinebench R15 Extreme Edition mod (i have verified that this has been properly modded, also see here, and you'd run it at least a handful of times in quick succession), y-cruncher (you can search for guides on it), even running Geekbench a couple times in a row.
Conclusion about "CPU Lite Load": In my opinion, it is perhaps the best undervolting method on Intel MSI boards, because it's one of the easiest, it bundles everything in one simple setting. Stability has to be verified though, any undervolting can eventually lead to instability. Each step brings down VCore (the core voltage) for all load states a bit. Then the CPU can clock higher at the same power draw, making the performance with full load (at the power limit) improve, and of course it will also save power in all load states below the power limit. Limiting the power draw and reducing the voltages is a smart idea in general, but especially so when elevated voltages seem to be able to deteriorate 13th and 14th gen within a short time span sometimes.
Congratulations! You should now have a CPU that is running much more efficiently and won't overpower your cooling!
One final remark about taking over settings from other users that have the same CPU model as yours: This would only work if all CPUs of the same model also behave identically. But that is not the case, far from it. Within a CPU model, each individual CPU requires a different voltage for stability (lower-quality CPUs need a higher voltage and vice versa). This is basically the "silicon lottery". Here is a video showing the differences between CPUs of the same model (taking AMD as an example, but it's similar with Intel):
So, each CPU is completely individual. You can have one CPU that runs perfectly stable with CPU Lite Load mode 3, and the next one of the very same model needs mode 6 for stability. This is a difference in the silicon quality, the voltage it needs for stability. There can easily be a 100-200 mV difference (of voltage that is necessary to reach the highest boost frequency) between the highest- and lowest-quality samples of each CPU model. In the BIOS, they have to account for the lowest-quality CPUs (those that need the highest voltage). That's why, if your specific CPU is of higher quality than that (which usually is the case), you can immediately improve how it behaves when you lower CPU Lite Load down to its actual requirements.
CPU Lite Load is a sort of "additional CPU voltage" (additional VCore) from MSI, which aims to make all CPUs of varying silicon quality run stable. They have tested many different CPUs and determined a setting that will ensure stability, even if your individual CPU doesn't have a good quality and needs a higher VCore than other CPUs of the same model. Now, if you lower CPU Lite Load (while ensuring stability), you are fine-tuning it down to the exact VCore mapping that is sufficient for your specific CPU. You are taking off some of the additional VCore that MSI normally adds, because a lot of CPUs are still running 100% stable with less additional VCore than the high average value that MSI has determined.
But it also means, each CPU has to be tested individually. Just applying someone else's CPU Lite Load mode, because they happen to have the same CPU model, will rarely fit for your CPU. Either it becomes unstable because your CPU has a bit lower quality than that and needs a bit higher voltage, or you would have the potential to lower the mode more because your CPU has a bit higher quality. So better determine a good mode through your own testing (same goes for the power limits and such).
What about "Core / Core Ultra", like the Core Ultra 9 285K?
For the Z890 boards with Core Ultra, the BIOS looks a bit different, but it seems to have pretty much the same options at least, and i would assume CPU Lite Load works in a similar manner. However, due to the many architectural changes in Core Ultra, i cannot promise the same results, especially since the power draw reading in HWinfo (CPU Package Power) can be inaccurate due to the way Core Ultra is designed. It can be "calculated wrongly" depending on some other settings. So for now, i can only guarantee proper results up to 14th gen. Personally, i've used this CPU Lite Load setting all the way back from my old 9600K, generations in between, and up to my current 13th gen. Always the same procedure to optimize it.
My other guides:
RAM explained: Why two modules are better than four / single- vs. dual-rank / stability testing
Guide: How to set up a fan curve in the BIOS
Guide: How to find a good PSU
The following is for geeks only, others can stop reading
Addressing two minor criticisms of CPU Lite Load "Normal": Some people have pointed out before that this method of lowering CPU Lite Load "Normal" mode is not perfect in every way. This is not entirely false, but let me explain why i still think it's the best and easiest way.
The first criticism of tuning the CPU Lite Load "Normal" mode is that it picks its own value combination for AC Loadline and DC Loadline. AC Loadline is what actually influences the voltage, it's a voltage added by the BIOS to make up for electrical properties of the CPU socket and so on. The background is not so important to understand, the main thing is, the higher this value is, the more voltage is added. This not only takes into account the electrical properties of the board and the CPU socket, it also can make really bad CPU samples (when you lost the silicon lottery) run stable when set appropriately by default, or it can make CPUs be unstable from factory, if set too low by default. Lastly, if set too high by default, it will make the CPUs draw too much power and run too hot. The board makers have been going through various possibilities; Gigabyte at one time set the AC/DC Loadline way too high (equivalent to a high "CPU Lite Load" default mode on MSI), and even on MSI i recently saw one BIOS set Mode 22 which is among the highest possible, quite crazy. So they might have been trying to solve instability by adding more voltage, even though Intel now found that excessive voltage is what is causing problems.
For the DC Loadline, "CPU Lite Load" on Normal (just changing the mode) will pick some value which might not result in the correct power draw readings anymore. Apart from this one detail, the wrong value is not of much consequence. But if the cooling is such that power limits had to be set to prevent thermal throttling, then incorrect power draw readings will mess with the power limit throttling, it might set in too early or too late. That's where CPU Lite Load "Advanced" would come in.
In CPU Lite Load Advanced, you can select values for AC and DC Loadline seperately, without having some preset combination which can have the wrong DC Loadline value. So now you can set the DC Loadline so it results in the correct power draw numbers. Doing that involves using HWinfo Sensors, creating full CPU load, then looking at the CPU's VID requests (in the "current values" column), which is the voltage the CPU asks for from the board, and comparing it to the current VCore value (note that i don't mean current as in Amperes, i mean current as in, actual live values, not Min/Max/Avg). If those are near-identical, the correct DC Loadline value has been found. The correct DC Loadline value depends on the LLC mode, another setting which influences the voltage (and not to be confused with CPU Lite Load / CLL, completely different). A table of the AC/DC loadline values is here, but it's only a rough one, because each board model is built differently and would also need a bit different values, presumably.
But even if the reported power draw (CPU Package Power in HWinfo) is reported slightly wrong with CPU Lite Load "Normal", this doesn't affect us much, we can just go by the maximum CPU temperature to inform us if our power limits are properly dialed in, or if we still need to adjust them according to our cooling. Plus, explaining CPU Lite Load "Advanced" makes it more complicated, which means less people will do it. So i think CPU Lite Load "Normal" is a good compromise. More on this in my thread Explained: How the new BIOS versions are causing higher temperatures.
The second criticism: It has been said that CPU Lite Load sometimes cannot be lowered as much when you don't also tweak the LLC mode. That's because, when keeping LLC mode on Auto, it results in a big VDroop (VCore reduction under high CPU load, to prevent an overshoot when the high CPU load suddenly stops and the voltage regulator has trouble reacting fast enough, causing a voltage overshoot if VDroop was not applied). So with CPU Lite Load, when lowering the mode there, the VDroop also has to be taken into account. Let's say we have to stay at CPU Lite Load "Normal" Mode 5, because otherwise, together with the big VDroop, the voltage under load wouldn't be enough for stability. But when we then look at low- to mid-load scenarios, VCore might be slightly higher than necessary for stability, whereas without such big of a VDroop, it might've been stable on Mode 2 or so. So what has then been suggested is to also set the LLC to something more aggressive (starting from LLC Mode 8 and going up towards Mode 1, it gets more and more aggressive in preventing VDroop, but Mode 1 is far too aggressive, usually you'd never go beyond Mode 4 or 3).
What happens with tweaked LLC mode instead of Auto? Now the VDroop is (much) less, so under full load, the voltage drops less. And now in turn, CPU Lite Load (either Normal or Advanced) can be lowered further than with LLC on Auto, because since the VDroop is less (prevented more), a lower CPU Lite Load settings may result in the same voltage than before (with a higher CPU Lite Load mode and LLC on Auto). With the added benefit that, supposedly, low- to mid-load scenarios of CPU workload now also have lower voltages than before.
However, this last step doesn't quite pan out in my own recent testing on a PC i'm building for someone. Because even if i set CPU Lite Load "Advanced" AC Loadline to 1 (the lowest possible value) and select a mild LLC setting like Mode 7 (where the VDroop is still relatively big), i can't get anywhere near the low voltages and low power draw under full load that i can reach with just a lowered CPU Lite Load mode and keeping LLC on Auto. I'm talking a coupled dozen Watts difference here under full load, measured at the wall. In other words, lowered CPU Lite Load with LLC on Auto results in the lowest possible VCore and power draw under full load (while staying stable) in my testing, which is arguable one of the most important scenarios for which to keep the power draw low (to avoid cooling problems and improve the CPU's efficiency).
The way the i9 models behave nowadays, and even the latest i7, you would think you're working with a highly overclocked CPU. And in a way, that's true - overclocked from factory, to be able to compete with AMD's best offerings. A tower cooler is not sufficient at all sometimes, the insanely high power draw can even cause trouble for really good, large AIOs (water coolers). But not only i9 and i7 CPUs are this extreme nowadays, the lower models can also have a power draw that may be too much for the CPU cooler at hand.
When the power draw becomes too much for the cooling capabilities in your PC and it can no longer keep the CPU at reasonable temperatures under load, what happens? Thermal throttling. This is a mechanism that prevents the CPU from dying of overtemperature. It acts when the CPU temperature approaches 100°C and then tries save it from overheating, by (sometimes drastically) throttling the CPU, which reduces the voltages and thus the power draw and heat output, but also reduces the frequencies and thus the performance.
But it's not good to rely on that, because if it comes to that and your cooling is already maxed out (fans at high speed, good airflow through the system), it means the CPU generates more heat than the cooler can get rid of, so thermal throttling has to step in to prevent the worst. In essence, it's an emergency mechanism, not something that should be able to happen for daily use. You want power limit throttling to step in before thermal throttling ever has to. So you should 1) set power limits according to your cooling, and 2) try to reduce the CPU core voltage.
Because the high power draw comes partly from CPU voltages that are way higher than what would be required for stability. So if we can lower those voltages more to what the CPU actually needs (while still staying fully stable), everything will improve considerably. But we'll come to that in step 2).
These optimizations have become even more important when using the latest BIOS versions, as can be read here:
Explained: How the new BIOS versions are causing higher temperatures.
Before everything, i would always update the BIOS to the latest version, because it limits the potential for any CPU degradation. Update how-to:
1) Get the latest BIOS. It's the topmost one on the MSI support page for your board.
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.
After the update, upon first entering the BIOS again, it will show the revised cooler selection screen (which is really the power limit selection screen):
Usually you can choose the middle option, no matter if your CPU would natively want to draw more power (like an i9 would) or less power (like an i5 would). Because this middle option happens to have the maximum values i would allow for any CPU (even an i9), so it's a good basis to work off of, and lower the power limits if necessary. Meaning, if there is any thermal throttling with those limits, they have to be optimized to the individual cooling capabilities, which i will shortly explain.
Note: The BIOS first has the values for the first option "Intel Default Settings" loaded. So after the middle option is selected, press F10 to save and exit, then the "MSI Performance Settings" are applied. Now there are 253W power limits set for the CPU (together with a 400A CPU Current limit), and in the first step, we now test what power limits are actually required for the temperatures to stay reasonable.
1) Test which power limits you need to set for your cooling. One way is to eyeball a number that your cooler might be able to handle comfortably (with a good tower cooler, we could say 180W for example), you set those power limits in the BIOS for a test, then you check how high the temperatures get under fully multithreaded load. If they are now in the mid-80°C range, that's good, you found your cooler's potential and you have some headroom left for higher ambient temperatures in the summer. If you still run into thermal throttling, you set the limits a bit lower.
To test the limits, check your sensors with HWinfo64 after ten minutes of full CPU load. Run HWinfo and open "Sensors", then expand all sensors by clicking on the little <--> arrows on the bottom, also expand the columns of the sensors a bit so everything can be read. Make it three big columns of sensors (or four, if the screen resolution is high enough). In the end, it should be a screenshot with all the sensors visible at once, like this:
Always make sure your power plan in Windows is set to "Balanced", this is the only proper one. Leave the PC in idle for a a minute or two first to establish the "minimum" baselines for the values. Then, produce full CPU load with Cinebench (either R24 or the still-more-popular R23), Run the "CPU Multi" benchmark, and after completing a 10 minute run, when the CPU temperatures have stabilized at the highest level, check the score and the HWinfo sensor window.
Example of a Cinebench R23 run, leave HWinfo Sensors open in the background.
What are we looking at in HWinfo after the Cinebench run?
Mostly these values in the "Maximum" column (the highest recorded values during monitoring):
Now, this is from my own system, using one of the best air coolers around (Noctua NH-D15), and only using a i5-13500, which i managed to also lower the voltage (and thus power draw), we will come to that as well in step 2) below. The result is that, even under full load, i have a pretty quiet system, and in idle, i don't even hear if it's on or not. Also, it's staying well clear of any dangerous temperatures under full load, thanks to less than 110W of power draw. It doesn't get any better than that: The cooler is overkill for the CPU, so everything can be set to run very quietly, and there is no stress on anything whatsoever. I can leave the power limits maxed out in the BIOS (4096W), because the power draw is so low, and this is very far away from >90°C temperatures which would be thermal throttling territory.
But for most people it will look a bit different at first, especially with higher CPU models that draw more power. Once there's a 14th gen i7 or i9 in there, it will absolutely gulp down the electricity, we're talking 300+ Watts easily under full load (also see here). The power draw of the higher-end CPU models has gotten completely out of hand (quite similar to high-end GPUs).
So for a lot of CPUs, the power limits have to be set according to what your cooling can handle. Otherwise it may look like this:
This PC actually crashed after a couple seconds (in hindsight, surely having to do with the stability issues on 13th/14th gen), but just before it crashed, it managed to draw 322W and immediately cause thermal throttling from hell. Even a nice 360mm AIO cooler cannot deal with this kind of heat.
After setting 253W power limits and improving the cooling setup a bit, this was the result:
No thermal throttling anymore, but still too high temperatures, there should be some headroom for higher ambient temperatures. If the CPU temperature is mid-80°C, perfect. Above 90°C, you should reduce the power limits, below 80°C you can raise them if you want, of course it also depends on the noise you want to tolerate, that has to do with the fan curves. It's certainly worth checking if the fan curves are set properly (low fan speeds in idle, slowly ramping up with higher temperatures, full speed at around 90°C). I would try to stay away from the 90°C range CPU temperatures under full load, because as mentioned, that slowly enters thermal throttling territory. It is not good to rely on that, and when it's hot in the summer and the cooler has to work with warmer ambient air, it can more easily run into thermal throttling. So there needs to be some thermal headroom to account for that.
With a lot of CPU models, not much performance will be lost from setting power limits (unless they are very low). That is because above a certain power draw, the performance increase will be in the low- to mid-single-digits, while power draw will rise pretty much exponentially. So these last performance gains are to be dismissed anyway, they are highly ineffective "junk performance". You are improving the calculation efficiency by limiting the power draw a bit, because there will be less energy spent for the job to finish.
Furthermore, under gaming for example, the CPU is only at partial load, or full load only on a couple cores (usually games are happy with about six cores), so the CPU power draw will be well below the power limits. They only come into effect on fully multithreaded load like encoding, rendering and such, and there they prevent the temperatures from getting out of hand.
How to set power limits? You go here in the BIOS and enter a number in Watts for the Long and Short Duration Power Limit:
In the BIOS, first press F7 to switch to Advanced View, then go to "OC\Advanced CPU Configuration" and set the values. Then check in Windows if the temperatures under full load are ok. If not, lower the values until you stay away from the >90°C range. Then the cooling is protected and there is no dependence on thermal throttling.
If there is some seemingly random thermal throttling being registered by HWinfo, despite the temperatures not even getting into the 90°C range, it can potentially due to momentary single-core-boosting with CPU models that have this feature. In this case, there will be a BIOS setting on this same page, called "Intel Turbo Boost Max Technology 3.0", which you can try disabling. Yes, for single-threaded loads you may lose a very tiny bit of performance, but it's better to have the CPU running more safely. The days people could run an i9 completely unlimited are pretty much over. Today it's about managing the CPU and preserving its useful life.
A word about another limit, the "CPU Current Limit (A)" in the BIOS screenshot, aka "IccMax": This is somewhat related to the power limits, it limits the internal CPU current in Amperes. In light of the recent instability issues with 13th- and 14-gen CPU models, Intel recommended certain values there for different CPUs (latest Intel recommendations).
This Current limit can be additionally set, it can give a bit of extra security, for example 307A as a precaution (with power limits up to the lower 200W range), and when going up to power limits of 253W (the maximum i'd recommend), with good cooling on an i9 CPU, then you may also set up to 400A (but never higher). Once the power limits are set to the CPU cooling capabilities of the individual system - which most of the time means probably somewhere between 150-250W, depending on the cooler and the airflow in the case - then this current limit might not even come into action, because the power limits would act before the current limit can act.
Note that Intel also recommend certain power limits for different CPU models, but those are more or less arbitrary, they have nothing to do with your individual cooling capabilities. One thing i would say, there is no benefit in allowing more than ~250W for any CPU, not even a 14900KS. Because it will always make the CPU run more inefficiently from that point onwards (at the very latest, for other CPU models even earlier). That's then "junk power draw" or "junk performance", meaning the power draw still keeps increasing a lot, but only for minimal performance gains, it basically just ruins the efficiency. So even with a high-end 360mm AIO, you will not tend to see me recommending limits higher than 253W.
If short-term performance is of high importance, one could experiment with different values for the Short and Long Duration power limits. For example, set 220W Short, then 200W Long, if the cooling is good for a bit over 200W of heat. This way, thermal throttling with continuous full load could be avoided, while still allowing slightly higher power draw for the first minute of full load. But at such high limit, it doesn't make a big difference anymore, certainly not for games or any mid-load workloads, it would have to be full load on most or all cores.
With the power limits taken care of, we come to the next important step:
2) Lowering the "CPU Lite Load" mode, for lower voltages. That's a setting that has to be found out for each specific CPU by doing stability testing. By lowering it, you essentially shave off the generic headroom that MSI like to add on VCore (CPU core voltage), and adapt it to your specific CPU sample. This is a good way to lower power consumption in all load states. I have been recommending it for ages, and it has been proven to be highly efficient hundreds of times by now.
This is an example of CPU Lite Load on Auto setting (resulting in Mode 9 there, the grey value is the currently active one):
It's on the same BIOS page as the power limits.
Short guide: Just manually set a lower mode for CPU Lite Load. Your only limit for lowering it would be the point where the CPU becomes unstable because the voltage becomes too low. Once you see instability in any CPU stress testing tool (i list a few further down below), or even in normal workloads like Cinebench already, then back off one step and test the next higher mode (so for example Mode 3 -> 4). Once you find the lowest stable mode (say if Mode 4 is stable), i recommend to actually set it one mode higher than that (Mode 5 in this example), to have stability headroom and not be on the edge of stability. If you see a big performance decrease from lowering the mode by a bunch of steps, then you need to disable the option "IA CEP" (it's on the same BIOS page as all the other options mentioned here). Done.
There's no need to change the power limits from what you determined before either, because those limits only have to do with your cooling capabilities, these don't change once you determined what your cooling can handle. But now, when you make the CPU draw a bit less power, it will also have to throttle less under full load (if the CPU model natively wants to draw more power than where you set the limits at), and it can thus boost the clocks a bit higher. This is the beauty of optimizing CPU Lite Load: When done correctly, it will not lower performance, it will actually increase it. Because within the power limits you set, when there's less voltage used for a given frequency, it can then boost higher than before. But it all has to be tested for stability.
Check the performance too:
Now, an important step for this is to first confirm that the performance remains roughly the same as before. Because on that "Advanced CPU Configuration" page in the BIOS, there can be a setting called "IA CEP Support", which is the "Current Excursion Protection" for the IA cores (= normal CPU cores). It wants to prevent any undercurrent or overcurrent from a narrow window that is expected for a CPU. Once it sees a break from the norm, it will work against it by also lowering performance a lot. With an active "IA CEP", when using a lower "CPU Lite Load" mode, the performance can massively decrease, depending on the configuration, similar to here. "IA CEP" then has to be disabled for the performance to get back to normal.
Why do i mention this "IA CEP" setting?
Because this is ideally checked before/during fine-tuning the CPU Lite Load mode. IA CEP on [Enabled] would not allow any instability, no matter how much you lower "CPU Lite Load", since it would also slow down the CPU to a crawl. So in the end, it's impossible to test for stability when it cannot become unstable (because IA CEP also lowers CPU performance accordingly). So if there is a huge performance loss when lowering CPU Lite Load, for example a much lower Cinebench score all of a sudden, then you have to first disable "IA CEP" to remove this overprotective mechanism and actually shave off the VCore you want while maintaining stability.
Is it safe to disable "IA CEP"?
Yes, because it is needlessly fighting the outcome of undervolting. By lowering the voltage, you are trying to do the best thing you can do to the way a CPU operates (as long as it stays stable), and IA CEP is working against it because it detects a deviation from a narrow "normal" range it tries to uphold. But we are know that lowering the voltage is not dangerous (quite the opposite), so we should not let IA CEP interfere in this instance. Furthermore, using an updated BIOS with the new 0x129 microcode will prevent the voltage spikes that can cause CPU degradation, so that's already the main line of defense. The recommendation to keep IA CEP enabled comes from a time way before BIOS updates with this new microcode were available, plus it was meant for default BIOS settings, not for hand-optimized settings. Here is more circumstantial evidence that disabling IA CEP should not cause the current to go crazy.
What to do when the option "IA CEP" is not available?
We know now, if IA CEP is available and you notice a severe performance drop (for example Cinebench score getting lower), then it has to be disabled, simple as that.
But what if IA CEP is not available as an option on your board? Then there's two possibilities, which you can't influence:
1) Performance stays the same when you lower CPU Lite Load (which is what you want, and is the case with my configuration), or:
2) Performance drops off a cliff once you lower CPU Lite Load enough, or otherwise try to lower the core voltage (bad, this would severely limit the undervolting capabilities).
If the option is not available and you notice a performance drop, then you either have to use the lowest CPU Lite Load mode that still keeps the full performance (often around Mode 9), or you have to use a more sophisticated undervolting method that tries to "dance around" IA CEP becoming active, using a combination of different settings. But that is beyond the scope of this guide.
Here is an example of what a user set for their specific configuration in the BIOS:
Now, this is just to illustrate where the settings are, this is not how everyone should set it! Everyone has to set their own values, because each cooling configuration can deal with a different amount of power draw (=heat) from the CPU before it starts getting into trouble. And each individual CPU has a different point at which it becomes unstable if you shave off too much core voltage. So never just apply other people's settings, good values for the power limits and CPU Lite Load always have to be found out through individual testing!
What stress tests are good? I would say, OCCT (up to an hour of CPU test, Linpack test), Prime95 Torture Test (20 minutes or so of Small FFTs), Cinebench R15 Extreme Edition mod (i have verified that this has been properly modded, also see here, and you'd run it at least a handful of times in quick succession), y-cruncher (you can search for guides on it), even running Geekbench a couple times in a row.
Conclusion about "CPU Lite Load": In my opinion, it is perhaps the best undervolting method on Intel MSI boards, because it's one of the easiest, it bundles everything in one simple setting. Stability has to be verified though, any undervolting can eventually lead to instability. Each step brings down VCore (the core voltage) for all load states a bit. Then the CPU can clock higher at the same power draw, making the performance with full load (at the power limit) improve, and of course it will also save power in all load states below the power limit. Limiting the power draw and reducing the voltages is a smart idea in general, but especially so when elevated voltages seem to be able to deteriorate 13th and 14th gen within a short time span sometimes.
Congratulations! You should now have a CPU that is running much more efficiently and won't overpower your cooling!
One final remark about taking over settings from other users that have the same CPU model as yours: This would only work if all CPUs of the same model also behave identically. But that is not the case, far from it. Within a CPU model, each individual CPU requires a different voltage for stability (lower-quality CPUs need a higher voltage and vice versa). This is basically the "silicon lottery". Here is a video showing the differences between CPUs of the same model (taking AMD as an example, but it's similar with Intel):
So, each CPU is completely individual. You can have one CPU that runs perfectly stable with CPU Lite Load mode 3, and the next one of the very same model needs mode 6 for stability. This is a difference in the silicon quality, the voltage it needs for stability. There can easily be a 100-200 mV difference (of voltage that is necessary to reach the highest boost frequency) between the highest- and lowest-quality samples of each CPU model. In the BIOS, they have to account for the lowest-quality CPUs (those that need the highest voltage). That's why, if your specific CPU is of higher quality than that (which usually is the case), you can immediately improve how it behaves when you lower CPU Lite Load down to its actual requirements.
CPU Lite Load is a sort of "additional CPU voltage" (additional VCore) from MSI, which aims to make all CPUs of varying silicon quality run stable. They have tested many different CPUs and determined a setting that will ensure stability, even if your individual CPU doesn't have a good quality and needs a higher VCore than other CPUs of the same model. Now, if you lower CPU Lite Load (while ensuring stability), you are fine-tuning it down to the exact VCore mapping that is sufficient for your specific CPU. You are taking off some of the additional VCore that MSI normally adds, because a lot of CPUs are still running 100% stable with less additional VCore than the high average value that MSI has determined.
But it also means, each CPU has to be tested individually. Just applying someone else's CPU Lite Load mode, because they happen to have the same CPU model, will rarely fit for your CPU. Either it becomes unstable because your CPU has a bit lower quality than that and needs a bit higher voltage, or you would have the potential to lower the mode more because your CPU has a bit higher quality. So better determine a good mode through your own testing (same goes for the power limits and such).
What about "Core / Core Ultra", like the Core Ultra 9 285K?
For the Z890 boards with Core Ultra, the BIOS looks a bit different, but it seems to have pretty much the same options at least, and i would assume CPU Lite Load works in a similar manner. However, due to the many architectural changes in Core Ultra, i cannot promise the same results, especially since the power draw reading in HWinfo (CPU Package Power) can be inaccurate due to the way Core Ultra is designed. It can be "calculated wrongly" depending on some other settings. So for now, i can only guarantee proper results up to 14th gen. Personally, i've used this CPU Lite Load setting all the way back from my old 9600K, generations in between, and up to my current 13th gen. Always the same procedure to optimize it.
My other guides:
RAM explained: Why two modules are better than four / single- vs. dual-rank / stability testing
Guide: How to set up a fan curve in the BIOS
Guide: How to find a good PSU
The following is for geeks only, others can stop reading
Addressing two minor criticisms of CPU Lite Load "Normal": Some people have pointed out before that this method of lowering CPU Lite Load "Normal" mode is not perfect in every way. This is not entirely false, but let me explain why i still think it's the best and easiest way.
The first criticism of tuning the CPU Lite Load "Normal" mode is that it picks its own value combination for AC Loadline and DC Loadline. AC Loadline is what actually influences the voltage, it's a voltage added by the BIOS to make up for electrical properties of the CPU socket and so on. The background is not so important to understand, the main thing is, the higher this value is, the more voltage is added. This not only takes into account the electrical properties of the board and the CPU socket, it also can make really bad CPU samples (when you lost the silicon lottery) run stable when set appropriately by default, or it can make CPUs be unstable from factory, if set too low by default. Lastly, if set too high by default, it will make the CPUs draw too much power and run too hot. The board makers have been going through various possibilities; Gigabyte at one time set the AC/DC Loadline way too high (equivalent to a high "CPU Lite Load" default mode on MSI), and even on MSI i recently saw one BIOS set Mode 22 which is among the highest possible, quite crazy. So they might have been trying to solve instability by adding more voltage, even though Intel now found that excessive voltage is what is causing problems.
For the DC Loadline, "CPU Lite Load" on Normal (just changing the mode) will pick some value which might not result in the correct power draw readings anymore. Apart from this one detail, the wrong value is not of much consequence. But if the cooling is such that power limits had to be set to prevent thermal throttling, then incorrect power draw readings will mess with the power limit throttling, it might set in too early or too late. That's where CPU Lite Load "Advanced" would come in.
In CPU Lite Load Advanced, you can select values for AC and DC Loadline seperately, without having some preset combination which can have the wrong DC Loadline value. So now you can set the DC Loadline so it results in the correct power draw numbers. Doing that involves using HWinfo Sensors, creating full CPU load, then looking at the CPU's VID requests (in the "current values" column), which is the voltage the CPU asks for from the board, and comparing it to the current VCore value (note that i don't mean current as in Amperes, i mean current as in, actual live values, not Min/Max/Avg). If those are near-identical, the correct DC Loadline value has been found. The correct DC Loadline value depends on the LLC mode, another setting which influences the voltage (and not to be confused with CPU Lite Load / CLL, completely different). A table of the AC/DC loadline values is here, but it's only a rough one, because each board model is built differently and would also need a bit different values, presumably.
But even if the reported power draw (CPU Package Power in HWinfo) is reported slightly wrong with CPU Lite Load "Normal", this doesn't affect us much, we can just go by the maximum CPU temperature to inform us if our power limits are properly dialed in, or if we still need to adjust them according to our cooling. Plus, explaining CPU Lite Load "Advanced" makes it more complicated, which means less people will do it. So i think CPU Lite Load "Normal" is a good compromise. More on this in my thread Explained: How the new BIOS versions are causing higher temperatures.
The second criticism: It has been said that CPU Lite Load sometimes cannot be lowered as much when you don't also tweak the LLC mode. That's because, when keeping LLC mode on Auto, it results in a big VDroop (VCore reduction under high CPU load, to prevent an overshoot when the high CPU load suddenly stops and the voltage regulator has trouble reacting fast enough, causing a voltage overshoot if VDroop was not applied). So with CPU Lite Load, when lowering the mode there, the VDroop also has to be taken into account. Let's say we have to stay at CPU Lite Load "Normal" Mode 5, because otherwise, together with the big VDroop, the voltage under load wouldn't be enough for stability. But when we then look at low- to mid-load scenarios, VCore might be slightly higher than necessary for stability, whereas without such big of a VDroop, it might've been stable on Mode 2 or so. So what has then been suggested is to also set the LLC to something more aggressive (starting from LLC Mode 8 and going up towards Mode 1, it gets more and more aggressive in preventing VDroop, but Mode 1 is far too aggressive, usually you'd never go beyond Mode 4 or 3).
What happens with tweaked LLC mode instead of Auto? Now the VDroop is (much) less, so under full load, the voltage drops less. And now in turn, CPU Lite Load (either Normal or Advanced) can be lowered further than with LLC on Auto, because since the VDroop is less (prevented more), a lower CPU Lite Load settings may result in the same voltage than before (with a higher CPU Lite Load mode and LLC on Auto). With the added benefit that, supposedly, low- to mid-load scenarios of CPU workload now also have lower voltages than before.
However, this last step doesn't quite pan out in my own recent testing on a PC i'm building for someone. Because even if i set CPU Lite Load "Advanced" AC Loadline to 1 (the lowest possible value) and select a mild LLC setting like Mode 7 (where the VDroop is still relatively big), i can't get anywhere near the low voltages and low power draw under full load that i can reach with just a lowered CPU Lite Load mode and keeping LLC on Auto. I'm talking a coupled dozen Watts difference here under full load, measured at the wall. In other words, lowered CPU Lite Load with LLC on Auto results in the lowest possible VCore and power draw under full load (while staying stable) in my testing, which is arguable one of the most important scenarios for which to keep the power draw low (to avoid cooling problems and improve the CPU's efficiency).
Last edited: