Improvements to the Cache Hierarchy

The biggest under-the-hood change for the Ryzen 2000-series processors is in the cache latency. AMD is claiming that they were able to knock one-cycle from L1 and L2 caches, several cycles from L3, and better DRAM performance. Because pure core IPC is intimately intertwined with the caches (the size, the latency, the bandwidth), these new numbers are leading AMD to claim that these new processors can offer a +3% IPC gain over the previous generation.

The numbers AMD gives are:

  • 13% Better L1 Latency (1.10ns vs 0.95ns)
  • 34% Better L2 Latency (4.6ns vs 3.0ns)
  • 16% Better L3 Latency (11.0ns vs 9.2ns)
  • 11% Better Memory Latency (74ns vs 66ns at DDR4-3200)
  • Increased DRAM Frequency Support (DDR4-2666 vs DDR4-2933)

It is interesting that in the official slide deck AMD quotes latency measured as time, although in private conversations in our briefing it was discussed in terms of clock cycles. Ultimately latency measured as time can take advantage of other internal enhancements; however a pure engineer prefers to discuss clock cycles.

Naturally we went ahead to test the two aspects of this equation: are the cache metrics actually lower, and do we get an IPC uplift?

Cache Me Ousside, How Bow Dah?

For our testing, we use a memory latency checker over the stride range of the cache hierarchy of a single core. For this test we used the following:

  • Ryzen 7 2700X (Zen+)
  • Ryzen 5 2400G (Zen APU)
  • Ryzen 7 1800X (Zen)
  • Intel Core i7-8700K (Coffee Lake)
  • Intel Core i7-7700K (Kaby Lake)

The most obvious comparison is between the AMD processors. Here we have the Ryzen 7 1800X from the initial launch, the Ryzen 5 2400G APU that pairs Zen cores with Vega graphics, and the new Ryzen 7 2700X processor.

This graph is logarithmic in both axes.

This graph shows that in every phase of the cache design, the newest Ryzen 7 2700X requires fewer core clocks. The biggest difference is on the L2 cache latency, but L3 has a sizeable gain as well. The reason that the L2 gain is so large, especially between the 1800X and 2700X, is an interesting story.

When AMD first launched the Ryzen 7 1800X, the L2 latency was tested and listed at 17 clocks. This was a little high – it turns out that the engineers had intended for the L2 latency to be 12 clocks initially, but run out of time to tune the firmware and layout before sending the design off to be manufactured, leaving 17 cycles as the best compromise based on what the design was capable of and did not cause issues. With Threadripper and the Ryzen APUs, AMD tweaked the design enough to hit an L2 latency of 12 cycles, which was not specifically promoted at the time despite the benefits it provides. Now with the Ryzen 2000-series, AMD has reduced it down further to 11 cycles. We were told that this was due to both the new manufacturing process but also additional tweaks made to ensure signal coherency. In our testing, we actually saw an average L2 latency of 10.4 cycles, down from 16.9 cycles in on the Ryzen 7 1800X.

The L3 difference is a little unexpected: AMD stated a 16% better latency: 11.0 ns to 9.2 ns. We saw a change from 10.7 ns to 8.1 ns, which was a drop from 39 cycles to 30 cycles.

Of course, we could not go without comparing AMD to Intel. This is where it got very interesting. Now the cache configurations between the Ryzen 7 2700X and Core i7-8700K are different:

CPU Cache uArch Comparison
  AMD
Zen (Ryzen 1000)
Zen+ (Ryzen 2000)
Intel
Kaby Lake (Core 7000)
Coffee Lake (Core 8000)
L1-I Size 64 KB/core 32 KB/core
L1-I Assoc 4-way 8-way
L1-D Size 32 KB/core 32 KB/core
L1-D Assoc 8-way 8-way
L2 Size 512 KB/core 256 KB/core
L2 Assoc 8-way 4-way
L3 Size 8 MB/CCX
(2 MB/core)
2 MB/core
L3 Assoc 16-way 16-way
L3 Type Victim Write-back

AMD has a larger L2 cache, however the AMD L3 cache is a non-inclusive victim cache, which means it cannot be pre-fetched into unlike the Intel L3 cache.

This was an unexpected result, but we can see clearly that AMD has a latency timing advantage across the L2 and L3 caches. There is a sizable difference in DRAM, however the core performance metrics are here in the lower caches.

We can expand this out to include the three AMD chips, as well as Intel’s Coffee Lake and Kaby Lake cores.

