Jump to content

Getting Memory to Rated Speed with Ryzen

In this thread I will provide some step-by-step instructions that may allow you to get your memory up to speed if you haven't been able to.

 

Introduction:

 

So, one thing that has bugged me is my pricey Corsair Dominator Platinum 3200mhz 2x8 gb kit wasn't able to get up near 3200 without a Bclk increase and 3200 was not possible without errors in stress testing.

 

But for most motherboards the AGESA 1.0.0.6 updates have opened up a lot of user tunability to memory parameters. Using Thaiphoon Burner, AIDA64, or even your BIOS reports on SPD information, you can read the XMP data from the sticks and insert those timings into the BIOS.  For me this has resulted in solid, error free memory at the rated speed of 3200 mhz without Bclk increase. I'm on the ASUS Crosshair VI mobo with the latest 1403 beta BIOS. 

 

A Note to Corsair Users (others can skip this):

 

If you use Corsair memory you are not feeling the love -- almost nobody talks about how to fine tune these sticks properly yet. And you may be confused when some folks with the "same" memory as you have have success and you don't.  So let's address that since I have Corsair sticks and that confused the heck out of me.

 

Something about Corsair: they market the same product with different chips in order to hit demand.  Corsair sells more memory than anyone else.  Part of knowing what to do is knowing what you have and that can be an issue.  One thing you will notice is that Corsair kits often have a "version number" attached and that's an indication of what's used.  You don't see this so much on other products that tend to have only one hardware type per SKU.  Mine say "Ver. 4.24" and you can find that on the DIMM itself as usually the box as well.
 
Where it's NOT told to you is in the listing to buy the memory.  Mobo manufacturers often have a "qualified vendor list" or QVL (or something like that) to tell you what to buy for best results.  For the Corsair memory, at least on the ASUS Crosshair VI QVL, it mentions a version for the Corsair parts -- and only for the Corsair parts because they seem to be the only ones who work things this way.  It allows them to make large volumes of memory using a variety of DRAM suppliers so I see why they do it.
 
However, that version system makes it very hard to buy compatible Corsair memory unless you're looking at it in a store, get lucky, or some vendor I haven't seen yet TELLS you what version the memory is -- which they generally DON'T.

 

Dominator Platinum have apparently used both Samsung and Hynix chips, but the ones I'm familiar with use Samsung D-die, E-die or B-die chips.  The E-die versions are dual-rank (due to lower density) and harder to get "up to speed".

 

What I'm Running:

 

 I'm using CMD16GX4M2B3200C16 version 4.24 which are Samsung, dual-rank, E-die.  Version 4.31 of my kit are supposed to be B-die.

 

I'm using a locked 100 mhz Bclk, 1.4 volts on running and boot, 1.15 volt SOC and 1.05 volt SB settings. I'm using a p-state overclock to 3800 mhz and hitting nearly 1.4 volts because my chip sucks. But it's still making me happy with what it can do so no harm no foul.  With the p-states it's not running at those volts all the time. 

 

Running CMD 1T (on auto), manually set 68.6 ohm ProcODT and "Gear Down" is "Enabled" on the Auto setting.

 

Memory Specification -- It's More Than You Think:

 

Also, keep in mind that technically ANYTHING over 2133 mhz is an "overclock".  Intel did a good job with their XMP profile and memory training systems which result in most all the sticks (including Corsair variations) "just working".  AMD hasn't gotten that far yet. XMP stands for "eXtreme Memory Profile" and it describes some additional parameters that are needed to hit your "rated overclock".
 
So lets say you buy 3200 mhz, 16-18-18-36 memory and they give you a rated voltage.  You THINK that's all you need to get an overclock.  You believe those timings "specify" your memory.
 
But there are other parameters "hidden" in the Intel XMP data on the DIMM's "SPD" flash memory that defines additional critical timing parameters that should be in place before training.  Training is basically running the memory through some test sequences and setting other technical-and-only-to-be-grokked-by-the-priesthood timings to fine tune it.  Training is not an exhaustive test though.
 
Many if not most Ryzen mobos even at AGESA 1.0.0.6 do not appear to be using the XMP timings, but are substituting their own defaults from a table of some kind.  What you end up with does not match the XMP on many memory sticks.  The result is frustration.
 
What this means is that for a given clock speed, memory training will not result in a satisfactory memory overclock and/or stability.  Intel made memory folks specify those parameters for a reason -- and AMD and a lot of mobo makers are not yet following suit.

 

