SkatterBencher #47: AMD Ryzen 7 7700X Overclocked to 5750 MHz

We overclock the AMD Ryzen 7 7700X up to 5750 MHz with the ASUS ROG Crosshair X670E Extreme motherboard and EK custom loop water cooling.

Zen 4 provides a unique set of overclocking tools, so we will go over various overclocking strategies. Hopefully, it provides you with a solid foundation to start overclocking independently.

Alright, we have lots to cover, so let’s jump straight in.

AMD Ryzen 7 7700X: Introduction

The AMD Ryzen 7 7700X processor is part of the Ryzen 7000 Zen 4 AM5 desktop product line-up.

The Zen 4 desktop CPUs codenamed Raphael launched on August 29, 2022, during an AMD Livestream. At launch, there were 4 SKUs available. The Ryzen 7 7700X we are overclocking today is the only Ryzen 7 processor currently available.

Zen 4 Raphael is very similar to Zen 3 Vermeer, but there are some noteworthy differences. Most importantly, Raphael requires the new AM5 socket and supports DDR5 memory. The CCDs, featuring the Zen 4 CPU cores, is AMD’s first chip using TSMC N5 manufacturing technology. Raphael also introduces AVX-512 support and operates at significantly higher clock frequencies.

The Ryzen 7 7700X has twelve cores with 24 threads, a base frequency of 4.7 GHz, and a maximum listed boost frequency of 5.4GHz. The TDP is 105W, and PPT is 142W.

In this article, we will cover five overclocking strategies:

  • First, we simply rely on AMD PBO and EXPO performance boost technologies
  • Second, we rely on ASUS AI Overclocking performance boost technology
  • Third, we tune Precision Boost Overdrive with Curve Optimizer
  • Fourth, we tune Precision Boost Overdrive with asynchronous eCLK
  • Fifth, we try to do a manual overclock
  • Lastly, we use ASUS Dynamic OC Switcher.

However, before we jump into overclocking, let us quickly review the hardware and benchmarks used in this blog post.

AMD Ryzen 7 7700X: Platform Overview

Along with the AMD Ryzen 7 7700X processor and ASUS ROG Crosshair X670E Extreme motherboard, in this guide, we will be using a pair of G.SKILL Trident Z5 Neo DDR5-6400 memory sticks, an ASUS ROG STRIX RTX 2080TI graphics card, an 512GB M.2 NVMe SSD, a Seasonic Prime 850W Platinum power supply, the ElmorLabs Easy Fan Controller, the ElmorLabs EVC2SX, the EK-Quantum Velocity2 water block, and EK-Quantum water cooling. All this is mounted on top of our favorite Open Benchtable V2. 

ElmorLabs EFC & EVC2

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.

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. I use this configuration for all overclocking strategies.

AMD Ryzen 7 7700X: Benchmark Software

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

AMD Ryzen 7 7700X: Stock Performance

Before we start any overclocking, we must first check the system performance at default settings. Note that on this motherboard, Precision Boost Overdrive is enabled by default.

So, to check the performance at default settings, you must enter the BIOS and

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

Then save and exit the BIOS.

Note that the Precision Boost 2 boosting algorithm is still active even though we disabled Precision Boost Overdrive. The standard parameters of the Precision Boost algorithm for the Ryzen 7 7700X are as follows:

Here is the benchmark performance at stock:

  • SuperPI 4M: 30.385 seconds
  • Geekbench 5 (single): 2,210 points
  • Geekbench 5 (multi): 13,853 points
  • Cinebench R23 Single: 2,002 points
  • Cinebench R23 Multi: 19,803 points
  • CPU-Z V17.01.64 Single: 768.3 points
  • CPU-Z V17.01.64 Multi: 8,067.9 points
  • V-Ray 5: 14,777 vsamples
  • AI Benchmark: 5,172 points
  • 3DMark Night Raid: 78,343 points
  • CS:GO FPS Bench: 601.89 fps
  • Tom Raider: 199 fps
  • Final Fantasy XV: 187.32 fps
Ryzen 7 7700X stock benchmark performance

Here are the 3DMark CPU Profile scores at stock

  • CPU Profile 1 Thread: 1,115
  • CPU Profile 2 Threads: 2,217
  • CPU Profile 4 Threads: 4,248
  • CPU Profile 8 Threads: 7,700
  • CPU Profile 16 Threads: 9,176
  • CPU Profile Max Threads: 9,179
Ryzen 7 7700X stock 3dmark performance

When running Prime 95 Small FFTs with AVX-512 enabled, the average CPU effective clock is 4941 MHz with 1.195 volts. The average CPU temperature is 95.2 degrees Celsius. The ambient and water temperature is 26.5 and 33.3 degrees Celsius. The average CPU package power is 142.1 watts.

Ryzen 7 7700X stock prime95 avx

When running Prime 95 Small FFTs with AVX disabled, the average CPU effective clock is 5028 MHz with 1.247 volts. The average CPU temperature is 95.3 degrees Celsius. The ambient and water temperature is 26.4 and 32.6 degrees Celsius. The average CPU package power is 135.8 watts.

Ryzen 7 7700X stock prime95 non-avx

Now, let us try our first overclocking strategy.

However, before we get going, make sure to locate the CMOS Clear button

Pressing the Clear CMOS button will reset all your BIOS settings to default which is helpful if 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.

OC Strategy #1: PBO 2 + EXPO

In our first overclocking strategy, we take advantage of AMD exclusive features Precision Boost Overdrive and  Extended Profiles for Overclocking.

PBO 2 – Precision Boost Overdrive 2

With the launch of Zen 3, AMD introduced an improved version of the Precision Boost Overdrive toolkit, allowing for manual tuning of the parameters affecting the Precision Boost frequency boost algorithm.

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

There are essentially 3 levels of Precision Boost Overdrive

  1. AMD’s stock values, which can be set by disabling PBO
  2. The motherboard vendor values, which are programmed into the BIOS to match the motherboard VRM specification and can be set by enabling PBO
  3. Custom values, which can be programmed by the end-user

