SkatterBencher #36: AMD Ryzen Threadripper 3990X Overclocked to 4500 MHz

skatterbencher #36: Ryzen Threadripper 3990X

We overclock the AMD Ryzen Threadripper 3990X processor up to 4500 MHz with EK-Quantum custom loop water cooling and the ASUS ROG Zenith II Extreme motherboard.

I had originally planned to just look at the overclocking challenges of a Threadripper CPU but ended up also having a closer look at the Zen 2 architecture as well as the history of Ryzen’s performance tuning technologies.

Also, there are a lot of unusual challenges to Threadripper performance tuning which made this system uniquely interesting to overclock. It took me several weeks to just work out the best manual overclocking settings.

I had a lot of fun working through the intricacies of Ryzen Threadripper overclocking, so I hope you enjoy the blog post!

AMD Ryzen Threadripper 3990X: Introduction

The AMD Ryzen Threadripper 3990X is pretty much AMD’s most maxed-out Ryzen CPU out there. It sports 64 cores and 128 threads featuring the Zen 2 core architecture. It has a base frequency of 2.9 GHz and boosts up to 4.3 GHz. The TDP is 280W.

The 3990X is part of the Threadripper 3000 product family. It’s targeted at the high-end desktop market and falls in between consumer, prosumer, and enterprise segments. It was announced in November 2019 and eventually launched in February 2020. So more than 2 years ago.

There are several challenges with overclocking this CPU. We’ll discuss each of these challenges as we encounter them during this guide.

In this video we will cover three different overclocking strategies:

  • First, we enable Precision Boost Overdrive and enable D.O.C.P.
  • Second, we tune the Precision Boost Overdrive parameters
  • Third, we go for a couple of manual overclocks
ryzen threadripper 3990x overclocking strategies

However, before we jump into overclocking let us quickly go over the hardware and benchmarks we use in this blog post.

AMD Ryzen Threadripper 3990X: Hardware Overview

Along with the AMD Ryzen Threadripper 3990X processor and ASUS ROG Zenith II Extreme motherboard, in this guide, we will be using two pairs of G.SKILL Trident Z DDR4-4266 memory sticks, a 512GB Kingston KC400 SSDNow SSD, an Enermax MAXREVO 1500W power supply, the ElmorLabs Easy Fan Controller, the ElmorLabs Power Measurement Device, ElmorLabs EVC2, the EK-Quantum Magnitude water block, and EK-Quantum water cooling. All this is mounted on top of our favorite Open Benchtable V2. 

The cost of the components should be around $6,870.

  • AMD Ryzen Threadripper 3990X processor: $3,990
  • EK-Quantum Magnitude sTRX4: $315
  • EK-Quantum Power Kit P360: $578
  • ASUS ROG Zenith II Extreme motherboard: $850
  • 2x G.SKILL Trident Z DDR4-4266 memory: $340
  • Kingston 512B SSDNow SSD: $80
  • Enermax MAXREVO 1500W power supply: $370
  • MSI GT 710: $50
  • ElmorLabs Easy Fan Controller: $20
  • ElmorLabs EVC 2: $32
  • ElmorLabs Power Measurement Device: $45
  • Open Benchtable V2: $200
ryzen threadripper 3990x system cost

I think it’s the first time I had to break out my Enermax 1500W power supply for a SkatterBencher video. That’s because the Ryzen Threadripper needs a lot of power.

Power Supply Challenge

As you’ll find out in this overclocking guide, the Ryzen Threadripper 3990X at full blast draws a lot of power and current. During the initial testing, we found out that our usual 850W power supply was not able to supply the 12V current required for our Prime95 AVX stability tests with Precision Boost Overdrive enabled.

Therefore, I switched to my old but trusty Enermax MAXREVO 1500W power supply which offers up to 30A on 4 of the 12V rails and up to 125A for all 12V rails combined. This was sufficient to power the Ryzen Threadripper 3990X fully overclocked.

enermax maxrevo 1500w specification

Do note that I did not use a high-end graphics card. Had I used my regular RTX 2080 TI, I’m not sure the power supply would’ve held its own during stress testing.

ElmorLabs EFC+EVC+PMC

I explained how I use ElmorLabs products in SkatterBencher #34. By connecting the EFC and PMD to the EVC2 device I monitor the ambient temperature (EFC), water temperature (EFC), fan duty cycle (EFC), and CPU input power (PMD). I include the measurements in my Prime95 stability test results.

elmorlabs tools setup

I also use the ElmorLabs EFC to map the radiator fan curve to the water temperature. Without going into too many details, I have attached an external temperature sensor from the water in the loop to the EFC. Then, I use the low/high setting to map the fan curve from 25 to 40 degrees water temperature. This is used for all overclocking strategies.

elmorlabs efc 25 40 fan curve

Later in the video, you’ll find out that the ElmorLabs products were particularly handy with this platform.

AMD Ryzen Threadripper 3990X: Benchmark Overview

We use Windows 11 Enterprise and the following benchmark applications to measure performance and ensure system stability.

Windows 11 Enterprise

This is the first time I use the Enterprise version of Windows 11. It’s quite easy to just download the operating system as you can just download an ISO which lets you evaluate for 90 days.

The reason why I use Windows 11 Enterprise is explained in AnandTech’s review of the Ryzen Threadripper 3990X.

In short: Whenever Windows experiences more than 64 threads in a system, it separates those threads into processor groups. The way this is done is very rudimentary: of the enumerated cores and threads, the first 64 go into the first group, the second 64 go into the next group, and so on.

windows processor groups

When the system is in this mode, it becomes very tricky for most software to operate properly. When a program is launched, it will be pushed into one of the processor groups based on load – if one group is busy, the program will be spawned in the other. When the program is running inside the group, unless it is processor group aware, then it can only access other threads in the same group. This means that if a multi-threaded program can use 128 threads, if it isn’t built with processor groups in mind, then it might only spawn with access to 64.

Windows Enterprise is built with multiple processor groups in mind and that has several benefits. For example, specific scheduler adjustments which aren’t immediately apparent to the user without digging deeper into the finer elements of the design.

As AnandTech saw significant differences in performance between Windows 10 and Windows 10 Enterprise, we decided to also run the Enterprise version of Windows 11.

AI Benchmark

I personally really like AI Benchmark, which uses TensorFlow, as it appears to catch instabilities during transient loads better than any other benchmark I’m using. However, there are some key aspects of the benchmarks that we need to mention.

First, the Windows version of the benchmark uses Intel’s Math Kernel Libraries or MKL. Unfortunately, MKL for Windows doesn’t play well with multiple threads, and as a result, any Windows results are going to perform a lot worse than Linux results. On top of that, after a given number of threads (~16), MKL kind of gives up, and performance drops quite substantially. That’s why you’ll see the overall benchmark performance of the Threadripper 3990X with 128 threads being not much better than the results I got when overclocking the Alder Lake 12900KF with a mere 24 threads.