Example:

 

Attached below is the complete specification of my memory stored in a flash area on the DIMM itself.  Note the "Extreme Memory Profile v2.0" at the bottom. and the line I've highlighted.  That line gives a "complete" memory specification for the stick.
 
Besides the standard 16-18-18-36 timings, it specifies values for these items -- and you can look up what they mean:

tRC
tRFC1 (sometimes simply "tRFC")
tRFC2
tRFC4
tRRDL
tRRDS
tFAW

 

In practice, all those extra timings need to be set BEFORE training.  The basics of what I did to get my memory up to speed is to fill that information in by hand in the BIOS and Bob's-your-uncle, my memory worked.
 
I followed the insanely long Crosshair VI overclocking discussion on overclock .net (over 2000 pages, yikes!) to learn from masters how to further tweak for best performance -- a time consuming occupation I'll tell you.  I'll share some of what I learned later.

 

So, that's a start and an introduction and in my next post we'll deal with the step-by-step process.
 

AidaMem.png

Link to comment
Share on other sites

Link to post
Share on other sites

Preliminary:

 

You will need a BIOS for your motherboard that uses the AGESA 1.0.0.6 microcode.  For your board that may be a public beta or a production BIOS.  For me on the ASUS Crosshair VI Hero it was all beta's after the 9943/9945 twins.  Current public beta is 1403 and that's what I'm running.

 

Step 1:

 

I don't know any other Ryzen motherboard, but in my case I have to use what's called a "manual" overclocking profile.  None of the automatic ones work for me.  I suspect you will need at least a B350 or maybe even only X370 board to have access to these.

 

Then, you need to select what is commonly referred to as a "strap" or "strapping" -- basically you may have a drop down list of memory speeds, or have to type in your desired memory speed.  This ONLY sets the clock speed when you do this though and you will be responsible for getting the parameters right and that's what this tutorial is all about.

 

Step 2:

 

You need to find your XMP parameters I listed above.  You can use a variety of programs to do this.  Unfortunately it appears that CPU-Z does not give you the full set you can see in my previous post.  The free version of Thaiphoon Burner, or the free AIDA 64, and many other programs for checking hardware can give you that set of parameters.  Many BIOS have an area that will show you the SPD data on your memory sticks including the Intel XMP profile. They may seem slightly different (like omitting the "t" that is often used) but you will figure it out.  

 

Print them out and hang on to them as depending on your BIOS you may or may not have access to them.

 

Step 3:

 

Find where in your BIOS the section is that allows you to tweak the memory timings.  That's where you will enter these numbers. 

 

Step 4:

 

Enter the timings from your memory's normal specifications, and the XMP data in the appropriate places.  AMD adds some suffixes to the parameter names but you'll figure them out.  Attached is how they look in the Ryzen Timing Checker from "The Stilt", sans suffixes.  Take a look and get used to seeing them and where the ones you need are.  Yes, they're like ancient Greek -- but they can be utilized so have a look so they aren't totally foreign.

 

More to come...

 

Timings.jpg

Link to comment
Share on other sites

Link to post
Share on other sites

  • 2 weeks later...

Well, sorry I've not followed up.  I actually have a bit more information to share as well as how to get your memory voltage down if you are having to set it over 1.4 volts to get your overclock to work.  I've been busy with some other things in life but I will return to this and again sorry for the delay.

Link to comment
Share on other sites

Link to post
Share on other sites

pretty useful guide. think it's the first preliminary ryzen memory guide on this forum, but @MageTank is developing his own guide 

 

and i too have corsair sticks. tried the "relatively simple" memory tricks to get it to boot 3200mhz, but no luck. it never passes training. this is with AGESA 1006 and an asus b350-f board 

 

right now i can do 2933mhz easily with no change in timings

Link to comment
Share on other sites

Link to post
Share on other sites

This is pretty helpful information. I've noticed with Ryzen, that your standard Intel XMP profile doesn't quite load the same when trying to load from the bios itself. Manual training seems to be the only way to go in order to achieve stability. This proved to be true with both my older Samsung B-Die kits, as well as my Micron IC's. 

My (incomplete) memory overclocking guide: 

 

Does memory speed impact gaming performance? Click here to find out!

On 1/2/2017 at 9:32 PM, MageTank said:

Sometimes, we all need a little inspiration.

 

 

 

Link to comment
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×