I explored the ins and outs of Precision Boost Overdrive 2 tuning in my AMD Raphael Overclocking launch article. If you want to learn more about the impact of each of these settings, I suggest you check out that article.

In this overclocking strategy, we’re just enabling Precision Boost Overdrive, whereas, in the following strategies, we’ll explore tuning the parameters.

We rely on the motherboard pre-programmed PBO parameters by enabling Precision Boost Overdrive.We find that the following values have changed:

Ryzen 7 7700X pbo parameters

For previous Ryzen CPUs, increasing the platform boost parameters substantially improved performance. Especially for the higher core-count CPUs. For Ryzen 7000, however, AMD’s default platform parameters are relatively unconstraining. So, ultimately, we don’t expect that much performance improvement.

EXPO – Extended Profiles for Overclocking

EXPO stands for AMD Extended Profiles for Overclocking. It is an AMD technology that enables ubiquitous memory overclocking profiles for AMD platforms supporting DDR5 memory. EXPO allows memory vendors such as G.SKILL to program higher performance settings onto the memory sticks. If the motherboard supports EXPO, you can enable higher performance with a single BIOS setting. So, it saves you lots of manual configuration.

While our memory kit is rated at DDR5-6400, I had to run it at DDR5-6000 for stability reasons as my system wasn’t stable at higher frequencies. I’m using an early CPU, motherboard, and BIOS combination, so memory overclocking may improve soon.

Memory Context Restore

In the meantime, to increase the chance of a successful memory overclock, I recommend disabling a memory controller option called Memory Context Restore.

Memory Context Restore essentially enables or disables forced DRAM re-training at every boot. Training is a DRAM process that aims to optimize the signal integrity between the CPU memory controller and DRAM memory chips. Better signal integrity means better stability at higher frequencies. Memory training can be a lengthy process. So, to improve a system’s boot-up speed, BIOS routines typically skip some parts or even the entire process.

I find that disabling this option, and thus forcing the DRAM training process on every boot, significantly improves memory stability at higher frequencies. But unfortunately, it also significantly lengthens the boot-up process.

BIOS Settings & Benchmark Results

Upon entering the BIOS

  • Go to the Extreme Tweaker menu
  • Set Ai Overclock Tuner to EXPO II
  • Set Memory Frequency to DDR5-6000MHz
  • Enter the DRAM Timing Control submenu
    • Set Memory Context Restore to Disabled
  • Leave the DRAM Timing Control submenu
  • Enter the Precision Boost Overdrive submenu
    • Set Precision Boost Overdrive to Enabled

Then save and exit the BIOS.

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

  • SuperPI 4M: +0.80%
  • Geekbench 5 (single): +0.95%
  • Geekbench 5 (multi): +5.02%
  • Cinebench R23 Single: +0.20%
  • Cinebench R23 Multi: +0.09%
  • CPU-Z V17.01.64 Single: +0.17%
  • CPU-Z V17.01.64 Multi: +0.18%
  • V-Ray 5: +1.79%
  • AI Benchmark: +5.74%
  • 3DMark Night Raid: +0.68%
  • CS:GO FPS Bench: +0.43%
  • Tomb Raider: +1.51%
  • Final Fantasy XV: +0.08%
Ryzen 7 7700X pbo benchmark performance

Here are the 3DMark CPU Profile scores at stock

  • CPU Profile 1 Thread: +0.63%
  • CPU Profile 2 Threads: +0.05%
  • CPU Profile 4 Threads: +0.31%
  • CPU Profile 8 Threads: +1.23%
  • CPU Profile 16 Threads: +0.24%
  • CPU Profile Max Threads: +0.19%
Ryzen 7 7700X pbo 3dmark performance

As expected, enabling Precision Boost Overdrive does little to improve the system’s performance. After all, the CPU is primarily limited by operating temperature, not by any platform power parameters. Thanks to enabling EXPO, however, we do see a performance improvement of  5.74% in AI Benchmark.

When running Prime 95 Small FFTs with AVX-512 enabled, the average CPU effective clock is 4944 MHz with 1.191 volts. The average CPU temperature is 95.2 degrees Celsius. The ambient and water temperature is 26.2 and 33.7 degrees Celsius. The average CPU package power is 148.6 watts.

Ryzen 7 7700X pbo prime95 avx

When running Prime 95 Small FFTs with AVX disabled, the average CPU effective clock is 5036 MHz with 1.246 volts. The average CPU temperature is 95.3 degrees Celsius. The ambient and water temperature is 26.4 and 33.7 degrees Celsius. The average CPU package power is 143.5 watts.

Ryzen 7 7700X pbo prime95 non-avx

OC Strategy #2: AI Overclocking

In our second overclocking strategy, we use the Asus AI Overclocking feature integrated into the ASUS ROG BIOS.

ASUS AI Overclocking

For many years board vendors have tried to implement automatic overclocking features in their BIOS for more straightforward performance enhancement. This has always been a mixed bag as most of the preset OC profiles are overly optimistic in frequency target or overly generous with the voltage selection. So often you would end up with a slightly unstable or overheating system.

ASUS AI overclocking uses a unique strategy for automatic overclocking. Instead of working with preset frequency and voltage profiles, the system will monitor the CPU and cooling system throughout an initial testing phase. Based on its findings, it will then predict the optimal settings. The system will automatically guide the overclocking process and adjust voltages and frequency to match your cooling system.

The better your cooling, the higher your AI overclock.

ASUS introduced AI Overclocking on its Z490 ROG motherboards as a next-generation automatic overclocking technology. Since then, it’s been present on every next Intel platform; however, not on any AMD platform. That changes with the AM5.

There are three steps to enabling AI overclocking. First, reset the BIOS to default settings. Then, reboot and enter the operating system. Run a couple of heavy workloads such as Prime95, Realbench, or Cinebench R23 for 10 to 30 minutes. Then return to the BIOS and enter the AI OC Guide menu from the top. Make sure to read through the explanation and click Enable AI when ready.

In addition to automatic overclocking, AI Overclocking provides a lot of advanced information and suggestions in the AI Features menu. The information includes:

  • P0 VID and SP values for each CPU core
  • Precision Boost Overdrive 2 suggested overclocking parameters
  • Dynamic OC Switcher suggested overclocking parameters