Second, the MKL compute performance with AMD processors is notably worse than on Intel processors. The long story short is that MKL is developed by Intel and does not select the optimal code path for AMD processors. Specifically, by default, MKL looks for “Genuine Intel” in the CPU string, and if it doesn’t find that it drops to a code path only optimized to the SSE2 instruction-level meaning. That means no modern hardware optimizations like AVX2. However, using an environment variable you can force MKL to take the Haswell/Broadwell code path which gives an optimization level that includes AVX2.

At least … that worked for a while. Since the MKL 2020 update 1, you can no longer force AVX2 support on Ryzen.

While researching ways to further optimize, I came across a Stack overflow post stating Ryzen support is embedded in the new Intel oneAPI. You can enable oneAPI Deep Neural Network Library (oneDNN) using a simple environment variable TF_ENABLE_ONEDNN_OPTS=1. I used this variable in my Alder Lake overclocking guides and just like on Alder Lake, this boosted the performance of the Ryzen Threadripper significantly.

As I’m using the benchmarks purely to see the performance scaling when overclocking I didn’t further look into enhancing the TensorFlow performance.

AMD Ryzen Threadripper 3990X: Stock Performance

The first thing we must do before we start any overclocking is check the system performance at default settings.

Please note that the ROG Zenith II Extreme motherboard enables Precision Boost Overdrive by default. So, to check the performance at default settings you must enter the BIOS and

  • Go to the Ai Tweaker menu
  • Enter the Precision Boost Overdrive submenu
    • Set Precision Boost Overdrive to Disabled

Then save and exit the BIOS.

Here is the benchmark performance at stock:

  • Geekbench 5 (single): 1,280 points
  • Geekbench 5 (multi): 23,690 points
  • Cinebench R23 Single: 1,292 points
  • Cinebench R23 Multi: 65,911 points
  • CPU-Z V17.01.64 Single: 530.7 points
  • CPU-Z V17.01.64 Multi: 36,684.6 points
  • V-Ray 5: 36,573 points
  • AI Benchmark: 3,626 points
  • Y-Cruncher PI MT 5B: 184.281 seconds
  • Blender Classroom: 111 seconds
ryzen threadripper 3990x stock smt off benchmark performance

Here is the 3DMark CPU Profile benchmark performance at stock:

  • CPU Profile 1 Thread: 717
  • CPU Profile 2 Threads: 1,431
  • CPU Profile 4 Threads: 2,797
  • CPU Profile 8 Threads: 5,300
  • CPU Profile 16 Threads: 10,234
  • CPU Profile Max Threads: 18,334
ryzen threadripper 3990x stock smt off 3dmark cpu profile performance

When running Prime 95 Small FFTs with AVX enabled, the average CPU effective clock is 2444 MHz with 0.775 volts. The average CPU temperature is 54 degrees Celsius. The ambient and water temperature is 22.5 and 34.0 degrees Celsius. The average CPU package power is 233.9 watts.

ryzen threadripper 3990x stock prime 95 avx stability test

When running Prime 95 Small FFTs with AVX disabled, the average CPU effective clock is 2909 MHz with 0.857 volts. The average CPU temperature is 55.2 degrees Celsius. The ambient and water temperature is 22.5 and 34.3 degrees Celsius. The average CPU package power is 252.0 watts.

ryzen threadripper 3990x stock prime 95 non-avx stability test

Going forward I will simplify the Prime95 result overview to highlight the differences rather than explicitly state the figures.

As we discussed earlier in this video, Windows and our benchmark applications may not handle over 128 threads very well. So, from the perspective of performance tuning, it makes sense to check if turning off SMT helps improve performance with some benchmarks.

AMD Ryzen Threadripper 3990X: Stock Performance (SMT OFF)

To run stock with SMT disabled, you have to first go into the BIOS

  • Go to the Ai Tweaker menu
  • Enter the Precision Boost Overdrive submenu
    • Set Precision Boost Overdrive to Disabled
  • Go to the Advanced menu
  • Enter the CPU Configuration submenu
    1. Set SMT Mode to Disabled

Then save and exit the BIOS.

We re-ran the benchmarks and checked the performance increase compared to the default operation.

  • Geekbench 5 (single): +0.16%
  • Geekbench 5 (multi): +15.95%
  • Cinebench R23 Single: +1.08%
  • Cinebench R23 Multi: -11.17%
  • CPU-Z V17.01.64 Single: -0.30%
  • CPU-Z V17.01.64 Multi: -21.65%
  • V-Ray 5: +20.59%
  • AI Benchmark: +10.95%
  • Y-Cruncher PI MT 5B: +13.65%
  • Blender Classroom: +7.77%
ryzen threadripper 3990x stock smt off benchmark performance

Here is the 3DMark CPU Profile benchmark performance:

  • CPU Profile 1 Thread: +1.12%
  • CPU Profile 2 Threads: +0.91%
  • CPU Profile 4 Threads: +0.11%
  • CPU Profile 8 Threads: +0.81%
  • CPU Profile 16 Threads: -0.46%
  • CPU Profile Max Threads: +11.93%
ryzen threadripper 3990x stock smt off 3dmark cpu profile performance

The benchmark performance is all over the place. We can see clear performance improvements in specific multi-threaded benchmarks such as Geekbench 5, V-Ray 5, AI Benchmark, Y-Cruncher, Blender, and 3DMark CPU Profile. However, we also see cases where the performance is reduced significantly, for example, in Cinebench R23 and CPU-Z.

When comparing the Prime95 results, we find that in both AVX and non-AVX workload scenarios disabling SMT provides additional performance headroom. The Precision Boost algorithm boosts the frequency 240 MHz in an AVX and 150 MHz higher in a non-AVX all-core multi-threaded workload.

We also notice that the limiting factor for higher frequency is not the TDP as in all our stability tests the maximum PPT remains well below the limit of 280 watts. The limiting factor in all our tests is the TDC which maxes out at 215 amps. In the non-AVX workload, we have an additional limiting factor as the EDC also maxes out at 300 amps.

Now, let us try our first overclocking strategy.

However, before we get going, make sure to locate any of the following three buttons: Safe Boot button, ReTry button, and CMOS Clear button

The Safe Boot button temporarily applies safe settings to the BIOS while retaining the overclocked settings, allowing you to modify the settings causing a boot failure. The ReTry button forces the system to reboot in case it locks up during the boot process where the Reset button is rendered useless. It will not change anything to your BIOS settings. Both Safe Boot and ReTry buttons sit right next to each other at the bottom right of your motherboard.

Pressing the Clear CMOS button will reset all your BIOS settings to default. This is useful in case you want to start your BIOS configuration from scratch. However, it does not delete any of the BIOS profiles previously saved. The Clear CMOS button is located on the rear I/O panel.

Brief History of AMD Zen Performance Tuning Technologies

Since the launch of its very first Ryzen CPU in March 2017, AMD has provided end-users with various performance tuning opportunities. There are three relevant technologies: XFR or Extended Frequency Range, PB or Precision Boost, and PBO or Precision Boost Overdrive.

