As someone who analyzes GPUs for a living, one of the more vexing things in my life has been NVIDIA’s Maxwell architecture. The company’s 28nm refresh offered a huge performance-per-watt increase for only a modest die size increase, essentially allowing NVIDIA to offer a full generation’s performance improvement without a corresponding manufacturing improvement. We’ve had architectural updates on the same node before, but never anything quite like Maxwell.

The vexing aspect to me has been that while NVIDIA shared some details about how they improved Maxwell’s efficiency over Kepler, they have never disclosed all of the major improvements under the hood. We know, for example, that Maxwell implemented a significantly altered SM structure that was easier to reach peak utilization on, and thanks to its partitioning wasted much less power on interconnects. We also know that NVIDIA significantly increased the L2 cache size and did a number of low-level (transistor level) optimizations to the design. But NVIDIA has also held back information – the technical advantages that are their secret sauce – so I’ve never had a complete picture of how Maxwell compares to Kepler.

For a while now, a number of people have suspected that one of the ingredients of that secret sauce was that NVIDIA had applied some mobile power efficiency technologies to Maxwell. It was, after all, their original mobile-first GPU architecture, and now we have some data to back that up. Friend of AnandTech and all around tech guru David Kanter of Real World Tech has gone digging through Maxwell/Pascal, and in an article & video published this morning, he outlines how he has uncovered very convincing evidence that NVIDIA implemented a tile based rendering system with Maxwell.

In short, by playing around with some DirectX code specifically designed to look at triangle rasterization, he has come up with some solid evidence that NVIDIA’s handling of tringles has significantly changed since Kepler, and that their current method of triangle handling is consistent with a tile based renderer.


NVIDIA Maxwell Architecture Rasterization Tiling Pattern (Image Courtesy: Real World Tech)

Tile based rendering is something we’ve seen for some time in the mobile space, with both Imagination PowerVR and ARM Mali implementing it. The significance of tiling is that by splitting a scene up into tiles, tiles can be rasterized piece by piece by the GPU almost entirely on die, as opposed to the more memory (and power) intensive process of rasterizing the entire frame at once via immediate mode rendering. The trade-off with tiling, and why it’s a bit surprising to see it here, is that the PC legacy is immediate mode rendering, and this is still how most applications expect PC GPUs to work. So to implement tile based rasterization on Maxwell means that NVIDIA has found a practical means to overcome the drawbacks of the method and the potential compatibility issues.

In any case, Real Word Tech’s article goes into greater detail about what’s going on, so I won’t spoil it further. But with this information in hand, we now have a more complete picture of how Maxwell (and Pascal) work, and consequently how NVIDIA was able to improve over Kepler by so much. Finally, at this point in time Real World Tech believes that NVIDIA is the only PC GPU manufacturer to use tile based rasterization, which also helps to explain some of NVIDIA’s current advantages over Intel’s and AMD’s GPU architectures, and gives us an idea of what we may see them do in the future.

Source: Real World Tech

Comments Locked

191 Comments

View All Comments

  • wumpus - Tuesday, August 2, 2016 - link

    Here's a hint: if something is any good you don't give it a name like "async compute". Anything asychronus is the bane of all engineers who have to work with it, and typically the symptom of a failed design. Looks like it is working out as well as "heterogeneous computing", which was a much better idea, but software guys are too wimpy to bother when Moore has been doing their job for them since 1965 (might be a good time to start learning OpenGL, guys).
  • extide - Monday, August 1, 2016 - link

    Wow this is a cool little piece, but honestly, a fresh new Dadid Kanter article, OMG!! YAY!
  • extide - Monday, August 1, 2016 - link

    David Kanter, of course
  • Dr. Swag - Monday, August 1, 2016 - link

    Any word on when the rx 480 and GTX 1060 review will be out? Pretty stoked especially for the rx 480 review, since I can't seem to find any deep dive on the Polaris architecture anywhere! Save us Ryan!
  • RT81 - Monday, August 1, 2016 - link

    Could that "practical means to overcome the drawbacks" be related to drivers? If PC software is expecting to see one type of rendering, but Maxwell does it differently and it works *well*, could it be drivers? I'm just wondering if this type of thing is why Nvidia spends so much time with developers optimizing drivers for games. They're hardware does differently and they want to ensure their drivers enable the software to take full advantage of it.
  • RT81 - Monday, August 1, 2016 - link

    Should be "Their hardware does rendering differently..."
  • kn00tcn - Monday, August 1, 2016 - link

    but that time has also been spent for years on the older generations
  • telemarker - Monday, August 1, 2016 - link

    FYI, watch this hotchips presentation for how the tiling is done on MALI
    https://youtu.be/HAlbAj-iVbE?t=1h5m
  • Tigran - Monday, August 1, 2016 - link

    Is it correct to say that Maxwell’s tile based rasterization is a hardware version of Giga3D?
  • Morawka - Monday, August 1, 2016 - link

    Maybe Nvidia stayed quite about this because Imagination holds the patent!

    i see a lawsuit in a few years.

    https://www.google.com/patents/US8310487

Log in

Don't have an account? Sign up now