The SP value is based on the combination of maximum boost frequency, temperature, and P0 VID. Generally, it indicates the quality of a particular core. A higher SP value would indicate a better-quality core with superior overclocking capabilities, though it’s not an exact science. The overclocking suggestions are based on a continued evaluation of your CPU thermal solution.

After enabling AI Overclock, the following settings have changed:

  • CPU Core Ratio: AI Optimized
    • Preference: Performance
  • Precision Boost Overdrive: Enabled
    • Medium Load Boostit: Enabled
    • Max CPU Boost Clock Override: +100MHz
    • Scalar: 8X
    • Curve Optimizer: -4 for Cores 0 and 2, -5 for Cores 1, 3, 4, 5, 6, and 7
  • Dynamic OC Switcher: Enabled
    • CCX0 Ratio: 53.25X
    • Core VID: 1.239V
    • Current Threshold: 71A
Ryzen 7 7700X ai overclock settings

As you can see, AI Overclock provides a conservative +100 MHz increase of the Precision Boost maximum frequency and has the CPU boost to 5325 MHz in all-core workloads by enabling Dynamic OC Switcher.

BIOS Settings & Benchmark Results

Upon entering the BIOS

  • Enter the Ai Overclocking Guide
  • Go through the guide, then click Enable AI
  • Set Ai Overclock Tuner to EXPO II
  • Set Memory Frequency to DDR5-6000MHz
  • Ensure CPU Core Ratio is set to AI Optimized and Preference is set to performance
  • Enter the DRAM Timing Control submenu
    • Set Memory Context Restore to Disabled
  • Leave the DRAM Timing Control submenu

Then save and exit the BIOS.

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

  • SuperPI 4M: +2.29%
  • Geekbench 5 (single): +1.45%
  • Geekbench 5 (multi): +5.56%
  • Cinebench R23 Single: +1.05%
  • Cinebench R23 Multi: +4.56%
  • CPU-Z V17.01.64 Single: +1.12%
  • CPU-Z V17.01.64 Multi: +1.73%
  • V-Ray 5: +4.76%
  • AI Benchmark: +7.27%
  • 3DMark Night Raid: +1.44 %
  • CS:GO FPS Bench: +0.09%
  • Tomb Raider: +1.51%
  • Final Fantasy XV: +0.19%
Ryzen 7 7700X ai overclock benchmark performance

Here are the 3DMark CPU Profile scores at stock

  • CPU Profile 1 Thread: +1.88%
  • CPU Profile 2 Threads: +1.49%
  • CPU Profile 4 Threads: +1.62%
  • CPU Profile 8 Threads: +1.99%
  • CPU Profile 16 Threads: +2.01%
  • CPU Profile Max Threads: +1.74%
Ryzen 7 7700X ai overclock 3dmark performance

Increasing the Precision Boost maximum CPU frequency ceiling by 100 MHz is an increase of less than 2% over the standard limit of 5550 MHz. So, we didn’t expect that much performance improvement to begin with. However, the Curve Optimizer settings should provide a nice boost of the average frequency. Overall, the performance uplift is noticeable across the board, with a maximum improvement of +7.27% in AI Benchmark

When running Prime 95 Small FFTs with AVX-512 enabled, unfortunately, the CPU is not stable. AI Overclock targets the typical use-case and stability requirements, not a worst-case scenario like Prime95 with AVX.

When running Prime 95 Small FFTs with AVX disabled, the average CPU effective clock is 5325 MHz with 1.184 volts. The average CPU temperature is 88.0 degrees Celsius. The ambient and water temperature is 26.7 and 33.3 degrees Celsius. The average CPU package power is 136.1 watts.

Ryzen 7 7700X ai overclock prime95 non-avx

OC Strategy #3: PBO Tuned with Curve Optimizer

In our third overclocking strategy, we will use the Curve Optimizer tool included in the Precision Boost Overdrive overclocker’s toolkit.

PBO 2: Curve Optimizer

As I mentioned earlier in this article, Curve Optimizer is an important new feature of Precision Boost Overdrive 2.

Curve Optimizer allows end-users to adjust the factory-fused VFT curve, or voltage-frequency-temperature curve, for each CPU core separately. The VFT curve is a unique curve for each core inside your CPU that defines the required voltage for a given frequency at a given temperature. Higher frequencies or higher operating temperatures require higher voltage.

Curve Optimizer adjusts the VFT curve by offsetting the voltages of the factory-fused VFT curve. By setting a positive offset, you increase the voltage point. Conversely, you decrease the voltage point by setting a negative offset.

You can offset the entire curve by up to 30 steps in a positive direction and up to 300 steps in a negative direction. Each step represents approximately 5 to 7 mV.

The traditional overclocking approach for AMD Ryzen CPUs is to set a negative curve optimizer. Two things happen when you adjust the VFT curve with a negative point offset.

  1. You effectively tell the CPU that it needs less voltage for a given frequency. And, as a consequence, at a given voltage, it can apply a higher frequency. So, when the Precision Boost 2 algorithm determines sufficient power and temperature headroom to use 1.35V, with the negative point offset, it will target a higher frequency.
  2. The CPU temperature will be lower because you use less voltage at a given frequency. That extra thermal headroom will also encourage the Precision Boost algorithm to target higher voltages and frequencies.

In my AMD Raphael overclocking launch article, I explored the ins and outs of Curve Optimizing with Precision Boost Overdrive 2. If you want to learn more about the impact of Curve Optimizer, I suggest you check out that article.

As I mentioned already, Curve Optimizer is available on a per-core basis. Just like in the past, there is a real benefit to per-core tuning as it provides some cores with a lot more frequency headroom.

Ryzen 7 7700X Curve Optimizer Tuning Process

The manual tuning process for Curve Optimizer can become quite convoluted since it affects the CPU core voltage in all scenarios ranging from very light single-threaded workloads to heavy all-core workloads.

My Curve Optimizer process for this Ryzen 7 7700X was as follows.