Let’s take a trip down memory lane.

Zen: PB & XFR

The first AMD Zen CPUs came with two major performance features: Precision Boost and Extended Frequency Range.

Precision Boost is an evolution of AMD’s Core Performance Boost (CPB) technology which came to market in 2010 with the Phenom II X6 product line.

precision boost

Precision Boost uses a proprietary algorithm with inputs from a plethora of sensors inside the CPU to determine the optimal frequency and voltage at any given time. Precision Boost allows the CPU to opportunistically increase its clock frequency over base frequency when conditions are right.

To estimate the available headroom the Ryzen CPU relies on the SenseMI technology suite. Inside the Ryzen CPU, there’s a large number of sensors that allow the Pure Power technology to make adaptive adjustments to optimize power usage without negatively affecting performance. Precision Boost leverages the Pure Power sensor network to boost performance.

The original implementation of Precision Boost is very similar to the 2010 implementation of Core Performance Boost as it provides a pretty rough boost mechanism. For Ryzen CPUs there are only 2 boost scenarios: 2-core and all-core boost. The Ryzen Threadripper CPUs also have 2 boost cases: 4-core and all-core boost.

A crucial competitive advantage of the Precision Boost implementation is that the frequency can be increased in steps of 25 MHz as opposed to the traditional 100 MHz. In theory, this should allow for boosting in more scenarios and thus enable higher average performance.

ryzen 7 1800x precision boost extended frequency range

Extended Frequency Range is also a pillar of the SenseMI technology suite. XFR is designed to reward customers who pair the CPU with enthusiast-grade cooling and allows the CPU to boost beyond the Precision Boost maximum boost if conditions are right.

extended frequency range

The Extended Frequency Range is available only for up to 2 cores on Ryzen 1000 CPUs and up to 4 cores on Ryzen Threadripper 1000 CPUs.

Contrary to popular belief, XFR is available on all Ryzen 1000 series processors, however SKUs with the -X mark would boost up to an additional 100 MHz whereas non-X processors would only boost up to 50 MHz For Ryzen Threadripper CPUs, the extra boost goes up to 200 MHz.

extended frequency range

Zen+: PB2, PBO, & XFR2

The Zen+ processors came with improved Precision Boost and XFR implementations, as well as an overclocker’s extension called Precision Boost Overdrive.

Precision Boost 2 is an evolution of the original Precision Boost technology. The principle of providing the user with more performance through frequency boost still applies. However, instead of evaluating the available headroom based on active cores, Precision Boost 2’s algorithm evaluates the headroom based on CPU temperature, current, and power.

precision boost 2

The crucial advantage of this new algorithm is that Precision Boost retires the 2-scenario boost cases (2-core vs all-core for Ryzen desktop) and allows for frequency boosting of any number of cores. The largest improvement can be seen in workloads with 3 or 4 active cores and AMD claimed they observed frequency improvements up to 500 MHz

Precision Boost Overdrive is the overclocker’s extension of Precision Boost 2 as it provides us with tools to tweak the Precision Boost 2 algorithm and achieve higher frequencies. It is important to mention that using Precision Boost Overdrive is a form of overclocking and is therefore not covered by warranty.

precision boost overdrive

If you understand the profound difference in the boost approach of Precision Boost 2 versus the original, you will also understand the opportunity that rises from it. Precision Boost Overdrive allows the end-user to change the power, thermal, and current parameters to provide the Precision Boost 2 algorithm with even more headroom. Precision Boost Overdrive has three main tuning knobs:

  • Package Power Tracking or PPT, measured in watts, is the amount of power the processor can draw from the socket before the boost levels off. It is important to note that this measure includes the power from all parts of the CPU, including the cores but also the memory controller and integrated graphics.
  • Electrical Design Current or EDC, measured in amps, is the peak current that the motherboard VRM can supply under transient conditions. A higher spec (and more expensive) VRM will provide more headroom.
  • Thermal Design Current or TDC, measured in amps, is the current the VRM can supply for a sustained period. Essentially, the limiting factor for this will be the combination of the VRM components and the VRM thermal solution.

Extended Frequency Range 2 is an evolution of the XFR technology in line with Precision Boost 2. Whereas the original XFR only allowed for up to 2 cores on desktop and up to 4 cores on high-end desktop to boost beyond the Precision Boost maximum turbo, XFR 2 allows for any number of cores to boost higher than the Precision Boost limit as long as the CPU temperature is below 60 degrees Celsius.

extended frequency range 2

Zen 2: PB2 & PBO+

The Zen 2 processors come with a minor iteration on the performance tuning technology suite. The Precision Boost 2 algorithm mechanics stay the same, though obviously, the frequency targets have shifted. The biggest change was made with the Precision Boost Overdrive implementation.

Precision Boost Overdrive Plus is an unofficial name I just came up with to highlight the difference with PBO. Whereas the original PBO only allowed for adjusting the power and current parameters of the Precision Boost 2 algorithm, PBO+ also allows for automatic overclocking or AutoOC.

precision boost 2

AutoOC can be most easily explained as a user-configurable version of XFR2. As you remember, XFR allowed the processor to boost higher than the maximum Precision Boost frequency if the CPU temperature was low enough. The maximum boost was 100MHz for Ryzen processors and 200MHz for Ryzen Threadripper processors.

With Zen 2, XFR disappears and is replaced by AutoOC. The user can now manually configure the maximum overclock in steps of 25MHz up to 200MHz. It’s important to note that setting 200MHz simply lifts the maximum frequency ceiling but does not guarantee a higher frequency. The effective boost frequency is still governed by the Precision Boost 2 algorithm.

In addition to the boost override setting, PBO+ also offers a setting called Scalar. The Scalar is a single factor that, when increased, forces the Precision Boost 2 algorithm to pursue higher voltages more aggressively. As a consequence, the frequency would be higher too.

Zen 3: PB2 & PBO2

With the launch of Zen 3, AMD included the same implementation of Precision Boost 2 and an upgraded version of Precision Boost Overdrive.

Precision Boost Overdrive 2 builds on the PBO implementation of Zen 2. In addition to the overclocking knobs from Zen+ (PPT, TDC, EDC) and Zen 2 (Boost Override and Scalar), Precision Boost Overdrive 2 introduces Curve Optimizer.

precision boost overdrive 2 technology overview

Curve Optimizer allows end-users to adjust the voltage-frequency curve for each CPU core individually. You can offset the entire curve by up to 30 steps in either a positive or negative direction. Each step represents between 3 and 5 mV. So, quick math tells us we can increase or decrease the curve by up to 150 mV.

precision boost overdrive 2 curve optimizer undervolting

Two key things happen when you adjust the voltage-frequency curve with a negative point offset.

First, you effectively tell the CPU that for a given frequency it needs less voltage. And, as a consequence, at a given voltage it can apply a higher frequency. So, when the Precision Boost 2 algorithm determines there’s sufficient power and temperature headroom to use 1.35V, with the Curve Optimizer it will target a higher frequency.