This is a graph using cycles rather than timing latency: Intel has a small L1 advantage, however the larger L2 caches in AMD’s Zen designs mean that Intel has to hit the higher latency L3 earlier. Intel makes quick work of DRAM cycle latency however.

Talking 12nm and Zen+ Translating to IPC: All This for 3%?
Comments Locked

545 Comments

View All Comments

  • rocky12345 - Tuesday, April 24, 2018 - link

    They ran all systems at both Intel's & AMD's listed specs as such AMD's memory was at 2933MHz on Zen+ & 2666MHz on Intel's Coffee lake 8700K,they did the same for the older gen parts as well and ran those at the spec's listed for them as well.

    There have been a few other media outlets that did the same thing and got the same results or very close to the same results. AMD's memory bandwidth as in memory controller seems to give more bandwidth than Intel's does at the same speed so with Intel not running at 3200MHz like most media outlets did maybe Intel loses a lot of performance because of that and AMD lost next to nothing from not going 3200MHz. It is all just guesses on my part at the moment.

    Food for thought when Intel released the entire Coffee Lake line up they only released the z370 chip set which has full support for over clocking including the memory and almost all reviews were done with 3200MHz-3400MHz memory on the test beds even for the non K Coffee lakes CPU's. Maybe Intel knew this would happen and made sure all Coffee lakes looked their best in the reviews. For a few sites that retested once the lower tier chip sets were released the non K's using their rated memory speeds lost about 5%-7% performance in some cases a bit even more.

    I am no fanboy of any company I just put out my opinions & theories that are based off of the information we are given by the companies and as well as the media sites.
  • Maxiking - Tuesday, April 24, 2018 - link

    People never fail to amaze me, so you basically know nothing about the topic, yet you still managed to spit 4 paragraphs of mess, even made some "food for thought".

    Slower ram - performance regression unless you have big caches which is not the case of Intel nor AMD.
  • rocky12345 - Tuesday, April 24, 2018 - link

    It seems pretty basic to me as to what was said in the post. It is not my problem if you do not under stand what myself and some others have said about this topic. Pretty simple slower memory less bandwidth which in turn will give less performance in memory intensive work loads such as most games. ALl you have to do is go and look at some benches in the reviews to see AMD has the upper hand when it comes to memory bandwidth even Hardware Unboxed was pretty surprised by how good AMD's memory controller when compared to Intel's. Yes Intel's can run memory at higher speeds than AMD but even with that said AMD does just fine. You are right about cache sizes neither has a overly large cache but AMD 's is bigger on the desktop class CPU's and that is most likely one of the reasons their bandwidth for memory is slightly better.
  • Maxiking - Wednesday, April 25, 2018 - link

    The raw bandwidth doesn't matter, it's cas latency what makes the difference here.

    https://www.anandtech.com/show/11857/memory-scalin...

    https://imgur.com/MhqKfkf

    With CL16, it doesn't look that much impressive, is it.

    Now, lower the CL latencies to something more 2k18-ish, booom.

    https://www.eteknix.com/memory-speed-large-impact-...

    Another test

    https://www.pcper.com/reviews/Processors/Ryzen-Mem...

    Almost all the popular hw reviewers don't have a clue. They tell you to OC but do not explain why and what you should accomplish by overclocking. Imagine you have some bad hynix ram which can be barelly OC from 2666 to 3000mhz but you have to loose timing from CL15 for CL20 to get there.
  • mapesdhs - Monday, May 14, 2018 - link

    schlock, the chips were run at official spec. Or are you saying it's AMD's fault that Intel doesn't officially support faster speeds? :D Also, GN showed that subtimings have become rather important for AMD CPUs; some mbds left on Auto for subtimings will make very good selections for them, giving a measurable performance advantage.
  • peevee - Tuesday, April 24, 2018 - link

    It is April 24th, and the page on X470 still states: "Technically the details of the chipset are also covered by the April 19th embargo, so we cannot mention exactly what makes them different to the X370 platform until then."
  • jor5 - Tuesday, April 24, 2018 - link

    The review is a shambles. They've gone to ground.
  • coburn_c - Tuesday, April 24, 2018 - link

    I have been wanting to read their take on x470..
  • risa2000 - Wednesday, April 25, 2018 - link

    It is my favorite page too.
  • mpbello - Tuesday, April 24, 2018 - link

    Today phoronix is reporting that after AMD's newest AGESA update their 2700X system is showing 10+% improvement on a number of benchmarks. It is unknown if on Windows the impact will be the same. But you see how all the many variables could explain the differences.

Log in

Don't have an account? Sign up now