First, I use a broad tuning approach to get a big-picture understanding of the tuning opportunity. Then, I narrow down the per-core curve optimizer settings to achieve stability in a light workload. Then, I verify the stability in all-core multi-threaded workloads. Lastly, I run through all my benchmarks to validate stability in a wide range of test scenarios.

The broad tuning process includes:

  • Using Shamino’s Boost Curve tool to track the average frequency across an increasing amount of active threads
  • Gradually increasing an all-core negative curve optimizer until the point of instability
  • Gradually increasing Fmax Boost Override in case the boost frequency is hitting the frequency ceiling

The narrow tuning process includes:

  • Using SuperPI 32M with affinity to a specific thread to check the maximum effective clock frequency
  • Gradually increasing the per-core negative curve optimizer until the point of instability for each core
  • Gradually increasing Fmax Boost Override in case the boost frequency is hitting the frequency ceiling

The all-core stability process includes running Prime 95 Small FFTs with both AVX-512 enabled and disabled.

Ryzen 7 7700X pbo curve optimizer tuning process

The benchmark validation process includes completing all the benchmarks I’ve included in this guide. If a benchmark is unstable, I increase every core’s per-core curve optimizer value by 2 until I reach stability.

In my case, I used a per-core Curve Optimizer ranging from -22 on Cores 2, 3, 4, 5, to -14 on Core 6 and a Fmax boost override of +200 MHz.

Ryzen 7 7700X pbo curve optimizer overclock parameters

I will show you the BIOS configuration in a minute. First, note that the per-core curve optimizer settings are CPU-specific, and the optimal values of your CPU may differ substantially.

The following table shows the boost profile for this specific CPU.

Ryzen 7 7700X pbo curve optimizer boost chart
Ryzen 7 7700X pbo curve optimizer boost profile

We can make a couple of interesting observations.

At stock, the boost curve shows frequencies below the advertised boost frequency of 5.4 GHz. That’s not implausible, considering the boost curve frequency is based on the average frequency of every active core, and some cores just boost higher than others. Upon closer inspection of the boost of each individual core, we find that the maximum boost frequency under a light workload exceeds 5500 MHz for all cores except cores 5, 6, and 7.

While AMD advertises a boost clock of 5.4 GHz, the factory-programmed Fmax frequency ceiling is 5.55 GHz. So, on some CPUs, you may see the frequency boost beyond the advertised boost frequency. In our case, we see several cores boost beyond 5.5GHz. So, increasing the Fmax ceiling by 200 MHz to 5.75 GHz may yield immediate frequency improvements. That’s what we see, for example, with cores 0 and 1 boosting to nearly 5.6 GHz.

After Curve Optimizing, we can see a substantial frequency uplift across the board. While none of our cores are hitting the increased Fmax ceiling of 5.75, some cores are boosting well over 5.7 GHz.

BIOS Settings & Benchmark Results

Upon entering the BIOS

  • Go to the Extreme Tweaker menu
  • Set Ai Overclock Tuner to EXPO II
  • Set Memory Frequency to DDR5-6000MHz
  • Enter the DRAM Timing Control submenu
    • Set Memory Context Restore to Disabled
  • Leave the DRAM Timing Control submenu
  • Enter the Precision Boost Overdrive submenu
    • Set Precision Boost Overdrive to Enabled
    • Set CPU Boost Clock Override to Enabled (Positive)
      • Set Max CPU Boost Clock Override to 200
    • Enter the Curve Optimizer submenu
      • Set Curve Optimizer to Per Core
      • For every core, set Curve Optimizer Sign to Negative
      • For Core 0, set Curve Optimizer Magnitude to 20
      • For Core 1, set Curve Optimizer Magnitude to 18
      • For Cores 2, 3, 4, and 5, set Curve Optimizer Magnitude to 22
      • For Core 5, set Curve Optimizer Magnitude to 14
      • For Core 7, set Curve Optimizer Magnitude to 16

Then save and exit the BIOS.

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

  • SuperPI 4M: +6.49%
  • Geekbench 5 (single): +2.49%
  • Geekbench 5 (multi): +7.14%
  • Cinebench R23 Single: +2.05%
  • Cinebench R23 Multi: +2.61%
  • CPU-Z V17.01.64 Single: +4.24%
  • CPU-Z V17.01.64 Multi: +2.96%
  • V-Ray 5: +4.82%
  • AI Benchmark: +8.02%
  • 3DMark Night Raid: +2.41%
  • CS:GO FPS Bench: +0.81%
  • Tomb Raider: +2.01%
  • Final Fantasy XV: +1.22%
Ryzen 7 7700X pbo curve optimizer benchmark performance

Here are the 3DMark CPU Profile scores

  • CPU Profile 1 Thread: +2.06%
  • CPU Profile 2 Threads: +1.53%
  • CPU Profile 4 Threads: +3.63%
  • CPU Profile 8 Threads: +2.35%
  • CPU Profile 16 Threads: +2.88%
  • CPU Profile Max Threads: +2.87%
Ryzen 7 7700X pbo curve optimizer 3dmark performance

The performance uplift after Curve Optimizing is not earth-shattering. But it’s still nice to see better performance across the board, even in single-threaded benchmarks. We see the highest performance improvement of +8.02% in AI Benchmark.

When running Prime 95 Small FFTs with AVX-512 enabled, the average CPU effective clock is 5061 MHz with 1.175 volts. The average CPU temperature is 95.3 degrees Celsius. The ambient and water temperature is 27.1 and 33.9 degrees Celsius. The average CPU package power is 147.9 watts.

Ryzen 7 7700X pbo curve optimizer prime95 avx

When running Prime 95 Small FFTs with AVX disabled, the average CPU effective clock is 5144 MHz with 1.234 volts. The average CPU temperature is 95.3 degrees Celsius. The ambient and water temperature is 27.4 and 34.6 degrees Celsius. The average CPU package power is 143.9 watts.

Ryzen 7 7700X pbo curve optimizer prime95 non-avx

OC Strategy #4: PBO Supercharged with ECLK

In our fourth overclocking strategy, we take advantage of the return of the ECLK mode. ECLK stands for external clock and is precisely what the term suggests: an external clock generator. It was previously available on Ryzen 2000 Pinnacle Ridge processors but was removed afterward.