Second, because you use less voltage at a given frequency, the CPU temperature will be lower. That extra thermal headroom will encourage the PBO algorithm to target higher voltages and frequencies.

I explored the ins and outs of Precision Boost Overdrive 2 in my Ryzen 7 5700G SkatterBencher blog post, so if you want to learn more about the impact of each of these settings, I suggest you check out that video.

OC Strategy #1: PBO + D.O.C.P.

In our first overclocking strategy we simply take advantage of enabling Precision Boost Overdrive and ASUS D.O.C.P.

PBO stands for Precision Boost Overdrive and is an extension of the Precision Boost technology integrated into all AMD Ryzen CPUs.

Precision Boost Overdrive “Plus”

Since the Ryzen Threadripper 3990X features Zen 2 cores, it goes without saying we’re only able to use the performance tuning knobs from PBO+. In this overclocking strategy, we’re just enabling PBO whereas in the next strategy we’ll explore tuning the parameters.

By enabling Precision Boost Overdrive, we allow the motherboard to change the PBO parameters to values programmed to the BIOS. We find that the following values have changed:

Increasing the PPT, TDC, and EDC limit enables more frequency headroom in multi-threaded workloads that were previously limited by the TDP. The CPU FIT limit increases by changing the Scalar and encourages the CPU to pursue higher voltages. The Frequency limit can technically also increase using a +200MHz boost override but this is not done with this particular BIOS. The THM (temperature) and VID (voltage) limits are hardcoded and cannot be manually increased.

So overall, we expect to see performance increase as more cores are in use.

Of course, in allowing Precision Boost 2 to take advantage of the increased power and current limits, we will also see increased operating temperatures. As you’ll see in a couple of minutes, my ElmorLabs tools set up came in handy to identify a key problem with my system.

Key Challenge: Water Temperature

As I explained earlier, using the ElmorLabs Easy Fan Controller I map the radiator fan curve to the water temperature using the most aggressive standard curve. The curve initiates the fan at 25 degrees Celsius and ramps up gradually to 100% fan speed at a water temperature of 40 degrees Celsius.

elmorlabs efc 25 40 fan curve

With normal desktop CPUs, the CPU temperature reaches TjMax well before my fans run at 100% due to the water temperature. However, with the Ryzen Threadripper 3990X, that’s different.

As you will see from the Prime95 results, under a sustained multi-threaded workload with PBO enabled the water temperature exceeds 40 degrees Celsius. That means even though my fans are spinning full blast at 40 degrees, they’re not able to cool down the radiator and water sufficiently. In other words: I am limited by my cooling solution.

water temperature thermal challenge

Taking a step back, there are multiple layers to the thermal challenge:

  1. How hot the chip gets
  2. How fast the heat is transferred away from the chip, and
  3. How fast the heat is removed from the cooling system.
thermal challenge

Now we can evaluate our specific thermal issue. As we know the CPU dies are not exceeding TjMax, the heat removal is our issue. We can only fix our thermal challenge by either

  1. Changing how hot the CPU dies get by reducing the operating voltage, or
  2. Changing how fast we can remove the heat from the cooling solution by changing the radiator or fans (as unfortunately we’re already running at 100% fan speed)

Going forward, this thermal challenge will prevent us from maximizing the performance of our system. I did consider purchasing an additional radiator but maybe I’ll do that if/when Threadripper 5000 comes to market.

D.O.C.P – Direct Over Clock Profile

D.O.C.P. stands for Direct Over Clock Profile. It is an ASUS technology that aims to replicate the Intel XMP feature we know from Intel platforms. XMP allows memory vendors such as G.SKILL to program higher performance settings onto the memory sticks. If the motherboard supports XMP, then you can enable higher performance with a single BIOS setting. So, it saves you lots of manual configuration.

When enabling D.O.C.P on the Zenith II Extreme we are informed that the best performance is achieved with memory clock and fabric clock running at the same frequency. We will return to this later in the video. It also tells us that the maximum fabric clock is around 1800 MHz

While our memory kit is rated at DDR4-4266, I will run it at DDR4-3600 with the fabric clock in sync at 1800 MHz Not only will this ensure we run at optimal performance, but it also helps us avoid a minor issue with the Zenith II Extreme. On this motherboard, it’s not possible to run higher than the 1.2V default DRAM voltage unless you enable LN2 mode. I won’t dig into why that is as this particular issue was resolved on the Zenith II Extreme Alpha motherboard anyway.

Upon entering the BIOS

  • Go to the Ai Tweaker menu
  • Set Ai Overclock Tuner to D.O.C.P. Standard
  • Set Memory Frequency to DDR4-3600MHz
  • Enter the Precision Boost Overdrive submenu
    • Set Precision Boost Overdrive to Enabled
  • Leave the Precision Boost Overdrive submenu
  • Set DRAM AB Voltage to 1.2
  • Set DRAM CD Voltage to 1.2

Then save and exit the BIOS.

We re-ran the benchmarks and checked the performance increase compared to the default operation with both SMT enabled and disabled.

SMT Enabled

  • Geekbench 5 (single): +3.36%
  • Geekbench 5 (multi): +15.28%
  • Cinebench R23 Single: +0.15%
  • Cinebench R23 Multi: +17.54%
  • CPU-Z V17.01.64 Single: +0.13%
  • CPU-Z V17.01.64 Multi: +18.16%
  • V-Ray 5: +8.21%
  • AI Benchmark: +27.74%
  • Y-Cruncher PI MT 5B: +9.76%
  • Blender Classroom: +21.98%
Ryzen Threadripper 3990X pbo docp benchmark performance

Here is the 3DMark CPU Profile benchmark performance:

  • CPU Profile 1 Thread: +1.67%
  • CPU Profile 2 Threads: +0.07%
  • CPU Profile 4 Threads: +0.36%
  • CPU Profile 8 Threads: +1.34%
  • CPU Profile 16 Threads: +2.70%
  • CPU Profile Max Threads: +26.14%
Ryzen Threadripper 3990X pbo docp 3dmark cpu profile performance

SMT Disabled

  • Geekbench 5 (single): +2.42%
  • Geekbench 5 (multi): +28.79%
  • Cinebench R23 Single: +0.23%
  • Cinebench R23 Multi: +0.35%
  • CPU-Z V17.01.64 Single: +0.53%
  • CPU-Z V17.01.64 Multi: -11.27%
  • V-Ray 5: +8.21%
  • AI Benchmark: +43.74%
  • Y-Cruncher PI MT 5B: +29.47%
  • Blender Classroom: +24.72%
Ryzen Threadripper 3990X pbo docp smt off benchmark performance

Here is the 3DMark CPU Profile benchmark performance:

  • CPU Profile 1 Thread: +2.51%
  • CPU Profile 2 Threads: +2.59%
  • CPU Profile 4 Threads: +0.86%
  • CPU Profile 8 Threads: +1.72%
  • CPU Profile 16 Threads: +2.14%
  • CPU Profile Max Threads: +37.92%
Ryzen Threadripper 3990X pbo docp smt off 3dmark cpu profile performance

