The Core Complex, Caches, and Fabric

Many core designs often start with an initial low-core-count building block that is repeated across a coherent fabric to generate a large number of cores and the large die. In this case, AMD is using a CPU Complex (CCX) as that building block which consists of four cores and the associated caches.

Each core will have direct access to its private L2 cache, and the 8 MB of L3 cache is, despite being split into blocks per core, accessible by every core on the CCX with ‘an average latency’ also L3 hits nearer to the core will have a lower latency due to the low-order address interleave method of address generation.

The L3 cache is actually a victim cache, taking data from L1 and L2 evictions rather than collecting data from prefetch/demand instructions. Victim caches tend to be less effective than inclusive caches, however Zen counters this by having a sufficiency large L2 to compensate. The use of a victim cache means that it does not have to hold L2 data inside, effectively increasing its potential capacity with less data redundancy.

It is worth noting that a single CCX has 8 MB of cache, and as a result the 8-core Zen being displayed by AMD at the current events involves two CPU Complexes. This affords a total of 16 MB of L3 cache, albeit in two distinct parts. This means that the true LLC for the entire chip is actually DRAM, although AMD states that the two CCXes can communicate with each other through the custom fabric which connects both the complexes, the memory controller, the IO, the PCIe lanes etc.

 

The cache representation shows L1 and L2 being local to each the core, followed by 8MB of L3 split over several cores. AMD states that the L1 and L2 bandwidth is nearly double that of Excavator, with L3 now up to 5x for bandwidth, and that this bandwidth will help drive the improvements made on the prefetch side. AMD also states that there are large queues in play for L1/L2 cache misses.

One interesting story is going to be how AMD’s coherent fabric works. For those that follow mobile phone SoCs, we know fabrics and interconnects such as CCI-400 or the CCN family are optimized to take advantage of core clusters along with the rest of the chip. A number of people have speculated that the fabric used in AMD’s new design is based on HyperTransport, however AMD has confirmed that they are using a superset HyperTransport here for Zen, and that the Infinity fabric design is meant to be high bandwidth, low latency, and be in both Zen and Vega as well as future products. Almost similar to the CPU/GPU roadmaps, the Fabric has its own as well.

Ultimately the new fabric involves a series of control and data passing structures, with the data passing enabling third-party IP in custom designs, a high-performance common bus for large multi-unit (CPU/GPU) structures, and socket to socket communication. The control elements are an extension of power management, enabling parts of the fabric to duty cycle when not in use, security by way of memory management and detection, and test/initialization for activities such as data prefetch.

Execution, Load/Store, INT and FP Scheduling Simultaneous MultiThreading (SMT) and New Instructions
Comments Locked

574 Comments