Ryzen 7 7700X Raphael ECLK Overview

The standard Raphael platform has a 48 MHz crystal input to the integrated CGPLL clock generator. The CGPLL then generates a 48 MHz clock for the USB PLL and a 100 MHz reference clock for the FCH, which contains the CCLK PLL for the CPU cores and several SOC PLLs.

In addition to the standard internal CGPLL, Raphael supports up to two external clock modes. They’re called eCLK0 Mode and eCLK1 Mode.

In eCLK0 Mode, an external 100MHz reference clock is used for both the CPU and SOC PLLs. In other words, it’s a reference clock that affects the CPU core clocks and the PCIe and SATA clocks. The USB PLL is still driven by the 48 MHz crystal via the CGPLL.

In eCLK1 Mode, there are two distinct external 100MHz reference clocks. One clock provides the 100MHz input for the CPU PLL, and another provides the 100MHz reference clock for the SOC PLLs. AMD suggests up to 140 MHz can be expected for the CPU core reference clock, but your mileage may vary. The USB PLL is still driven by the 48 MHz crystal via the CGPLL.

In previous SkatterBencher guides, I referred to the technique of overclocking the reference clock as “supercharging PBO.” Unlike previous Ryzen CPUs, reference clock overclocking is very well supported and provides a viable path to overclocking.

The overclocking strategy with ECLK is the polar opposite of what we’re used to with Ryzen CPUs. Typically, as shown in OC Strategy #3, Ryzen overclocking consists of using curve optimizer. A negative voltage offset for the CPU core VFT curve helps reach higher boost frequencies.

With ECLK, we still build on the factory-fused VFT curve but adjust the frequency by adjusting the reference clock. For example, if the Precision Boost has a VFT point for 5000 MHz at 1.25V at 50C, with an ECLK of 105 MHz, the actual point will be 5250 MHz at 1.25V at 50C.

Obviously, the default voltage for this VFT point won’t suffice for stable operation. So, counter-intuitively, we use a positive curve optimizer to increase the voltages of the VFT point. For example, a +30 offset may increase the voltage by 150mV. Thus, the resulting VFT point will be 5250 MHz at 1.40V at 50C.

Suppose Curve Optimizer doesn’t provide you with sufficient additional voltage. In that case, you can always add a voltage offset via the VRM controller configuration.

One more important point: ECLK also affects the maximum frequency ceiling. With an ECLK of 105 MHz, the new programmed Fmax for the 7700X is 5550 MHz x 1.05 = 5828 MHz. That’s way too high for this CPU. Luckily, we can use a negative Fmax boost override to fix this.

Ryzen 7 7700X ECLK Tuning Process

The manual tuning process for eCLK tuning can become quite convoluted since it affects the CPU core stability in all scenarios ranging from very light single-threaded workloads to heavy all-core workloads.

My ECLK tuning process for this Ryzen 7 7700X is similar to when using Curve Optimizer.

First, I use a broad tuning approach to get a big-picture understanding of the tuning opportunity. Then, I narrow down the per-core curve optimizer settings to achieve stability in a light workload. Then, I verify the stability in all-core multi-threaded workloads. Lastly, I run through all my benchmarks to validate stability in a wide range of test scenarios.

The broad tuning process includes:

  • Using Shamino’s Boost Curve tool to track the average frequency across an increasing amount of active threads
  • Gradually increasing the ECLK frequency until the point of instability
  • In case of instability, reduce the programmed Fmax by configuring a negative boost override

The narrow tuning process includes:

  • Using SuperPI 32M with affinity to a specific thread to check the maximum effective clock frequency
  • Gradually increase the Fmax Boost Override in case the boost frequency is hitting the frequency ceiling
  • In case of instability, set a positive per-core curve optimizer

The all-core stability process includes running Prime 95 Small FFTs with both AVX-512 enabled and disabled.

The benchmark validation process includes completing all the benchmarks I’ve included in this guide. If a benchmark is unstable, I increase every core’s per-core curve optimizer value by 2 until I reach stability.

Ryzen 7 7700X pbo eclk overclock process

In my case, I used a ECLK of 106.5 MHz, an Fmax boost override of -200, and a per-core Curve Optimizer ranging from +10 on Cores 2, 3, 5, 6 to +25 on core 0. I will show you the BIOS configuration in a minute. First, note that these settings, especially the curve optimizer, are CPU-specific, and the optimal values of your CPU may differ substantially.

Ryzen 7 7700X pbo eclk boost profile overclock parameters

The following table shows the boost profile for this specific CPU.

Ryzen 7 7700X pbo eclk boost chart
Ryzen 7 7700X pbo eclk boost profile

We can make a couple of interesting observations.

Tuning with eCLK gives us slightly lower maximum boost frequencies than when tuning with Curve Optimizer. Though there are exceptions like Core 6. Overall, the two boost profiles are not miles apart.

Generally, the eCLK strategy provides an avenue to slightly higher frequencies at the cost of slightly higher voltages. While this offers better performance in light workloads, the higher voltages will push the CPU quicker to the thermal limit. Thus, in heavy workloads, strictly using the Curve Optimizer tool for undervolting yields slightly better results.

However, it’s important to remember that we cannot set a Fmax for individual cores. So, our Fmax limit applies to all cores. Suppose our overclock-specific Fmax, determined by the combination of eCLK and Fmax boost override, is too high for a single core. In that case, it will result in instability regardless of the capability of the other cores.

BIOS Settings & Benchmark Results

Upon entering the BIOS

  • Go to the Extreme Tweaker menu
  • Set Ai Overclock Tuner to EXPO II
  • Set eCLK Mode to Asynchronous Mode
  • Set BCLK2 Frequency to 106.5
  • Set Memory Frequency to DDR5-6000MHz
  • Enter the DRAM Timing Control submenu
    • Set Memory Context Restore to Disabled
  • Leave the DRAM Timing Control submenu
  • Enter the Precision Boost Overdrive submenu
    • Set Precision Boost Overdrive to Enabled
    • Set CPU Boost Clock Override to Enabled (Negative)
      • Set Max CPU Boost Clock Override to 200
    • Enter the Curve Optimizer submenu
      • Set Curve Optimizer to Per Core
      • For every core, set Curve Optimizer Sign to Positive
      • For Core 0, set Curve Optimizer Magnitude to 25
      • For Cores 1 and 7, set Curve Optimizer Magnitude to 20
      • For Cores 2, 3, 5, and 6, set Curve Optimizer Magnitude to 10
      • For Core 4, set Curve Optimizer Magnitude to 15