By simply enabling Precision Boost Overdrive, we get significant performance gains in the multi-threaded benchmark applications. In tests that use only a few cores, we see a little bit of improvement thanks to the increased DRAM and Fabric clock frequency. We see the highest performance increase in AI Benchmark with +43.74% over stock performance.

  • SMT + AVX: +683 MHz
  • SMT + NO AVX: +663 MHz
  • NO SMT + AVX: +743 MHz
  • NO SMT + NO AVX: +711 MHz

Looking at the Prime95 performance, we can see that enabling Precision Boost Overdrive “Plus” offers substantial improvements in clock frequency in both AVX and non-AVX workloads. We gain up to 743 MHz in frequency. That’s a huge performance uplift!

OC Strategy #2: PBO Tuned + D.O.C.P.

In our second overclocking strategy we will make use of the overclocking tools provided by Precision Boost Overdrive.

Tuning Precision Boost Overdrive

As I explained earlier in this video, Zen 2 processors like the Ryzen Threadripper 3990X come with the Precision Boost Overdrive “Plus” technology. In short, PBO+ offers 5 key performance tuning knobs which impact the frequency boost behavior of the Precision Boost 2 algorithm:

  • Package Power Tracking or PPT, measured in watts, is the amount of power the processor can draw from the socket before the boost levels off. It is important to note that this measure includes the power from all parts of the CPU, including the cores but also the memory controller and integrated graphics.
  • Electrical Design Current or EDC, measured in amps, is the peak current that the motherboard VRM can supply under transient conditions. A higher spec (and more expensive) VRM will provide more headroom.
  • Thermal Design Current or TDC, measured in amps, is the current the VRM can supply for a sustained period. Essentially, the limiting factor for this will be the combination of the VRM components and the VRM thermal solution.
  • Scalar, expressed as a factor, is a way to tell the Precision Boost algorithm that the CPU quality is better than it is. A higher-quality CPU can reach higher frequencies at the same voltage or use higher voltages within the same thermal constraints. Effectively, the scalar can fool the PBO algorithm in pushing more voltage to the CPU even if it would normally not do so given the factory-fused silicon quality indicator.
  • Boost Override or Fmax Offset, measured in MHz, is a tool to set a higher ceiling for the maximum CPU frequency. The Fmax Offset can be set in steps of 25 MHz up to 200 MHz
Ryzen Threadripper 3990X precision boost overdrive parameters

I explored the ins and outs of Precision Boost Overdrive in my Ryzen 7 5700G SkatterBencher blog post, so if you want to learn more about the impact of each of these settings, I suggest you check out that video.

Combined, tuning these settings allow for not just higher frequency, but also a longer period at higher power consumption. Tuning the parameters is not that complicated.

Generally, for Scalar and Boost Override I usually max out to 10X and +200 MHz immediately.

For PPT, EDC, and TDC you can refer to the values shown in HWiNFO for reference. For example, in the Prime95 non-AVX result from our previous strategy, we find that the maximum values for PPT, EDC, and TDC are 546W, 470A, and 395A. As you notice, the EDC maximum value of 470A is also the limit as programmed by the BIOS.  I use these values as a starting point to initiate the tuning process.

For tuning itself, simply increase the limits in the BIOS, reboot, and open the same benchmark workload. Then check if the maximum values stay below our manually set limit. If they hit the limit, go back into the BIOS and further increase. Keep doing this until the maximum values stay below your configured limit.

After tuning, I use the following PBO settings:

Ryzen Threadripper 3990X pbo settings

Upon entering the BIOS

  • Go to the Ai Tweaker menu
  • Set Ai Overclock Tuner to D.O.C.P. Standard
  • Set Memory Frequency to DDR4-3600MHz
  • Enter the Precision Boost Overdrive submenu
    • Set Precision Boost Overdrive to Manual
    • Set PPT Limit to 750
    • Set TDC Limit to 525
    • Set EDC Limit to 725
    • Set Precision Boost Overdrive Scalar to Manual
    • Set Customized Precision Boost Overdrive Scalar to 10X
    • Set Max CPU Boost Clock Override to 200MHz
  • Leave the Precision Boost Overdrive submenu
  • Set DRAM AB Voltage to 1.2
  • Set DRAM CD Voltage to 1.2

Then save and exit the BIOS.

We re-ran the benchmarks and checked the performance increase compared to the default operation.

SMT Enabled

  • Geekbench 5 (single): +3.98%
  • Geekbench 5 (multi): +15.98%
  • Cinebench R23 Single: +0.15%
  • Cinebench R23 Multi: +21.34%
  • CPU-Z V17.01.64 Single: +0.40%
  • CPU-Z V17.01.64 Multi: +18.77%
  • V-Ray 5: +8.65%
  • AI Benchmark: +32.93%
  • Y-Cruncher PI MT 5B: +10.11%
  • Blender Classroom: +21.98%
Ryzen Threadripper 3990X pbo tuned benchmark performance

Here is the 3DMark CPU Profile benchmark performance:

  • CPU Profile 1 Thread: +1.67%
  • CPU Profile 2 Threads: +0.63%
  • CPU Profile 4 Threads: +2.15%
  • CPU Profile 8 Threads: +1.60%
  • CPU Profile 16 Threads: +3.40%
  • CPU Profile Max Threads: +27.70%
Ryzen Threadripper 3990X pbo tuned  3dmark cpu profile performance

SMT Disabled

  • Geekbench 5 (single): +4.14%
  • Geekbench 5 (multi): +28.88%
  • Cinebench R23 Single: +0.46%
  • Cinebench R23 Multi: +0.37%
  • CPU-Z V17.01.64 Single: +1.13%
  • CPU-Z V17.01.64 Multi: -12.95%
  • V-Ray 5: +34.23%
  • AI Benchmark: +46.86%
  • Y-Cruncher PI MT 5B: +29.49%
  • Blender Classroom: +24.72%
Ryzen Threadripper 3990X pbo tuned smt off benchmark performance

Here is the 3DMark CPU Profile benchmark performance:

  • CPU Profile 1 Thread: +2.79%
  • CPU Profile 2 Threads: +2.80%
  • CPU Profile 4 Threads: +2.68%
  • CPU Profile 8 Threads: +1.68%
  • CPU Profile 16 Threads: +1.94%
  • CPU Profile Max Threads: +38.02%
Ryzen Threadripper 3990X pbo tuned smt off 3dmark cpu profile performance

After tuning the PBO parameters, we see a small bump in performance across the board, though not as much as we had hoped. This is reasonable for multi-threaded benchmark applications as most benchmarks don’t require peak power and likely weren’t limited by the default PBO settings. However, even in single-threaded applications, we don’t see much performance improvement despite increasing the frequency ceiling by 200MHz. This is likely because the algorithm simply doesn’t boost higher.

We can illustrate what’s going on by looking at the Precision Boost parameters during the various benchmarks.

Ryzen Threadripper 3990X pbo benchmark limits

