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

  • fallaha56 - Thursday, April 19, 2018 - link

    Er look again Intel fanbois

    Techradar review with fully patched intel systems is showing exactly the same thing...

    Spectre2 patch looks like it has a massive hit
  • Tropicocity - Thursday, April 19, 2018 - link

    Then why do other reviews not show even near the level of performance gap between Ryzen 1 and Ryzen 2? It's not as if spectre or meltdown patches would somehow make the 2 series way better than the 1
  • fallaha56 - Thursday, April 19, 2018 - link

    XFR, ram, cooling, MCE, lots of variables here

    But the key difference is the patching and quite possibly the RAM
  • DearEmery - Thursday, April 19, 2018 - link

    I tend to keep away from the comments here because I lack the knowledge to really contribute.

    I couldn't resist the urge to pop in because I'm certain this is the only time that sentence will be me boasting, when I'm reading comments from 'kill3x' and 'realistz' concerning 'hard fails'.

    Follow my great example and realize your anecdote (leaving aside your 'hard fail' comprehending results and placing them in context the article hands you plenty of, assuming you read every word you should have), is right on the edge of worthless and garbage. Then read all the comments (particularly page one and two). Then come back tomorrow to get potential updates. Then go back into whatever game you were playing and be silly gooses there.
  • Ryan Smith - Thursday, April 19, 2018 - link

    Hey Kill3x,

    To clarify, are you looking at the same sub-score we are, or the overall average? Our posted results are off of the first scene, Valley, as that's the most strenuous. The overall average is going to be higher, as you can see here: https://www.anandtech.com/bench/GPU16/1471
  • kill3x - Thursday, April 19, 2018 - link

    Thank you for your reply, Ryan. Yes, this is more on point. But then again, if you mean Geothermal valley, I have different results there. The first area is Siberian wilderness with heavy snow, and I have lower results there. So a question arises about testing methods and testing scenes. Was it combat? Static? In a cave or on the top of area? All of these things affect FPS heavily. That's why the best way to review hardware in games is using scripted scenes and showing results in a video with detailed options' setup. Why didn't you guys just use ingame benchmark which 100% runs same scenes with same density? All of this looks like reviewer tried to cherrypick results in favor of Zen+. When you can't reproduce the result of a benchmark with same hardware as reviewer used is example of a bad approach and distortion of perception of your visitors.
    But then again, thank you, Ryan, for speaking with us and listening to our rant.
  • Ryan Smith - Thursday, April 19, 2018 - link

    "Why didn't you guys just use ingame benchmark which 100% runs same scenes with same density?"

    To clarify, we do. We just use one of the scenes, and not the average of all of them. This is the same scene we've used for over a year now, since introducing this benchmark to our CPU & mobo testing suite.
  • kill3x - Friday, April 20, 2018 - link

    Ryan, I retested Valley scene in built-in benchmark, this time with 8700k and gtx 980 Ti. I used high instead of very high, all options like on your screenshot. I got 122 FPS on valley with this settings. On 980 Ti. I'm really trying to keep this polite, but this is 20% difference on marginally weaker card. This just can't be a "gap" kind of error. These benchmarks are horribly wrong. Make your site and Ian a favor, Ryan, please consider retesting this. People are already suspect you of shill (rightfully so). Be an honest guy and just admit that a technical mistake was made, and correct it. Noone would blame you, mistakes happen. If you leave that as it is, it will be a much bigger mistake.
  • divertedpanda - Saturday, April 21, 2018 - link

    Your setup is no where near similar to theirs. You can't use your PC to Bench vs Them, and call it scientific.......
  • kill3x - Saturday, April 21, 2018 - link

    Yeah my setup's is nowhere near similar to theirs, and still my results are 20% better on 2 different CPUs. That kinda puts credibility of their review to zero, with all my respect to Ryan. The only goal was to put Ryzen 1 and CFL-S CPUs in a bad light, so people will buy new Ryzen 2 CPUs and suddenly find out that its capability's are not that huge.

Log in

Don't have an account? Sign up now