Then save and exit the BIOS.

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

  • SuperPI 4M: +6.22%
  • Geekbench 5 (single): +3.17%
  • Geekbench 5 (multi): +6.75%
  • Cinebench R23 Single: +2.75%
  • Cinebench R23 Multi: +2.71%
  • CPU-Z V17.01.64 Single: +3.98%
  • CPU-Z V17.01.64 Multi: +2.44%
  • V-Ray 5: +4.36%
  • AI Benchmark: +7.81%
  • 3DMark Night Raid: +1.97%
  • CS:GO FPS Bench: +1.07%
  • Tomb Raider: +2.51%
  • Final Fantasy XV: +0.38%
Ryzen 7 7700X pbo eclk benchmark performance

Here are the 3DMark CPU Profile scores

  • CPU Profile 1 Thread: +2.60%
  • CPU Profile 2 Threads: +2.26%
  • CPU Profile 4 Threads: +5.01%
  • CPU Profile 8 Threads: +2.39%
  • CPU Profile 16 Threads: +2.94%
  • CPU Profile Max Threads: +3.10%
Ryzen 7 7700X pbo eclk 3dmark performance

As the maximum boost frequencies have substantially increased from the stock values, we can see a performance uplift across the board. Even in single-threaded benchmarks, we see a performance improvement. However, our performance is slightly worse than our previous overclocking strategy when using Curve Optimizer fine-tuning. The highest performance increase is +7.81% in AI Benchmark.

When running Prime 95 Small FFTs with AVX-512 enabled, the average CPU effective clock is 4996 MHz with 1.188 volts. The average CPU temperature is 95.2 degrees Celsius. The ambient and water temperature is 26.7 and 33.9 degrees Celsius. The average CPU package power is 150.2 watts.

Ryzen 7 7700X pbo eclk prime95 avx

When running Prime 95 Small FFTs with AVX disabled, the average CPU effective clock is 5137 MHz with 1.242 volts. The average CPU temperature is 95.3 degrees Celsius. The ambient and water temperature is 26.2 and 32.8 degrees Celsius. The average CPU package power is 145.8 watts.

Ryzen 7 7700X pbo eclk prime95 non-avx

OC Strategy #5: Manual Overclock

In our fifth overclocking strategy, we will pursue a manual overclock.

One could question the use-case for manual overclocking an AMD Ryzen CPU. Just like with all past Ryzen processors, the major downside of manual overclocking is that you lose the benefits of Precision Boost technology in low-threaded benchmark applications. So, whereas this 7700X can boost up to 5400 MHz with Precision Boost, it will be limited to your set fixed frequency when manually overclocking.

However, manual overclocking is not all negative and even has some benefits.

First, automatic overclocking and frequency boosting technologies leave a little margin on the table. We can exploit this margin and fine-tune it for application stability when manually overclocking with our specific hardware configuration.

Second, in multi-threaded applications, Precision Boost Overdrive applies a single frequency to every core. However, on AMD Ryzen CPUs, you can set the frequency for each CCX separately. So, we can exploit the fact that some CCXs may overclock better than others.

This point is not necessarily relevant for the 7700X, which only has one CCX, but it’s good to know.

Thirdly, by setting a fixed voltage, we avoid the CPU dynamically and rapidly updating its VID requests to the VRM controller. This alleviates stress on the VRM and typically yields lower temperatures.

To better understand the performance tuning opportunities embedded in the Ryzen 7 7700X processor, let’s look at its topology in more detail.

Ryzen 7 7700X CPU Core Clocking Topology

The clocking of AMD Raphael is similar to the previous generation of Zen 3 Vermeer desktop CPUs.

The standard Raphael platform has a 48 MHz crystal input to the integrated CGPLL clock generator. The CGPLL then generates a 48 MHz clock for the USB PLL and a 100 MHz reference clock for the FCH, which contains the CCLK PLL for the CPU cores and several SOC PLLs.

The CCLK PLL 100MHz reference clock drives the 200 MHz VCO, which is then multiplied by an FID and divided by a DID. As a whole, this provides CPU clock frequency granularity of 25 MHz.

As with Vermeer, each CCX has its own PLL, with the cores within that CCX running at the same frequency. In a typical operation, all cores within a CCX will run at the same frequency. The effective clock will differ if the core is in a different P-state.

The SOC PLLs include a wide range of PLLs present on the IO die. The ones most relevant for overclocking are:

  • FCLK for the data fabric
  • UCLK for the memory controller
  • MCLK for the system memory
  • GFXCLK for the integrated graphics

The SOC PLLs are not particularly relevant for manual CPU Core overclocking.

As I mentioned in OC Strategy #4, in addition to the standard internal CGPLL, Raphael supports up to two external clock modes. We won’t be using Eclk in this overclocking strategy.

Ryzen 7 7700X CPU Core Voltage Topology

From the voltage topology perspective, there are a few minor changes. Like Vermeer, the processor still relies on an internal and external power supply to generate the processor voltages.

There are four primary power supplies from the motherboard VRM to the processor: VDDCR, VDDCR_SOC, VDDCR_MISC, and VDDIO_MEM_S3. I have covered the details extensively in my Raphael overclocking launch article.

The VDDCR voltage rail provides the external power for two internal voltage regulators: VDDCR_CPU and VDDCR_VDDM.

VDDCR_CPU provides the voltage for the CPU cores in CCX. On CPUs with multiple CCXs, each CCX has its own VDDCR_CPU voltage rail, but the voltage will be identical. The voltage rails can work in either regular or bypass mode, but on Raphael, it is always in bypass mode. That means the voltage is always equal to the VDDCR external voltage.

