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

  • Maxiking - Tuesday, April 24, 2018 - link

    "I just finished running Rise of the Tomb Raider benchmarks, 1080p, very high preset, FXAA.

    Unpatched:

    Mountain Peak: 131.48 FPS (min: 81.19 max: 197.02)
    Syria: 101.99 FPS (min: 62.73, max: 122.24)
    Geothermal Valley: 98.93 FPS (min:76.48, max: 117.00)
    Overall score: 111.31 FPS

    Windows patch only:

    Mountain Peak: 135.34 FPS (min: 38.21 max: 212.84)
    Syria: 102.54 FPS (min: 44.22, max: 144.03)
    Geothermal Valley: 96.36 FPS (min:41.35, max: 148.46)
    Overall score: 111.93 FPS

    Windows patch and BIOS update:

    Mountain Peak: 134.01 FPS (min: 59.91 max: 216.16)
    Syria: 101.68 FPS (min: 38.95, max: 143.44)
    Geothermal Valley: 97.55 FPS (min:46.18, max: 143.97)
    Overall score: 111.62 FPS

    Average framerates don't seem affected."

    From the link you posted, you got rekt by yourself.
  • Ranger1065 - Wednesday, April 25, 2018 - link

    Nicely done Mr Aardvark. That made me smile.
  • mikael.skytter - Tuesday, April 24, 2018 - link

    Thanks for a great review. Any chance it would be possible to look into how SpeedShift 2 compares to AMD:s solution for short burst loads and clock ramp-up?
    Thanks!
  • koekkoe - Tuesday, April 24, 2018 - link

    My favorite part in the article: fsfasd.
  • Meow.au - Tuesday, April 24, 2018 - link

    I’ve visited the comments section a few times since the publication. As a psychologist in training, I’ve found it interesting as the initial complaints about this review were reasonable (it doesn’t match other sites), but by page 45 are now bordering on paranoia and conspiracy theories. The conspiracy theories are all the more puzzling when the simplest and most reasonable explanation is that the spectre patch has punished Intel processors rather severely. I’ve found trying to argue against conspiracy theories, be it the moon landing or anti-vaxers, to be singularly ineffective.

    The more you provide scientific evidence and rationality, the harder conspiracy theorists dig in their heels and defend their original position. Our natural confirmatory bias to only seek evidence which confirms pre-existing beliefs seems to be a flaw built into the wiring of the human brain. Psychologically protective? Yes... it’s nice to always be right. Useful for doing science? No.

    I’d be delighted (and shocked) in a week’s time to learn of massive incompetence or a cover up. I expect there to be some interesting and unexpected details. But I’m guessing no evidence will be found for the commonly repeated conspiracy theories (spectre effect is minimal, heatsink throttling, bias against intel, etc.). But I guess that will just be further evidence there really is a conspiracy... whatever.

    Keep up the good work guys. A long time reader.
  • RafaelHerschel - Wednesday, April 25, 2018 - link

    I think you need more training, psychologist in training, because it seems that you can't detect your own personal bias. As you stated yourself, the original complaints are quite reasonable. The problem is that AnandTech is not addressing these complaints in a timely manner and is mostly interested in damage control.

    The fact that some complaints are unreasonable doesn't change the fact.

    Many other reviewers have applied all relevant patches, it is poor form to assume that they haven't. But I understand why you question their competence or integrity. It's cognitive dissonance. You trust AnandTech. In this case AnandTech is an outlier and has not clarified the unique results of their gaming test. Your trust in AnandTech is therefore not logical, and yet you consider yourself a logical person.

    Therefore, you have decided that the 'logical' explanation is that all other reviewers haven't applied the patches... whatever.
  • divertedpanda - Wednesday, April 25, 2018 - link

    Other reviewers admitted having not patched down to the bios since some used mobos where patches were not yet released.
  • TrackSmart - Thursday, April 26, 2018 - link

    This comment by RafaelHerschel doesn't make sense. The person being maligned said exactly this: "I expect there to be some interesting and unexpected details. But I’m guessing no evidence will be found for the commonly repeated conspiracy theories..."

    And he/she was EXACTLY CORRECT in that prediction.

    Your complaint, on the other hand, seems disingenuous. Anandtech's staff immediately flagged their gaming results as anomalous (on just about every page of the article). Then they dug deep to figure out what happened, which takes time to test, confirm, and then publish about). Then about 5 days later they posted updated results (2700x and i7-8700k, so far) and a VERY DETAILED explanation of what happened.

    So.... What's the problem again? That sometimes unforeseen test parameters can lead to different results? That can happen. The only question is how was the situation handled. In this case, I think reasonably well under the circumstances.
  • mapesdhs - Monday, May 14, 2018 - link

    Grud knows now what "timely manner" is supposed to mean these days. Perhaps RafaelHerschel would only be happy if AT can go back in time and change the article before it's published.

    Meow.au, re what you said, Stefan Molyneux has some great pieces on these issues on YT.
  • schlock - Tuesday, April 24, 2018 - link

    Why aren't we running DDR4-3200 across all systems? It may go a small ways to explaining the small discrepancy in intel performance ...

Log in

Don't have an account? Sign up now