Puget Systems print logo

https://www.pugetsystems.com

Read this article at https://www.pugetsystems.com/guides/1869
Article Thumbnail

Messy Memory Speed Standards

Written on November 9, 2020 by William George
Share:

Introduction

Here at Puget Systems, we have tried to be careful about sticking to CPU manufacturer memory specifications - to ensure the best reliability, and to avoid overclocking memory controllers (which could, technically, violate CPU warranties). But increasingly complicated memory speed support schemes on many newer processors, combined with a lack of supply of certain speed modules, has forced us to adopt a new approach to what we offer in our workstations.

DDR4 Memory Modules

Historical Approach

For many years now, Intel and AMD have officially stated the maximum memory speed supported by each processor they make - though sometimes this information has been hard to find directly from those manufacturers, or it has been dependent on how many memory modules were being used, how dense those modules were, etc. And for just as long, folks building their own PCs have exceeded those specifications in an effort to get better performance. Even motherboard makers often test and certify higher frequency memory for use on their boards than the accompanying CPUs are rated for, especially on models which are designed to appeal to overclockers. Indeed, running memory at higher speeds than a processor is rated for is a form of overclocking: in order for the memory to run faster, the controller on CPU has to run at that speed as well, and if it is over the clock speed officially supported by the manufacturer then that is the textbook definition of overclocking.

While that sort of memory overclocking has been a widely accepted practice among enthusiast PC builders, the official policies from Intel and AMD are that doing so voids their hardware warranties - just like any other type of overclocking does. That is one of the primary reasons that we, here at Puget Systems, have not gone down that road with our workstations. We have also seen increased crashes and bluescreens associated with running higher speed memory, at least in certain applications, and the increase in performance is usually modest in real-world situations. Combine all of that with the increased cost of higher frequency memory, and it made perfect sense for us to stick with the officially supported RAM speeds in the systems we built.

Current Situation

Unfortunately it is becoming untenable to maintain that approach to memory speeds. This is due to a combination of factors:

  • AMD has, for a while now, supported different memory speeds on their CPUs depending on how many RAM modules are installed and whether they are single- or dual-rank; with anywhere from 2666 to 3200MHz being the upper limit... but this information has not been widely available to the public, despite its impact on warranty support
  • Intel has lagged behind AMD in supported memory speeds at the top end, though they are starting to catch up
  • The most widely supported speed at the moment, in terms of official CPU specs, is DDR4 2933MHz... but that speed is among the hardest to find from the memory manufacturers we prefer to use (Crucial / Micron)
  • Supply of the 2666MHz memory we have been using for years, due to its reliability and wide support among CPUs, is becoming increasingly scarce

So where does all of that leave us? As of the time of this publication, the solution we've decided on is to carry DDR4 3200MHz memory - even though that is technically faster than some of the platforms we build on officially support. The specific modules we are carrying are all on the qualification lists for the motherboards we use, however, and in cases where the motherboard does a good job of automatically downclocking the memory to the correct speed for the CPU we will allow it to do so. The current Intel X299 platform is a good example of that: the boards we carry for it smoothly adjust the RAM frequency to 2933MHz, which is the maximum speed which accompanying Core X processors are designed for.

In other platforms, where the motherboard does not automatically adjust memory speed to match what the CPU is rated for, we will have the memory running at 3200MHz with their default JEDEC timings. This may mean that some of the configurations we sell, going forward, are technically running with overclocked memory controllers - but in our experience CPU hardware failures are rare, and should any arise from this change we will of course cover them for the duration of the parts warranty on each system.

Memory Performance

A natural question that many people have asked about in recent years is whether higher frequency memory will have much of an impact on performance in the professional applications we tailor our workstations for. We've done sporadic testing on that in the past, but in preparation for this change to our product line I wanted to do a round of testing in several applications across a few of our most popular CPU platforms. We will look at both mainstream and HEDT platforms from Intel and AMD, and test memory at the 2666MHz (CL19) speed we've been using as well as 2933 (CL21) and 3200MHz (CL22).

To avoid turning this into an exhaustive set of tests, while still ensuring that we capture a good picture of how memory speed impacts real-world workflows, I decided to run most of our major benchmarks on two platforms each: one AMD and one Intel. The specific CPUs to test from each manufacturer were based on whether the particular application in question performs better with high clock speed (Intel Core i9 10900K & AMD Ryzen 9 3950X) or high core count (Intel Core i9 10980XE & AMD Threadripper 3970X).

Because of that approach, some processors were tested with more applications than others. The data is split up into a chart for each CPU, and the results are shown as performance relative to the lowest memory speed (2666MHz). The red line is the 2666MHz result, which will by definition always be at 100%, with blue showing 2933MHz and green showing 3200MHz. Higher percentages are better.