VDDCR_VDDM provides the voltage for the L2, L3, and, if present, 3D V-Cache on a CCX. On CPUs where there are multiple CCXs, each CCX has its own VDDCR_VDDM voltage rail. This rail cannot work in bypass mode; therefore, it is internally regulated from the VDDCR external voltage rail. The default VDDM voltage is 0.95V

The VDDCR voltage rail can be directly controlled via the SVI3 interface. VDDCR_VDDM cannot be controlled by the end-user.

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

Ryzen 7 7700X CCX Frequency Tuning Process

With that last thought, we kick off our manual overclocking process.

Our limiting factor will ultimately be the cooling solution as power consumption increases exponentially with operating voltage and temperature scales (somewhat) linearly with power consumption.

The maximum voltage will be determined by the application we’re tuning for. So, the first step in our tuning process would be deciding on the stress test representing our worst-case scenario. In this case, I picked Prime95 Small FFTs with AVX disabled.

The next step is to set a fixed CPU ratio and check the maximum temperature when running our workload. If there’s thermal headroom left, increase the operating voltage.

Once we know the maximum voltage, we can tune the CCX ratio. Simply increase the CPU ratio until the application shows instability, then back off. This approach will give you the maximum stable per-CCX frequency for a given voltage.

In our case, we end up with a CPU ratio of 53.50X and a Core VID of 1.275V. During our worst-case stress test, it yields a CPU voltage of 1.215 and a CPU temperature of 94.0 degrees Celsius.

BIOS Settings & Benchmark Results

Upon entering the BIOS

  • Go to the Extreme Tweaker menu
  • Set Ai Overclock Tuner to EXPO II
  • Set Memory Frequency to DDR5-6000MHz
  • Enter the CPU Core Ratio (Per CCX) submenu
    • Set Core VID to 1.275
    • Set CCX0 Ratio to 53.50
  • Enter the DRAM Timing Control submenu
    • Set Memory Context Restore to Disabled
  • Leave the DRAM Timing Control submenu

Then save and exit the BIOS.

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

  • SuperPI 4M: -5.97%
  • Geekbench 5 (single): -2.49%
  • Geekbench 5 (multi): +7.07%
  • Cinebench R23 Single: -3.90%
  • Cinebench R23 Multi: +5.03%
  • CPU-Z V17.01.64 Single: -2.55%
  • CPU-Z V17.01.64 Multi: +2.79%
  • V-Ray 5: +5.73%
  • AI Benchmark: +7.13%
  • 3DMark Night Raid: +1.01%
  • CS:GO FPS Bench: -0.29%
  • Tomb Raider: +1.51%
  • Final Fantasy XV: +1.26%
Ryzen 7 7700X manual overclock benchmark performance

Here are the 3DMark CPU Profile scores

  • CPU Profile 1 Thread: -2.78%
  • CPU Profile 2 Threads: -3.16%
  • CPU Profile 4 Threads: +0.73%
  • CPU Profile 8 Threads: +0.77%
  • CPU Profile 16 Threads: +2.53%
  • CPU Profile Max Threads: +2.53%
Ryzen 7 7700X manual overclock 3dmark performance

As expected, we see a performance deficit against stock performance in single-threaded applications as manual overclocking does not benefit from the Precision Boost 1T frequency. In multi-threaded applications, however, we see a nice performance uplift up to +7.13% in AI Benchmark.

When running Prime 95 Small FFTs with AVX-512 enabled, unfortunately, the CPU is not stable. This is a deliberate choice on our side as we decided that Prime95 with AVX512 enabled is not a representative worst-case workload for our system.

When running Prime 95 Small FFTs with AVX disabled, the average CPU effective clock is 5350 MHz with 1.215 volts. The average CPU temperature is 94.0 degrees Celsius. The ambient and water temperature is 26.7 and 33.9 degrees Celsius. The average CPU package power is 149.0 watts.

Ryzen 7 7700X manual overclock prime 95 non-avx

OC Strategy #6: Dynamic OC Switcher

In our final overclocking strategy, we will rely on Dynamic OC Switcher to bring together the best of PBO and manual overclocking.

ASUS Dynamic OC Switcher

Dynamic OC Switcher, or DOS for short, is ASUS’ clever way of addressing a core challenge when overclocking AMD Ryzen processors. It was first introduced with the ASUS ROG Crosshair VIII Dark Hero motherboard and has since been included in several other ASUS motherboards.

As we know from the Raphael launch article, there are two approaches to AMD Ryzen CPU core overclocking: Precision Boost Overdrive and OC mode.

  • Precision Boost Overdrive has the benefit of retaining all the automatic boost algorithms, including the peak single thread frequency and associated performance.
  • OC Mode has the benefit of enabling precise per-CCX fine-tuning for the maximum stable all-core frequency.

So, you typically have to choose to compromise either the best single-threaded performance or the best multi-threaded performance.

ASUS Dynamic OC Switcher gives us the best of both worlds, allowing the system to actively switch between Precision Boost Overdrive and manual OC Mode. It’s most easy to conceptualize DOS as retaining all automatic Precision Boost benefits but with a manually configured frequency floor for all-core workloads.

DOS requires little additional configuration work. We need to know two things:

  1. What is the lowest frequency we will allow
  2. At which point do we want DOS to switch between PBO and OC Mode

Sadly, we cannot simply configure a minimum frequency and have the system switch based on that. Instead, we need to use a proxy metric: a specific current or temperature threshold. There is no perfect method of determining the ideal threshold, so I’ll show you one example using Prime95 Small FFTs without AVX.

The first step is to determine your desired manual overclock. The fastest way to get to this point is by first selecting your stress test tool of choice and finding the maximum CPU voltage within your thermal budget. Afterward, find the maximum stable frequency for that voltage and temperature. In our case, we can rely on our overclocking settings from OC Strategy #5

  • Stress Test: Prime95 non-AVX
  • OCVID: 1.275V (1.215V under load)
  • CCX0 Ratio: 53.50

We can write the settings down and switch back to tuning with Precision Boost Overdrive.