As you can see in the table above, in only four benchmarks we hit any of the Precision Boost limitations: Geekbench5, Cinebench R23 Multi, Y-Cruncher, and Blender Classroom. Increasing the PBO values could have an impact on these benchmarks.

Also note that in Geekbench 5, Cinebench R23 Single, AI Benchmark, Y-Cruncher, and 3DMark CPU Profile we hit the maximum frequency of about 4.3 GHz at the maximum VID of 1.5V. That means while we could increase the frequency ceiling by 200MHz, there is little to no room for additional voltage to get the higher voltage. Our only solution here would be Curve Optimizer which unfortunately is only available on Zen 3.

Let’s have a closer look at the Geekbench 5 benchmark which in our overview showed it’s hitting the EDC limit. I ran a couple of Geekbench benchmarks back-to-back, collected the data with HWiNFO, then put it all in an Excel chart. I did this for three scenarios:

  1. PBO Disabled (stock)
  2. PBO Enabled (ASUS values)
  3. PBO Tuned (my values)

Looking at the EDC results, we can see that PBO Tuned enables a much higher peak current in the Geekbench 5 benchmark. About 27% of the benchmark time is spent at 655A or higher. With just PBO enabled we hit the limit of 400A about 27% of the time. With PBO disabled, we spend 27% of the time around the limit of 300A. EDC represents the short-term current peak and as such reflects mainly the short performance bursts.

Ryzen Threadripper 3990X pbo tuned edc

When we look at the PPT values, the result is much less obvious. While we spend more time at 550W or higher with our PBO Tuned settings, it’s almost insignificant.

Ryzen Threadripper 3990X pbo tuned ppt

Looking at the VID range, with our manually tuned PBO Scalar parameter of 10X, we spend about 55% of the time above 1.4V. ASUS increases the scalar value to 7X when enabling PBO and this puts us to about 49% of the time at 1.4V or above. With PBO disabled, we only spend about 10% of the benchmark time at 1.4V or above.

Ryzen Threadripper 3990X pbo tuned vid

Looking at the effect the EDC, PPT, and VID have on the effective clock, we find that while PBO Tuned helps us achieve higher peak effective clocks (4412 MHz versus 4336 MHz), our peak effective clock when all cores are active is lower (4161 MHz vs 4331 MHz).

Ryzen Threadripper 3990X pbo tuned effective clock

The overall benchmark performance depends ultimately on the frequencies during the entire benchmark and not the peak values. So overall, PBO Tuned should still yield slightly better performance, but we can see from our test data that the impact of tuning Precision Boost Overdrive values is unlikely to yield substantial differences.

Or, put differently, the ASUS default PBO values are sufficient in most scenarios. The tougher the workload, the more it will make sense to further tune the PBO parameters for higher frequencies.

In our toughest workload, Prime95 Small FFTs, we should so see good improvements.

  • SMT + AVX: +150 MHz
  • SMT + NO AVX: +165 MHz
  • NO SMT + AVX: +137 MHz
  • NO SMT + NO AVX: +85 MHz

Looking at the Precision Boost 2 frequency boost in a sustained multi-threaded workload, we find that by manually tuning the Precision Boost Overdrive parameters we get between 85 MHz and 165 MHz additional frequency.

The Precision Boost parameters PPT, TDC, and EDC are not the limiting factor for frequency anymore as in all scenarios we’re seeing a CPU temperature close to or right on the TjMax of 95 degrees Celsius and a water temperature of 45 degrees Celsius. It would certainly be interesting to see how a larger radiator or better fans would impact the maximum frequency.

Ryzen Threadripper 3990X prime95 stability test after overclock

OC Strategy #3: Manual Overclock

In our third overclocking strategy we will try manual overclocking. With the manual overclocking strategy, I want to illustrate the importance of tuning for your use case. So, for this video, I prepared 3 manual overclocks:

  1. Prime 95 AVX stable with SMT enabled
  2. Prime 95 Non-AVX stable with SMT enabled
  3. Prime 95 Non-AVX stable with SMT disabled
Ryzen Threadripper 3990X manual overclocks

Each of these three configurations will have a different BIOS configuration and different benchmark performance. I will try to summarize the performance as best as possible so please bear with me.

Before we start, however, it is important to know that AMD has two overclocking modes: PBO and OC Mode. 

The first mode you already know is Precision Boost Overdrive. This mode allows the user to change a limited number of parameters that are included in the PBO algorithm. However, it is still the AMD Precision Boost proprietary algorithm that will eventually determine the performance of the system. 

The second overclocking mode is called OC Mode. OC Mode disables all the limiters, voltage controllers, and most protections. A major downside of OC Mode is that all automatic overclocking features are disabled too. That means you lose the benefit of the high single-threaded frequencies that the Precision Boost algorithm offers.

To better understand the performance tuning opportunities embedded in the Ryzen Threadripper 3990X processor, let’s have a closer look at its architecture.

CPU Core Frequency & Voltage

The Ryzen Threadripper 3990X is the flagship product in AMD’s Castle Peak Zen 2 based CPU line-up. It is still the most powerful CPU for desktop available today. Castle Peak is derived from the EPYC server product line and features no less than nine chips on package: eight (8) CCDs and a single IO die.

Ryzen Threadripper 3990X package

CCD stands for Core Chiplet Die and is just a die on a Ryzen CPU that has CPU cores. The Zen 2 CPU cores are packed together in what’s called a CCX, or Core Complex. A Zen 2 CCX consists of up to four individual cores each with its L1 and L2 cache and a shared 16MB of L3 cache. Two CCXs are packed together inside a CCD, effectively packing together 8 Zen 2 CPU cores in one die.

amd zen 2 core

The frequency of the CPU cores is driven by a 100 MHz reference clock input. Each CCX has its own PLL and thus can run an independent frequency. The cores within a CCX share the same PLL so they’ll run at the same frequency. For the Ryzen Threadripper 3990X, that means we can set an independent frequency for each of the 16 CCXs.

Ryzen Threadripper 3990X cpu frequency

The voltage of the CPU cores is provided by the VDDCR_CPU voltage rail. This voltage is shared across all the CCDs so each CPU core will be provided with the same voltage.

Ryzen Threadripper 3990X cpu voltage

That said, AMD extensively uses integrated voltage regulators. The voltage regulators are ultra-high efficiency digital low-dropout or dLDO. Most of the power domains, including the CPU cores, caches, fabric, and so on, have their dLDOs which can be controlled individually. However, on consumer parts, these dLDOs are permanently bypassed. That means the regulators are disabled and the voltage regulation takes place on the motherboard via the VRM.

amd dldo

Choosing the right manual voltage is always a matter of finding the right trade-off between increased overclocking potential, the thermal challenges that come with increased voltage, and of course consideration of CPU lifespan.

Per-CCX Frequency Tuning

