Over the last 2 years, manufacturers and vendors have ushered in a new wave of extreme memory frequency as DDR5 has gradually matured. If we dial the clocks back only a short time ago to Intel’s Alderlake, DDR5 kits were coming in at 5,200MHz. Fast forward to today, and we have systems operating at nearly two times this speed, which is insane!
Where do I sign up?
10GHz is an incredible feat to be running stable, however, for us conventional minions, it's still a touch out of reach. The G.SKILL pyramid is cooled with liquid nitrogen and requires the memory modules to be constantly kept below ambient. It's also using one of G.SKILL's flagship 8000MHz memory kits.
So what speeds can I achieve?
Most users won’t upgrade each platform cycle, so it can take some reading or experimenting to get reacquainted. CPU memory controllers become more capable of handling high memory frequencies gen on gen, or certain memory IC types achieve timings closer to the minimum spacings required by the chipset than what was previously possible. Moreover, some platforms favour certain memory IC types. It is easy to fall into the trap of believing if it works on one system, it should work on another.
What is the purpose of the Qualified Vendor List (QVL)?
Yes, it’s those three letters again! You might have read them several times when looking for advice or reading FAQs, but what is the QVL there for and what is it meant to tell us? The QVL stands for Qualified Vendor List. The list is updated with each platform launch as memory vendors release new kits. The objective is to provide a list of compatible memory kits that the board vendor has validated as working themselves. It is also important to ensure we aren't mixing or combining different kits, but this goes outside the scope of this particular article (reference material can be found at the bottom of this post).
Before we even look over what kits are present on this list, we need to understand what happens when we apply the memory-specific profiles available. After all, the motherboard technical specification state it’s capable of the same speed as the kit in hand, so why wouldn’t it work?! The reality is that there are a multitude of reasons why vendors cannot make guarantees for such things. The higher the frequency, the less [electrical] margin there is to experiment with.
Why don’t all memory kits simply work?
If using a memory kit at or close to the motherboard's maximum validated frequency, our chances of success are reduced. This is because the electrical margins needed for stability are tighter, and not all CPUs will be able to achieve decent results without manual tuning or potentially not at all. It’s often advised that one should opt for a memory kit with one or two ratio bins below the maximum validated frequency if looking for plug & play.
Due to CPU to CPU variance (or silicon variance), a vendor can only account for so many scenarios. Don't forget the memory controller is on your CPU, the motherboard is providing an interconnect. What works on one system may not work on the next. The motherboard has impedance training procedures and hundreds of read-write tests that occur at POST to aid in bringing all things signal-related into alignment, but the closer we are to platform limits the less chance we have of "circuit eureka"! If the system refuses to POST, then the applied overclock isn't stable.
So how fast can we go, exactly?
Remember those 10GHz kits we spoke about? I wouldn't get too excited about that just yet! Memory vendor halo kits and PR demonstrations offer an insight into what can be achieved when pushing the absolute limit on a particular platform, often with exotic cooling and pre-binned CPUs. Even then, the overclock is usually somewhat conditional. Moreover, most users won't want to spend $300+ on a memory kit. So let us look at what's available right now, and at what cost.
Do I need to purchase an 8GHz memory kit?
As DDR5 kits have slowly saturated the market, we can find some relatively cheap deals. If we look at the QVL for the Apex we can find kits validated up to 8000MHz. As we can see below, all of the higher bins are SK Hynix memory IC. Both Hynix A-die revision and M-die clock higher than their respective Samsung and Micron counterparts, so any of these may net us pleasing results.
The G.SKILL F5-7200J3445G16Gx2 (7200MHz) kit from G.SKILL can now be had as low as £158 here in the UK. To add perspective, that was the same price for branded 5200MHz memory kits only a year ago!
Board of choice
With memory frequency, the motherboard DRAM topology matters. As it always has, the APEX sacrifices additional memory slots in favour of maximum memory frequency. Additional DIMM slots mean the motherboard isn't able to cope as well with signalling-related nasties such as jitter, noise and impedance issues. That's not to say you won't be able to achieve high frequencies on other boards, but there is no denying that this is the board of choice when pushing the CPU and memory limits.
Cooling, Cooling, and more Cooling
Any electrical circuit carrying a signal is sensitive to variance and temperature, and DDR5 is no different. The DDR5 standard brought the induction of the PMIC onboard the memory module (Power Management Integrated Circuit). This has the benefit of reducing noise and increasing signal integrity, both of which are welcomed for overclocking. However, power regulation on the module means we need to consider what impact this has on our temperatures, especially since we will be supplying additional voltage beyond JEDEC specifications. Most XMP 3.0 validated memory kits will have thermal pads on the PMIC, but active cooling is still recommended for best results.
Having active cooling either on or over your memory can make a world of difference. If water cooling isn't an option, a fan over the memory array will do equally as well.
Let's get started!
CPU: Intel (Raptorlake) 13900KS (AI OC) 62/60/58/56 Per Core Usage
GPU: ASUS ROG TUF OC RTX 4090
Firstly, we'll want to ensure all other clock domains are stock. Make sure if you have any settings you'd like to save that you create an OC Profile from the Tools Menu. That way if we need to revert to our previous settings, we can do so easily. Note that these profiles are lost when using USB Flashback, so it's a good idea to save them to a USB pen drive.
Clear the CMOS!
With the system off, use the motherboard's rear IO panel and press the Clear CMOS button to return to complete defaults.
Turn the system back on and re-enter the UEFI.
Under Extreme Tweaker, we can see that there are three memory profiles available. These have various settings that may favour some CPUs.
XMP I: Every time a board is validated, this profile is the one used by the memory vendor and ASUS for the QVL and contains board optimised-sub timings.
XMP II: This is the default DIMM profile and the one used by the memory vendor.
XMP Tweaked: This profile has various tweaks to sub-timings which may help with performance and stability with certain memory IC.
UEFI Memtest86+ is your friend
After applying our profile, we can hit save and reboot. With any luck, we will have passed POST stress tests. We can now go back into the UEFI and peruse back to the Tools menu where we'll find Memtest86+. Having a copy of Memtest86+ on hand is convenient due to the fact it allows us to test our overclock before proceeding into Windows. An OC has the potential to corrupt our operating system if too unstable, so a reasonable stability baseline before proceeding is welcome.
Stability Testing in Windows
Obviously, it's important that we put our applied settings through more stress tests once in the OS as this is where the magic happens. Over the last decade, several authors have thrown their tools into the arena in an effort to shatter overclocking dreams the world over.
Don't worry, I'm not here to tell you that you should test for 48 hours whilst simultaneously standing on one leg and blowing a hairdryer into the system, but we do want to make sure that the overclock is sufficiently stable! For the sake of this article, we will be using Karhu RAM Test.
Available Memory Stress Tests
HCI Memtest Pro
HCI Memtest can be run via DOS or Windows http://hcidesign.com/memtest/
An instance needs to be opened for each individual thread, covering a total of 90-95% of memory, giving the OS a little breathing room.
The test should be run for at least 400% coverage, however overnight is preferable to catch intermitent errors.
Google Stress App Test (GSAT)
Google stressapp test via Linux Mint (or another compatible Linux disti) is one of the best memory
stress test available. Google use this stress test to evaluate memory stability of their servers
- nothing more needs to be said about how valid that makes this as a stress test tool.
- Install Linux Mint from here: http://www.linuxmint.com/download.php
- Install the Google Stress App test from here: http://community.linuxmint.com/software/view/stressapptest
- Once installed open "Terminal" and type the following: stressapptest -W -s 3600
- This will run the stressapp for one hour. The test will log any errors as it runs.
To bring up system info within Mint Terminal, type: sudo dmidecode type 17 and scroll to the relevant info.
Karhu RAM Test
Karhu RAM Test needs no additional setting up other than being executed, so very easy to run between changing memory settings and is great at both isolating the memory bus and finding errors quickly.
Below are the error detection rates for coverage to gauge how long you should run the test. You may wish to run far beyond this, but it helps to understand that even a stock system can "flip a bit" after enough coverage.
Duration ≤ 1 min: 47,44 %
Duration ≤ 5 min: 74,41 %
Duration ≤ 10 min: 83,66 %
Duration ≤ 30 min: 95,67 %
Duration ≤ 60 min: 98,43 %
Note: Auto rules are applied here for XMP for the sake of this article. Some CPUs may require voltage adjustments on memory-associated rails which we will get to later on when pushing the stability further.
XMP is stable. What now?
After testing stability at XMP, we've established that our memory kit is working at the validated overclock. Great! We could just stop there and enjoy our 7200MHz and play some games. However, that would defeat the point of this article, so that's not what we're going to do here.
G.SKILL hand binning is some of the best in the industry, which means we should have some room to push the kit past what it is validated for. Memory vendors aim for a certain level of "voltage guardband" which ensures the kit will operate at the designated voltage, frequency and timings on various combinations of hardware. With SK Hynix memory IC we know that 8,000MHz is possible, so let's go right in!
Note: Beyond this point, your mileage will vary. We're operating far and beyond what the memory vendor has qualified this kit for. A reasonable CPU IMC may also be needed.
For this particular kit, we've raised tCAS to 36, tRCD to 47 and lowered tRP to 44.
Should I increase the DRAM Voltage?
When we increase frequency or tighten timings we are going above and beyond the overclock in which the memory vendor has validated the memory kit to work at. For this reason, we may need to apply additional voltage. It is recommended that this is done incrementally in 20mV to 30mV as some kits may be more unstable with certain values or too much voltage depending on the applied overclock
It is recommended that VDD and VDDQ should be the same value, however, some memory modules will be more stable with an offset of 30mV to 100mV on VDDQ over VDD, or it may not be necessary to apply as much voltage to VDD. On this system, stability was found at 8000MHz by applying 1.44v to VDDQ and 1.48v to VDD.
VDDQ TX found under Extreme Tweaker > Advanced Memory Voltages is also important for memory OC, but auto rules sync this with VDDQ and adjustment may not be needed.
What other voltages should I look at?
DRAM Frequency 8000MHz
MC VDD 1.35v
VCCSA (CPU System Agent) Auto (1.3v)
Command Rate 2
Your mileage will vary
We need to keep in mind that this kit was never validated by G.SKILL to operate above 7200MHz. The motherboard auto sub-timings may be too aggressive for the CPU or memory kit depending on how much voltage we're willing to apply and how well we can cool the memory, so some concessions to certain timings may be needed to achieve our goal.
In my case, increasing tWRRD_sg by several clocks helped not only pass POST stress tests but also Karhu RAMTest once in the OS. When evaluating stability, we may need to address other timings, in other words, your mileage will vary!
A lot of the secondary and tertiary timings have been worked over. Again, if we're stable with the sub-timing auto rules this is entirely optional, as the board is perfectly capable of assigning reasonable clock spacing. If making incremental adjustments to timings, we should make no more than one or two at a time and retest with our preferred stress test.
Any sub-timings I should look at in particular?
With some minor tweaking, we've managed an 800MHz increase over our XMP profile. Each individual system will vary in results and it’s important to remember that CPU variance is a factor here. Upward of 8400MHz and beyond may be possible with the right hardware combinations.
Utilising the same memory kit, 8400MHz is achieved with the settings below on my CPU.
CPU System Agent [Auto]
Memory Controller Voltage 1.5v
Memory load temp 48c