It is worth noting a few things here:

  • AMD processors generally see a bigger increase in performance with faster memory than Intel chips
  • Intel's i9 10980XE was not stable with 3200MHz memory, which is beyond its official supported speed of 2933MHz; in particular, it was unable to complete the Davinci Resolve or Pix4D Park Map benchmark tests and so is shown with 0% on those two results
  • None of our testing showed more than a 9% difference between the fastest and slowest results with this spread of memory - and the vast majority were at 5% or less
  • There were a handful of times that higher frequency memory resulted in slightly slower performance - which could be due to higher latency settings that accompany memory clock speed increases

Conclusion

Our goal here at Puget Systems is for the workstations we sell to "get your work done and not be a hindrance." That means we want to ensure the best possible reliability, and within those confines to also provide the fastest performance we can. Historically, that meant sticking closely to the official CPU memory specs from AMD and Intel - while also using the most reliable brands of memory, based on the part failure data we track. That is becoming nearly impossible to do, though, so we are shifting gears to instead focus on using memory speeds that we have thoroughly tested here in our facilities with modules which are on official QVLs from motherboard manufacturers. This isn't a performance-motivated move, though it will bring small boosts in many applications, but rather to ensure that we can continue offering the best possible PC workstations for our customers.

Tags: RAM, Memory, CPU, Processor, reliability, Motherboard, PC Workstation, Workstation, PC, speed, Frequency
bl0m

Can i assume the memory timings were the same between 2666, 2933 & 3200? Otherwise it will be hard to judge the performance graphs.

Posted on 2020-11-10 21:30:48

It was a bit buried in the text, but I did address the latency question:

"We will look at both mainstream and HEDT platforms from Intel and AMD, and test memory at the 2666MHz (CL19) speed we've been using as well as 2933 (CL21) and 3200MHz (CL22)."

As mentioned there, the 2666MHz memory we've been using for a couple of years now is CL 19, and the stuff we are moving to is 3200MHz at CL22. The testing I did for this article was using memory that had official support for those exact speed & latency combinations, as well as several others:

https://uploads.disquscdn.c...

And the goal here was less about precise comparison of the impact that frequency alone has on performance (for which fixing the latency could be helpful, I agree) but rather looking at how this move to a different memory module speed as our standard at Puget Systems would impact performance for our customers. With that in mind, having the latency settings match what we use to carry and what we have moved to is a better reflection of what our customers can expect :)

Posted on 2020-11-10 21:41:01
Bl0m

Thanks for the reply, I had completely missed that in the text. I was looking at from a performance perspective. These timings seems extremely relaxed though. good to know!

Posted on 2020-11-11 22:08:59
任柔

delay was important in vray next?

Posted on 2020-11-11 02:12:46

It does seem so! The difference isn't huge, but it does appear that rendering (CB & VRay) on Threadripper does better with the slower but lower latency memory configuration. I would guess that the time the CPU spent waiting for more data (to render the next part of a scene?) was more important, at least in these benchmarks, than the maximum amount of data that could be moved in a given amount of time.

Posted on 2020-11-12 18:13:42
Jan D

Interesting article. Can you please tell me why not using ECC unbuffered RAM on Ryzen (Xeon-W1200) builds? Price is not that much higher and wouldn't that add to the reliability of the system? Thanks.

Posted on 2020-11-12 16:14:49

We have found that the supply of unbuffered ECC memory is not reliable enough to offer it on Ryzen, since that could result in a huge amount of orders - not all of which we would be able to fulfill in a timely manner. We do offer it on less frequently ordered configurations, including some Xeon processors, and if availability improves in the future we would certainly be open to offering it. Thankfully, we have found that even the non-ECC memory we carry has been very reliable (likely due, at least in part, to us not carrying extremely high performance memory - we found in past testing that the more memory speeds, voltages, and latencies were pushed the higher the failure rates got).

Posted on 2020-11-12 20:34:18
Zackarih Hartford

Would changing a DDR4 XMP kit from 3200 16-18-18-36 @1.35 V to 3200 22-22-22-52 @1.2V give close to the same stability as a jedec 3200 module out of the box?

Posted on 2020-11-17 18:39:00

I'm honestly not sure, but relaxing timings should certainly have a positive impact on stability. Reducing voltage could go the other direction, though - it would reduce heat somewhat, but if the particular memory chips on those modules need the additional voltage in order to run at 3200MHz then going lower could actually make stability worse.

Posted on 2020-11-17 20:50:29