It’s with that last thought that we kick off what’s arguably the most tedious or exciting aspect of Ryzen Threadripper overclocking: per-CCX frequency tuning. In short, here are the challenges and opportunities:

  • We already know that the cooling solution will be a key limiting factor because even at 100% fan speed we can’t keep the water temperature below our maximum target of 40 degrees Celsius.
  • As we’re limited by the cooling solution, we will also be limited by maximum CPU voltage because power consumption increases exponentially with operating voltage and temperature scales (somewhat) linearly with power consumption.
  • The AMD Ryzen Threadripper CPU offers only one VDDCR_CPU voltage rail which provides the core voltage for all eight CCDs.
  • However, we can tune the CPU ratio for each of the 16 CCXs independently.

All things summed up; we follow the following process for manual tuning. For each of the three scenarios outlined earlier in the video, we select a target CPU VID and run our stability workload. If we find sufficient thermal headroom, we increase the VID. If we find the CPU overheating, we reduce the VID.

Once we have found a CPU VID, we’re comfortable with, we set all CCXs to a certain ratio and run the stability test. Our target is to achieve stability of 30 minutes during the test. Using HWiNFO we check if the Average Effective Clock Maximum and Average are the same. If a core is unstable or drops out, the maximum effective clock will be higher than the average effective clock. Then we can use HWiNFO to check which cores are having issues. For the cores that have issues, you can reduce the ratio; for the cores that work fine, you can increase the ratio.

Ryzen Threadripper 3990X manual overclocking per-ccx frequency challenges and opportunities

I found it helpful to write out the core numbers and current ratio so I could find which CCX to change quicker. In the table below you can find the CCXs, their cores, and the ratio I used for each of the 3 manual overclocking scenarios.

Ryzen Threadripper 3990X manual overclocking per-ccx frequency

Just as a reminder: the values in this table are tuned for my specific system and a specific stability test. Your CPU may have wildly different values depending on the CPU sample, cooling and motherboard, and your chosen stability test.

Memory Frequency & Voltage

The Castle Peak package is divided into 4 equal quadrants. Each quadrant consists of a pair of CCDs both with access to two linked memory channels. So, in total Castle Peak processors offer up to eight channels of DDR4 memory half of which are disabled on the overclockable Ryzen Threadripper non-Pro processors. Even though that’s half of what the Zen 2 Ryzen EPYC server processors offer, it’s still double the channels compared to the desktop Zen 2 Ryzen CPUs.

amd zen 1 topology

It’s important to highlight the significant change in CPU architecture between Zen 1 to Zen 2.

On Zen and Zen+ processors, there are up to 4 CCDs on package. Each CCD contains alongside the CCXs also 1 memory controller, 4 infinity fabric connections, and a bunch of other IO. Each die has access to its own set of memory via the on-die memory controller. When a CPU core needs to access stored in the memory connected to another die, it needs to go via the infinity fabric connections to access the memory controller on the other die.

amd zen 1 vs zen 2 epyc architecture

This came with a significant performance penalty.

As per AMD documentation, the memory access latency via an on-die memory controller would be 90ns. In a worst-case scenario, memory access latency from a different die would be as high as 234ns.

zen 1 memory latency

In memory latency-sensitive workloads, like gaming, this yields quite a performance impact. As a solution, AMD promoted a “Gaming Mode” which would disable cores to prevent a CPU core from having to check other CCDs’ memory controller.

threadripper game mode

On Zen 2 processors, there are up to 9 chips on package: 1 I/O die and up to eight CCDs. The CCD is vastly simplified as it now only contains the CCXs with the CPU cores and an infinity fabric connection. All other I/O connectivity including the memory controllers moved from the CCDs into the on-package 14nm I/O die. This ensures better overall latency for memory access but puts the onus on a fast Fabric clock to ensure high performance. When a CPU core needs to access data in the system memory, it connects via the infinity fabric to the I/O die, and then access the memory controller.

zen 1 vs zen 2 epyc

While the minimum memory access latency increased from 90ns to 94ns, the worst-case scenario decreased from 234ns to 114ns. On average, that’s a substantial performance improvement.

zen 2 topology

AMD’s officially supports up to DDR4-3200 but of course, Ryzen CPUs can push the memory frequency slightly higher than that. That said, it’s not as easy as it may sound.

To make a long story short, there are 3 relevant frequencies when it comes to system memory performance:

  • mClk, or memory clock, is the frequency of your DDR4 memory
  • uClk, or memory controller clock, is the frequency of the integrated memory controllers
  • fClk, or fabric clock, is the frequency of the infinity fabric.
ryzen mclk uclk fclk

The memory and memory controller frequency is driven by the same 100 MHz reference clock also used for the CPU cores.

The memory controller and memory frequency are tied together. You can run both at the same frequency or, when memory gear-down mode is enabled, run the memory controller at half the frequency of the system memory.

Ryzen Threadripper 3990X memory and memory controller frequency

The voltage of the memory is provided by two VDDIO_MEM_S3 voltage rails. Each voltage rail powers the memory linked to a specific memory controller. The voltage for the memory controller and fabric is provided by the VDDCR_SOC voltage rail.

Ryzen Threadripper 3990X memory and memory controller voltage

For our configuration, we continue to use our XMP memory timings but change the memory multiplier and the memory voltage to maintain synchronous mode. So, we manually set the memory to DDR4-3600 and the Fabric clock to 1800 MHz. I also set the DRAM voltage to 1.2V to avoid the aforementioned issue with the Zenith II Extreme motherboard.

Fabric Frequency & Voltage

When the CPU cores want to store data to or retrieve data from the system memory, it does this via the Infinity Fabric and the memory controllers in the IOD chip. By default, these three parts are running in sync meaning they all operate at the same frequency. When overclocking the system memory, you can choose to either operate in synchronous mode or asynchronous mode.

Synchronous mode is relatively taxing for the CPU, so on most Ryzen CPUs, the system will automatically enable “Asynchronous mode” beyond a certain memory frequency.

In asynchronous mode, the memory controller will operate at half the frequency of the system memory and the fabric clock will also run below system memory frequency. This will result in a performance penalty. The size of the performance penalty is application-specific and also depends on the final memory frequency. A sufficiently high memory frequency can overcome the performance penalty from running asynchronously.

ryzen 3000 asynchronous mode

As the memory overclocking capabilities of the Castle Peak processors are fairly limited, not in the least because of the 4 memory controllers, we prefer to run in synchronous mode.

The fabric clock frequency is driven by the same 100 MHz reference clock also used for the CPU cores. It can be clocked independently from the CPU cores, memory controller, or memory frequency

Ryzen Threadripper 3990X fabric frequency

The voltage fabric is provided by the VDDCR_SOC voltage rail which also powers the memory controllers. While there’s only one incoming voltage rail to the IO die, remember that AMD uses DLDOs to internally create additional voltage rails. That’s why you’ll find options like VDDG for the Fabric Phy in the BIOS. VDDG is a DLDO powered voltage derived from the VDDCR_CPU or VDDCR_SOC voltage rails.

Ryzen Threadripper 3990X fabric voltage

For the Zen 2 processors, generally, synchronous mode is supported up to DDR4-3600 and 1800 MHz Fabric Clock though some people may be able to reach a bit higher. On this particular system, I was able to reach 1867 MHz fabric clock

