With Ryzen 5000 having launched recently, PC users now have two options for high end performance: the Zen 2 based 3900X and 3950X, and the Zen 3 based 5900X and 5950X. Both have their advantages and disadvantages of course. Personally, I decided to pick up a 3950X to put in my PC as the prices have now dropped significantly.
Most people who buy a 3950X plan to get the most performance possible out of it by pairing it with a high end cooler like Arctic’s acclaimed Liquid Freezer II. I am not most people and usually make strange decisions when building or upgrading PCs, and I planned for this 3950X to go into my mini ITX PC. I knew it would be a little challenging to use a 3950X in such a thermally constrained environment but nothing makes me happier than an efficient computer.
After a few days of tinkering and tuning, fortunately, I was able to get the 3950X right where I wanted it. Below I will offer some tips for making your 3950X (or any other Ryzen CPU) as efficient as possible, as well as some methods that didn’t work out.
The 3950X at Stock Settings
At stock, the 3950X is going to consume around 130 watts under full load, which is going to overwhelm pretty much any ITX grade CPU cooler, especially the one I use, the Noctua L9a. Almost as soon as I started Cinebench R23 for testing, the 3950X nearly hit 100 C. 95 C is generally the highest a Ryzen CPU can go without experiencing significant damage, so clearly the L9a is no match for the full power of the 3950X and I suspect pretty much any other ITX designed cooler would fail too.
Aside from cooling issues under full load, I also identified problems at idle and under light workloads. The 3950X simply consumed far too much power due to how aggressively it boosted. The performance was certainly good and it wasn’t near 100 C but it wasn’t silent, and I rate silence very, very highly. So the 3950X requires work on both fronts to increase power efficiency and especially to reduce heat.
BIOS Configuration
Let’s begin with BIOS level tweaks. There are two important things you need to do: enable eco mode and apply an undervolt. Enabling eco mode is easy and the option to do so is usually in the Precision Overdrive Boost section in your motherboard’s BIOS. If you fail to find the eco mode option in your BIOS, then you can still do it with Ryzen Master as seen in the screenshot below. Eco mode will configure the PBO settings to limit the CPU to about 90 watts at full load, which will mostly solve thermal issues under full load.
Eco mode however won’t make your CPU more efficient at lower clock speeds. To make the CPU truly more efficient, you need to apply an undervolt. There are two options: setting a manual clock speed and voltage or applying an offset voltage. Put simply, the former option is not going to work well at all and I highly recommend the latter option. Though undervolting using an offset has negative or no consequences in a stock configuration, it is actually highly useful when in eco mode. My ASRock B450 board only allowed me to go 100 mV up or down, but -100 mV significantly dropped temperatures and brought performance up by about 10%.
If possible, you should also apply an offset for the SoC. This won’t help all that much under a full or moderate load, but at idle and light operation you should see a significant difference. My board allowed me to apply a -105 mV undervolt.
A word of caution: undervolting can make your system instable. If you experience more crashes and glitches than usual after applying an undervolt, then you need to either remove the undervolt completely or apply a weaker undervolt.
Process Lasso
After tweaking your BIOS to your preference, I would recommend installing Process Lasso. This application has a variety of uses, especially on highly threaded CPUs like the 3950X, but I have a very specific use for it: quick swapping between power plans.
First, you’re going to want to select Windows’s Power Saver power plan in order to improve idle and light load temperatures. Both at idle and under light loads, the 3950X will boost very aggressively, and power consumption will end up being around 50-60 watts, which is not acceptable. Power Saver locks the 3950X to 2.2 GHz and brings down power consumption to a more reasonable level.
Unfortunately, switching to Power Saver brings up another problem: boosting becomes almost nonexistent. During testing I noticed clock speeds while using Power Saver hardly budged, which severely hurt performance, especially in single threaded workloads and gaming. Full performance can only be unlocked with one of AMD’s or Windows’s performance oriented power plans, so switching between plans is necessary. However, on desktop it’s not possible to switch power plans without going to the control panel; this is very much unlike the laptop experience which permits switching plans via the battery icon in the tray.
Process Lasso just so happens to enable quick switching between power profiles if you have it in your tray. Furthermore, Process Lasso will automatically switch your power profile to a custom performance focused profile whenever you launch a game or other intensive programs. It didn’t automatically switch when I launched Cinebench R23, but it did switch just fine with games. Enabling this mode manually is just two clicks away if you have Process Lasso in your tray. Please note that this “Performance Mode” is only on when there’s a check mark beside it.
You could also try setting your power plan to that of your preference (other than Power Saver) and use Process Lasso’s IdleSaver feature, which will automatically switch to another plan (ideally Power Saver) after some seconds of inactivity. However, I found this feature kind of useless because it wouldn’t work for light workloads, like typing up an article, and it needs at least 2 seconds of idle time in order to kick in. But if you have a better cooler than I do and find yourself watching videos much of the time, then this could work out.
Other Hardware Based Solutions
I have three last recommendations if the above suggestions aren’t sufficient, and they both are related to hardware. If thermal performance during gaming or some other GPU intensive workload is an issue, then I would recommend cutting down GPU power consumption as well. This can be done by either undervolting your GPU or by lowering the power limit. Both of these options could limit GPU performance but reducing the total amount of heat within your chassis will make it easier for your CPU to remain at a safe temperature, and it also has the added benefit of making your GPU cooler and reducing your total heat output.
You could also try using a really high end thermal paste or even liquid metal. Even with these tiny heatsinks, increased thermal transfer from the processor to the heatsink can still make a big difference. I haven’t personally tested this with a 3950X and an L9a or any other ITX cooler, but it would probably make a difference.
The last solution is kind of a no brainer: get a better cooler. Personally, I am stuck with the L9a because coolers like the L12S need the space that it currently occupied by my RAM. ITX coolers will often have this issue if the heatsink is directly above the RAM. If you don’t have to resort to the L9a, your experience will almost certainly be better than mine.
Ryzen Master is a Dead End
Ryzen Master was actually one of the very first things I tried but I was disappointed. It mostly just offers what settings you see in the BIOS and it does not allow you to, say, set a base clock speed or change P states or something else that would deliver all of high single threaded performance, good idle power draw, and good full load power draw. It actually doesn’t even offer any voltage offset options.
I’d really like it if AMD allowed us to customize the boost profile of Ryzen CPUs a bit more with Ryzen Master. As it stands now, it’s only useful for power tuning if you for some reason can’t enable eco mode in the BIOS. In general, I would appreciate more options for power tuning in both Ryzen Master and the BIOS.
The Result
What can you expect if you follow the above suggestions? At idle, with nothing in the foreground, the 3950X will consume just under 30 watts, which is not great but certainly alot better than it normally does. It stayed at a cool 70 C or so with the fans barely spinning if at all and was absolutely silent. 70 C is a pretty bad idle temperature but it’s not the end of the world.
As I was writing this article (yes, this is the real workload I tested), power consumption increased to about 35 watts and the temperature went up to around 74 C. Fans were of course still silent. Media playback on YouTube didn’t seem to make a difference to power consumption as it stayed at 35 watts. Most of the time, I’m using my PC either for writing or watching videos, so this result is pretty good for a Ryzen CPU.
In Cinebench R23’s multi core test (using Process Lasso’s performance mode), the 3950X consumed 80 watts which resulted in a temperature of 83 C. The clock speed was around 2.8 GHz, which is not great but still acceptable. The score was about 16000 points, which according to Cinebench is about equal to a 1950X. In the single core benchmark, the 3950X consumed only 50 watts but was just as hot as in the multi core benchmark at 83 C, and the clock speed was a consistent 4.3 GHz. The score was about 1270 points.
The real test isn’t in Cinebench R23 however, but in gaming. When the 3950X is in eco mode, many AAA games can easily push it to its power limit. Factor in the GPU’s power consumption and heat output, and it’s a good stress test. I used GTA V for testing because it consistently was able pin both the 3950X and my 1080Ti at full power. The 3950X consumed 80 watts and the 1080Ti 250 for a combined power consumption of 330 watts. The 3950X was still able to remain (relatively) cool at 86 C.
With these results, I am comfortable in saying that the 3950X can perform just fine even under an L9a. If you want the fastest mainstream CPU for your ITX PC, it’s certainly possible, it just takes some tinkering and some willingness to occasionally see your CPU run at 95 C.