Introduced with the RDNA 2 architecture, Infinity Cache is a new cache system that operates alongside the GDDR6 memory interface within both the RX 6800 XT and RX 6800. It's a pretty big deal for AMD, too, with its engineers telling us it is the key to unlocking gaming performance from 1080p to 4K where it would otherwise have been saddled with a massive and power-hungry alternative.
Sitting just off the side of the main cluster of compute cores within AMD's Navi 21 GPU, the Infinity Cache essentially acts as a small yet effective memory store. It's situated between the smaller L1 and L2 caches, also on the GPU itself, and the wider GDDR6 and DDR4 memory off-chip, on the PCB and in the PC itself.
And the reason for this whole new approach to a graphics cache? I'm told it all comes from the engineering team's desire to avoid using a super-expensive, and thirsty 512-bit memory bus. Presumably that's what would have otherwise been needed to keep the Big Navi GPUs in touch with their Nvidia rivals. As it's turned out, the RX 6800 XT and its little sibling are often more than a match for the RTX 3080 and RTX 3070 respectively, and the Infinity Cache is a big reason why.
For the record, all RX 6000-series graphics cards, including the upcoming RX 6900 XT, come with the same memory configuration. 16GB of GDDR6 and a 256-bit memory bus—which could be construed as a little small for all those memory chips. That's where the 128MB of Infinity Cache on chip comes in.
"We were looking at the daunting prospect of having to put a 512-bit interface and all the power, area and expense associated with that," Sam Naffzifer, product technology architect at AMD, says. "And so we wanted a better solution. But no one had done this before. So there wasn't much data on exactly how much reuse we get, and how effective the cache could be."
The team ran performance simulations to help gauge the prospect of a new cache on the chip, and these showed that a large cache on die would indeed help with the re-use of temporal and spatial data when rendering a complex image—even without special instructions, a shader will look to access the same data more than once for multiple frames in-game. Having someplace physically near the GPU's compute units to store all that data for rapid access acts a a boon to the GPU performance as a whole.
The core concept is said to have come from similar caches used on AMD's EPYC server chips, those which use the Zen architecture found in many of the best CPUs for gaming from team red.
It's pretty accurate, too, we're told. AMD's engineers expect a call to the Infinity Cache will hit 60-80 percent of the time, meaning it's regularly used with existing game engines right now, storing useful data for the rendering of a frame. And when it does, AMD's engineers are touting a 3.25x increase in effective memory bandwidth over a straight 256-bit solution. From 512GB/s to an effective 1,664GB/s.
But it's not just about merely sticking a cache on the GPU and getting it to work. We've seen a handful of new and exciting hardware-based solutions over the years, some of which required developer support to fully-integrate and operate effectively. And that's where things can get a little tricky.
"We want our architectures as far as possible to be light touch for the developers", Andrew Pomianowski, Radeon product architect tells us in an RDNA 2 roundtable, "where they go in and they just get performance straightaway." And it's true that Infinity Cache is fairly transparent to developers. There's no specific programming required to get it operational, and thus it works no matter what game you plug into it.
"The important thing to realise here is that, when you're bringing a new technology like this to the market, it's very, very important that it's as transparent as possible to developers initially, right?" Pomianowski says. "You can't bring something like this to the market, that's a departure from the traditional memory subsystem on the GPU, and have a high barrier of entry to the developers where they have to programme in a particular way to get benefit from it."
But what if a developer did program specifically for Infinity Cache? That's a question raised during an AMD roundtable discussion ahead of the RX 6800 XT and RX 6800 release date, and AMD is quietly optimistic for future performance if a developer were to team up with the red team for a little more juice.
"You know, there is the potential for benefits from providing more direct controls," Pomianowski continues, "we have … quite an extensive set of ways in which the Infinity Cache can be controlled.
"That's something we will we will look at. I mean in our initial interactions with developers we talked to them about ways that, if they understand that the cache is there, that they can perhaps alter how they do their rendering to be more friendly to the cache—get even more benefits out of it, you know, the ways in which you order rendering and place things can realise definite gains."
Black Friday 2020 deals: the place to go for the all the best Black Friday bargains.
Perhaps there's even more leverage for a developer to do so with the Xbox Series X, Series S, and PlayStation 5 all utilising the Infinity Cache through the use of RDNA 2 silicon. There's a lot of modern red team silicon around right now, and that's potentially a feather in the hat of AMD as it works to lessen Nvidia's choke-hold on the graphics card market. It's still got a long way to go in order to do just that, with Nvidia making up over three-quarters of the market, but RDNA 2 feels like a big leap in the right direction.
"So, we'll be working on that. And we'll be evaluating in the future, you know, whether there's reasons to explore providing more visibility into the cache."
Perhaps that will feed into the age-old adage of 'fine wine', the concept that an AMD graphics card only gets better with age.
"But at the moment, you know, I think it's just good that it's there, and that it provides benefits without having a huge amount of work on the part of the developers to realise those benefits."
And those potential benefits will only comes as icing on the cake for AMD's graphics team. The Infinity Cache is already proving its worth, and as you can see in our reviews of the RX 6800 XT and RX 6800, these two graphics cards manage to stand on their own two feet well enough without being propped up by clever programming per game.
Although a little more performance out of the RX 6800 XT would go a long way in its battle against the Nvidia RTX 3080 at 4K.