View All Comments

  • Meteor2 - Friday, March 3, 2017 - link

    ...In which case you'd be better off with a 7700K, looking at the benchmark results. Cheaper too.
  • ddriver - Thursday, March 2, 2017 - link

    Ryzen offers the same performance at half the cost. More pci-e lanes is good for io, however quad channel memory is pretty much pointless, aside of pointless synthetic benches. Ryzen might not make it to my personal workstation due to the low pci-e lane count, but it has enough to replace my aging 3770k farm nodes, to which it will be a significant upgrade, provided the chip and platform turn out to be stable and bug free,

    Intel has gotten lazy and sloppy, bricking products, chipset bugs, they haven't really done anything new architecture wise for years, milking the same old cow.

    It is rather silly to assume that gaming dictates CPU prices, this IS NOT a gaming product, if your ass-logic is to be followed, the intel needs to drop the 7700k price to 168, because in games it is barely any faster than the i3-7350K, and has the same pathetic, even lower than ryzen, number of pci-e lanes.

    This is a chip for HPC, which gaming is NOT. Go back to the kiddie garden, eight core chips are for grown ups ;)
  • imaheadcase - Thursday, March 2, 2017 - link

    People compare it to gaming, because its the main driving for these type of CPUs, its not even gaming specfic but VR, Graphics modeling, etc. You honestly think people are buying these for offices or industry for complex math problems? lol
  • ddriver - Thursday, March 2, 2017 - link

    It is not "people" but "fanboys", and they cling to gaming because it is the only workload where intel can offer better performance for the price, albeit by comparing products from different tiers, which is quite frankly moronic.

    Cars are faster than trucks, so who in the world needs to spend money on trucks? That's the kind of retarded logic you are advocating...

    Smart people buy whatever suits their needs. Obviously, if all you do is play games you wouldn't be buying ryzen or a lga2011 system. Just get an unlocked i5 and overclock it, best bang for the buck. You must realize that even if you don't, other people use computers for tasks other than gaming. And for a large portion of them ryzen will be the best deal, because it is versatile - it is good enough for gaming too, while still offering significant performance advantage compare to an intel quad in tasks that are time staking, and are very much competitive with intel's 8 and 10 core chips while delivering more than twice the value, which is important for everyone who doesn't have money to throw away.

    Claiming that "gaming is the main driving for these type of CPUs" is foolish to say the least, because games don't benefit from that particular type of CPUs. Most of the games can't even property utilize 4 threads. And this is not likely to change soon, because the overhead of complexity and thread synchronization is not worth it for non-performance demanding tasks such as games.
  • Lord-Bryan - Thursday, March 2, 2017 - link

    That's one really well thought out argument
  • rarson - Thursday, March 2, 2017 - link

    Ryzen's versatility and price are the two biggest factors that make it so good. It might not beat the very best gaming CPU that Intel has, or the very best multi-threaded monster that Intel has in every scenario, but it's competitive with both at half the price of the high-end stuff. Hence, while I do game some and want to build a computer to use for gaming, I also do other stuff like audio production that benefits greatly from Ryzen's multi-threaded performance. To me, it's a no-brainer: Ryzen right now is the best bang-for-the-buck chip for someone who wants all-around high-end performance, by far. Maybe not the 1800X, I kind of think the 1700X is a better value, but still, for most people who want multiple-use performance instead of absolute maximum gaming performance, Ryzen is the clear choice.

    Ryzen's max clock speeds seem, like Intel's, to be hindered by the total number of cores on chip, so it should be extremely interesting to see how the 4- and 6-core chips overclock once they arrive, and what kind of performance they'll achieve. I actually think that, like Intel, a 4-core Ryzen might be a better gaming chip than the 8-core, and if that's the case, then it might be really darn close to Intel's best Kaby Lake, because like you pointed out, most games aren't threaded well at all.

    Additionally, from a gaming perspective, it seems like AMD has done more to push technology forward in that respect than anyone else. They've worked on Mantle, Vulkan, FreeSync, TrueAudio, and others. They've always tried to give performance value by offering more cores, but software has been slow to take advantage of them. Intel is content to stagnate by offering extremely incremental increases because performance is "good enough" so developers have no reason to really try to take advantage of extra cores aside from outside use cases. With Ryzen, AMD is pushing chips towards higher core counts (much like they did with the Athlon X2) but this time, they're trying harder to get developers on board and help them achieve good results. So while it always takes forever for software to better utilize the hardware, once the hardware becomes more common the software will start to follow and you'll see the actual gaming performance improve. Is that a valid reason to buy Ryzen today if your sole focus is gaming? Of course not, but it does bode well for Ryzen owners in the future. The performance can only get better. Can the same be said about Intel? Well, probably not if you're using one of the 4-core chips. It's pretty much a known quantity.

    I had high hopes for Bulldozer and Ryzen is the exact opposite of what Bulldozer was. I feel like the CPU market has been stagnant for years and now suddenly there's a reason to be excited. This makes AMD competitive again, which will be good for pricing even if you're an Intel fan. It's been a long wait, but it was worth it, this is a good product.
  • Notmyusualid - Friday, March 3, 2017 - link

    http://www.gamersnexus.net/hwreviews/2822-amd-ryze...
  • Makaveli - Thursday, March 2, 2017 - link

    +1 ddriver you destroyed that kid with your logic well done.
  • khanikun - Friday, March 3, 2017 - link

    Gaming definitely isn't the main driving force for CPUs, as use case changes. I bought a 7700K for my gaming rig. I'd get a 1700 for a VM host, as I'd like to start building a lab again. It won't be this round though. I'd rather wait for AMD to iron our any kinks and buy the next generation. It's something the 7700K could do, but more cores would definitely make it a much better lab.
  • Meteor2 - Friday, March 3, 2017 - link

    Nobody buys mid/high-end consumer chips for HPC. They buy them for gaming. A few for video production. That's it.

Log in

Don't have an account? Sign up now