The next step is to apply all your Precision Boost Overdrive tuning settings, including any custom Curve Optimizer or Fmax Override settings. In our case, we can rely on the settings from OC Strategy #4.

Then, go into the operating system and open your stress test tool and HWiNFO. We aim to find when the Precision Boost frequency drops below our target manual overclock of 5350 MHz and check the current use. In HWiNFO, we will monitor the CPU Core Effective Clocks and ASUS EC VRM Vcore Current.

Then we start the Prime95 non-AVX stress test and change the affinity to 1 thread in Task Manager. Now monitor the core clock frequency. It will be higher than our target of 5350 MHz.

Now you can gradually increase the active thread count. When you reach 5350 MHz or below, check the ASUS EC VRM Vcore Current reading. This value will be our input for the DOS Current Threshold setting.

In my case, we reach the frequency of 5350 MHz at 9 active threads and the current reads about 70A. This will be our Current Threshold value for Dynamic OC Switcher.

So, to reiterate what’s happening: Dynamic OC Switcher will actively switch between OC mode and Precision boost when the CPU current hits 70A. Anything above 70A engages manual OC mode; anything below 70A will engage Precision Boost.

But one last and important note!

Our Precision Boost Overdrive ECLK OC strategy includes an adjusted ECLK frequency of 106.50 MHz. When Dynamic OC Switcher switches between PBO and OC mode, it does not change these settings. So, we must adjust our manual overclock settings accordingly:

  • CCX0 Ratio from 53.50 to 50.25
Ryzen 7 7700X dynamic oc switcher configuration

BIOS Settings & Benchmark Results

Upon entering the BIOS

  • Go to the Extreme Tweaker menu
  • Set Ai Overclock Tuner to EXPO II
  • Set eCLK Mode to Asynchronous
  • Set BCLK2 Frequency to 106.50 MHz
  • Set Memory Frequency to DDR5-6000MHz
  • Enter the CPU Core Ratio (Per CCX) submenu
    • Set Core VID to 1.275
    • Set CCX0 Ratio to 50.25
    • Set Dynamic OC Switcher to Enabled
    • Set Current Threshold to Switch to OC Mode to 70
  • Leave the CPU Core Ratio (Per CCX) submenu

Then save and exit the BIOS.

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

  • SuperPI 4M: +6.14%
  • Geekbench 5 (single): +3.17%
  • Geekbench 5 (multi): +6.79%
  • Cinebench R23 Single: +2.65%
  • Cinebench R23 Multi: +4.71%
  • CPU-Z V17.01.64 Single: +3.90%
  • CPU-Z V17.01.64 Multi: +2.66%
  • V-Ray 5: +4.59%
  • AI Benchmark: +6.88%
  • 3DMark Night Raid: +1.49%
  • CS:GO FPS Bench: +0.79%
  • Tomb Raider: +2.01%
  • Final Fantasy XV: +0.96%
Ryzen 7 7700X dynamic oc switcher benchmark performance

Here are the 3DMark CPU Profile scores

  • CPU Profile 1 Thread: +2.87%
  • CPU Profile 2 Threads: +2.57%
  • CPU Profile 4 Threads: +5.30%
  • CPU Profile 8 Threads: +1.90%
  • CPU Profile 16 Threads: +1.55%
  • CPU Profile Max Threads: +1.71%
Ryzen 7 7700X dynamic oc switcher 3dmark performance

As expected, by relying on Dynamic OC Switcher, we get a performance mix similar to the best results from OC Strategy #4 and #5. Interestingly, we don’t get the outright best performance across the board. In some scenarios, a tuned Precision Boost outperforms our manual overclock in an all-core workload. Also, there may be a performance hit when the load is right on the Dynamic OC Switching point. We see the best performance improvement of +6.88% in AI Benchmark

The Prime95 results are identical to those from OC Strategy #5 as we rely on the same settings for our OC Mode overclock.

AMD Ryzen 7 7700X: Conclusion

Alright, let us wrap this up.

I found this platform particularly interesting to overclock, because it gave me the insight that there’s no “best strategy” that applies universally to all systems and components.

The expanded overclocking toolkit provides AMD AM5 enthusiasts with a much more comprehensive range of tuning opportunities and tactics. This makes it challenging but exciting to figure out what approach offers the best performance for a given system.

Generally, I find that PBO with Eclk tuning provides the best opportunity for high frequency at the cost of higher voltages. Thus, while you get higher performance in lightly threaded workloads, you are compromised in all-core heavy workloads.

PBO with Curve Optimizer generally yields lower maximum boost frequencies. Still, thanks to the undervolting characteristic, it tends to provide higher frequencies in all-core workloads.

But as said, every system is different. With this particular CPU, Curve Optimizer actually gave me higher frequencies than eCLK tuning.

Anyway, that’s all for today!

I want 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. 

See you next time!

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

4 thoughts on “SkatterBencher #47: AMD Ryzen 7 7700X Overclocked to 5750 MHz

  1. Zareth DeTullio

    Even tho I have the CPU boost override on, I never see 5750 mhz, even prime 95 on one core is 54ish
    And it’s not temp related… Am I missing something obvious

    1. Pieter

      The maximum boost frequency usually only shows up in relatively light workloads, so I wouldn’t expect to show it in Prime95.

      You can open hwinfo and check if the CPU boost to 5750 MHz in idle. If that’s the case, one of the Precision Boost limiters is preventing you from boosting to the maximum frequency.

      If you only see 5500 MHz, then I would suggest reading this blog post: https://skatterbencher.com/2022/10/26/update-on-ryzen-7000-c-state-boost-limit/

      1. Zareth DeTullio

        I do see 5.7 in hw info at peak, (I used to get 5.9 randomly before the bios update…)
        One other thing, for some reason my expo profile sets CPU VDDIO voltage to 1.4… this seems way too high?

        1. Pieter

          Then it sounds like another Precision Boost limiter is constraining the frequency in Prime95 (which is expected behavior).

          AMD guideline to motherboard vendors is to have DRAM voltage equal to memory controller voltage, so VDDIO 1.4v is expected behavior if the motherboard has such auto-rule.

Leave a Reply