Now that we know the ins and outs of Ryzen Threadripper 3990X manual overclocking, let’s jump into the BIOS. I will provide the BIOS settings of the third manual overclocking scenario where we tuned the system for Prime95 non-AVX with SMT disabled.

Upon entering the BIOS

  • Go to the Ai Tweaker menu
  • Set Ai Overclock Tuner to D.O.C.P. Standard
  • Set Memory Frequency to DDR4-3600MHz
  • Set FCLKC Frequency to 1800MHz
  • Enter the CPU Core Ratio (Per CCX) submenu
    • Set Core VID to 1.275
    • Set CCD0 CCX0 to 40.50
    • Set CCD0 CCX1 to 41.75
    • Set CCD1 CCX0 to 41.25
    • Set CCD1 CCX1 to 40.00
    • Set CCD2 CCX0 to 39.50
    • Set CCD2 CCX1 to 39.75
    • Set CCD3 CCX0 to 39.25
    • Set CCD3 CCX1 to 39.25
    • Set CCD4 CCX0 to 40.50
    • Set CCD4 CCX1 to 41.75
    • Set CCD5 CCX0 to 41.00
    • Set CCD5 CCX1 to 41.75
    • Set CCD6 CCX0 to 39.50
    • Set CCD6 CCX1 to 39.50
    • Set CCD7 CCX0 to 39.75
    • Set CCD7 CCX1 to 39.75
  • Leave the CPU Core Ratio (Per CCX) submenu
  • Enter the External Digi+ Power Control submenu
    • Set CPU Load-line Calibration to Level 1
  • Leave the External Digi+ Power Control submenu
  • Set DRAM AB Voltage to 1.2
  • Set DRAM CD Voltage to 1.2
  • Go to the Advanced menu
  • Enter the CPU Configuration submenu
    • Set SMT Mode to Disabled

Then save and exit the BIOS.

We re-ran the benchmarks and checked the performance increase compared to the default operation.

As we are used to with AMD Ryzen, manual overclocking has the major drawback of losing the single-threaded performance we get with Precision Boost. Whereas even at stock the CPU cores can boost up to 4350 MHz, with our manual overclock we only reach a maximum of 4175 MHz. That translates into about 5% performance less in single-threaded applications.

In multithreaded applications, the story is quite different as we see performance increases of up to 47.38% in AI Benchmark and generally much higher performance across the board.

  • SMT + AVX: +68 MHz
  • SMT + NO AVX: +42 MHz
  • NO SMT + AVX: /
  • NO SMT + NO AVX: +175 MHz

Looking at the frequencies in a sustained multi-threaded workload we find that by manually tuning the CCXs we improve the frequency between 42 and 175 MHz.

Of course, the story of hitting the limitation of the cooling solution continues. In the most strenuous scenario of Prime95 with AVX and SMT enabled, we’re seeing a CPU temperature close to or right on the TjMax of 95 degrees Celsius and a water temperature exceeding 47 degrees Celsius even with the voltage below 1V.

Ryzen Theadripper 3990X prime 95 stability overclock

AMD Ryzen Threadripper 3990X: Conclusion

All right, let us wrap this up.

I’ve had my eye on trying a Ryzen Threadripper system for a while now. As the Ryzen Threadripper 5000 series has been delayed or canceled, I found myself with an opportunity to check out the most high-end overclockable desktop CPU: the Ryzen Threadripper 3990X.

Truth be told I was not prepared for the challenge this system brought to me. There are many different challenges with this system and even getting Precision Boost Overdrive to run properly is quite a lot of work.

To give a summary:

  • The CPU socket is very sensitive, and you need a perfect “mount” to get all channels to work
  • I had to swap out my regular 850W power supply for a 1500W power supply to handle the current and power swings
  • My 360 radiator and fan setup is unable to maintain a water temperature lower than 40 degrees, effectively bottlenecking the CPU’s overclocking capabilities
  • System performance in benchmarks can vary greatly on whether the application can utilize all 128 threads or not
  • Additionally, the benchmark performance depends on the number of cores used as Precision Boost 2 uses power, current, and temperature to evaluate frequency headroom

I certainly feel like this is one of the most challenging platforms I ever overclocked. But at the same time, it’s also a very interesting experience.

Perhaps oddly, Ryzen Threadripper also presents great opportunities to performance tuners because it matters knowing what use-case you want to optimize for. Understanding the workload provides you with more ways to finetune the performance.

For example, a workload like Geekbench 5 benefits from multi-core but not SMT, and also has single-threaded tests. For this type of workload, you’ll want to finetune the Precision Boost Overdrive parameters and disable SMT.

Another example is AI Benchmark which does have a single-threaded component to it but largely benefits from high multi-threaded non-SMT performance. Here, our best performance is achieved with a manual overclock.

The last example is 3DMark CPU Profile Max Threads, which is a benchmark that scales with multi-core but not SMT. However, it’s not that heavy of a benchmark so we get very good performance with Precision Boost Overdrive already as the algorithm pushes up the frequency relatively high. Here, maybe manual tuning isn’t the exact right answer.

That said, I did try to tune specifically for 3DMark CPU Profile Max Threads and achieved a score of over 27,000 points. That’s an improvement of more than 1,500 points from my regular testing. So again, it pays to understand the benchmark and tune for the specific use-case.

More than any other platform, Ryzen Threadripper rewards people who tune for a specific workload. And it’s reasonable to do so as Threadripper is geared to single-use-case type professionals who need it for either rendering, design work, or high-performance computing, but not all at the same time. That’s different from a mainstream Ryzen desktop platform which is geared towards consumers who will use the platform for streaming, rendering, gaming, maybe some computationally heavy applications.

For Ryzen, you need to ensure solid performance in a wide range of applications. For Ryzen Threadripper, you can focus on peak performance in a limited range of applications

As a final note, I also want to reiterate that I think there’s more performance left in this chip. With a better thermal solution, the CPU would stay below the TjMax of 95 degrees Celsius and we’d likely see even higher frequencies in heavy sustained multi-threaded workloads like Prime95.

Unfortunately, for single-threaded performance, I doubt there’s more juice left in the tank as we’re limited here by the hard-coded maximum VID of 1.5V. Only Curve Optimizer could save us here.

Anyway, that’s all for today!

If Ryzen Threadripper 5000 comes to market, I will gladly revisit the Threadripper series. I can’t wait to curve optimize each of the 64 cores.

I’d like to thank my Patreon supporters for supporting my work. As per usual if you have any questions or comments, feel free to drop them in the comment section below. 

‘Till the next time!

Liked it? Take a second to support Pieter on Patreon!

1 Comment

  1. SkatterBencher #43: Ryzen Threadripper "5990X" Overclocked to 4825 MHz - SkatterBencher

    […] I highlighted in my 3990X overclocking guide, the water temperature was a crucial limiting factor. As in all my overclocking guides, I use the […]

Leave a Reply