The RTX Recap: A Brief Overview of the Turing RTX Platform

Overall, NVIDIA’s grand vision for real-time, hybridized raytracing graphics means that they needed to make significant architectural investments into future GPUs. The very nature of the operations required for ray tracing means that they don’t map to traditional SIMT execution especially well, and while this doesn’t preclude GPU raytracing via traditional GPU compute, it does end up doing so relatively inefficiently. Which means that of the many architectural changes in Turing, a lot of them have gone into solving the raytracing problem – some of which exclusively so.

To that end, on the ray tracing front Turing introduces two new kinds of hardware units that were not present on its Pascal predecessor: RT cores and Tensor cores. The former is pretty much exactly what the name says on the tin, with RT cores accelerating the process of tracing rays, and all the new algorithms involved in that. Meanwhile the tensor cores are technically not related to the raytracing process itself, however they play a key part in making raytracing rendering viable, along with powering some other features being rolled out with the GeForce RTX series.

Starting with the RT cores, these are perhaps NVIDIA’s biggest innovation – efficient raytracing is a legitimately hard problem – however for that reason they’re also the piece of the puzzle that NVIDIA likes talking about the least. The company isn’t being entirely mum, thankfully. But we really only have a high level overview of what they do, with the secret sauce being very much secret. How NVIDIA ever solved the coherence problems that dog normal raytracing methods, they aren’t saying.

At a high level then, the RT cores can essentially be considered a fixed-function block that is designed specifically to accelerate Bounding Volume Hierarchy (BVH) searches. BVH is a tree-like structure used to store polygon information for raytracing, and it’s used here because it’s an innately efficient means of testing ray intersection. Specifically, by continuously subdividing a scene through ever-smaller bounding boxes, it becomes possible to identify the polygon(s) a ray intersects with in only a fraction of the time it would take to otherwise test all polygons.

NVIDIA’s RT cores then implement a hyper-optimized version of this process. What precisely that entails is NVIDIA’s secret sauce – in particular the how NVIDIA came to determine the best BVH variation for hardware acceleration – but in the end the RT cores are designed very specifically to accelerate this process. The end product is a collection of two distinct hardware blocks that constantly iterate through bounding box or polygon checks respectively to test intersection, to the tune of billions of rays per second and many times that number in individual tests. All told, NVIDIA claims that the fastest Turing parts, based on the TU102 GPU, can handle upwards of 10 billion ray intersections per second (10 GigaRays/second), ten-times what Pascal can do if it follows the same process using its shaders.

NVIDIA has not disclosed the size of an individual RT core, but they’re thought to be rather large. Turing implements just one RT core per SM, which means that even the massive TU102 GPU in the RTX 2080 Ti only has 72 of the units. Furthermore because the RT cores are part of the SM, they’re tightly couple to the SMs in terms of both performance and core counts. As NVIDIA scales down Turing for smaller GPUs by using a smaller number of SMs, the number of RT cores and resulting raytracing performance scale down with it as well. So NVIDIA always maintains the same ratio of SM resources (though chip designs can very elsewhere).

Along with developing a means to more efficiently test ray intersections, the other part of the formula for raytracing success in NVIDIA’s book is to eliminate as much of that work as possible. NVIDIA’s RT cores are comparatively fast, but even so, ray interaction testing is still moderately expensive. As a result, NVIDIA has turned to their tensor cores to carry them the rest of the way, allowing a moderate number of rays to still be sufficient for high-quality images.

In a nutshell, raytracing normally requires casting many rays from each and every pixel in a screen. This is necessary because it takes a large number of rays per pixel to generate the “clean” look of a fully rendered image. Conversely if you test too few rays, you end up with a “noisy” image where there’s significant discontinuity between pixels because there haven’t been enough rays casted to resolve the finer details. But since NVIDIA can’t actually test that many rays in real time, they’re doing the next-best thing and faking it, using neural networks to clean up an image and make it look more detailed than it actually is (or at least, started out at).

To do this, NVIDIA is tapping their tensor cores. These cores were first introduced in NVIDIA’s server-only Volta architecture, and can be thought of as a CUDA core on steroids. Fundamentally they’re just a much larger collection of ALUs inside a single core, with much of their flexibility stripped away. So instead of getting the highly flexible CUDA core, you end up with a massive matrix multiplication machine that is incredibly optimized for processing thousands of values at once (in what’s called a tensor operation). Turing’s tensor cores, in turn, double down on what Volta started by supporting newer, lower precision methods than the original that in certain cases can deliver even better performance while still offering sufficient accuracy.

As for how this applies to ray tracing, the strength of tensor cores is that tensor operations map extremely well to neural network inferencing. This means that NVIDIA can use the cores to run neural networks which will perform additional rendering tasks.  in this case a neural network denoising filter is used to clean up the noisy raytraced image in a fraction of the time (and with a fraction of the resources) it would take to actually test the necessary number of rays.


No Denoising vs. Denoising in Raytracing

The denoising filter itself is essentially an image resizing filter on steroids, and can (usually) produce a similar quality image as brute force ray tracing by algorithmically guessing what details should be present among the noise. However getting it to perform well means that it needs to be trained, and thus it’s not a generic solution. Rather developers need to take part in the process, training a neural network based on high quality fully rendered images from their game.

Overall there are 8 tensor cores in every SM, so like the RT cores, they are tightly coupled with NVIDIA’s individual processor blocks. Furthermore this means tensor performance scales down with smaller GPUs (smaller SM counts) very well. So NVIDIA always has the same ratio of tensor cores to RT cores to handle what the RT cores coarsely spit out.

Deep Learning Super Sampling (DLSS)

Now with all of that said, unlike the RT cores, the tensor cores are not fixed function hardware in a traditional sense. They’re quite rigid in their abilities, but they are programmable none the less. And for their part, NVIDIA wants to see just how many different fields/tasks that they can apply their extensive neural network and AI hardware to.

Games of course don’t fall under the umbrella of traditional neural network tasks, as these networks lean towards consuming and analyzing images rather than creating them. None the less, along with denoising the output of their RT cores, NVIDIA’s other big gaming use case for their tensor cores is what they’re calling Deep Learning Super Sampling (DLSS).

DLSS follows the same principle as denoising – how can post-processing be used to clean up an image – but rather than removing noise, it’s about restoring detail. Specifically, how to approximate the image quality benefits of anti-aliasing – itself a roundabout way of rendering at a higher resolution – without the high cost of actually doing the work. When all goes right, according to NVIDIA the result is an image comparable to an anti-aliased image without the high cost.

Under the hood, the way this works is up to the developers, in part because they’re deciding how much work they want to do with regular rendering versus DLSS upscaling. In the standard mode, DLSS renders at a lower input sample count – typically 2x less but may depend on the game – and then infers a result, which at target resolution is similar quality to a Temporal Anti-Aliasing (TAA) result. A DLSS 2X mode exists, where the input is rendered at the final target resolution and then combined with a larger DLSS network. TAA is arguably not a very high bar to set – it’s also a hack of sorts that seeks to avoid doing real overdrawing in favor of post-processing – however NVIDIA is setting out to resolve some of TAA’s traditional inadequacies with DLSS, particularly blurring.

Now it should be noted that DLSS has to be trained per-game; it isn’t a one-size-fits all solution. This is done in order to apply a unique neutral network that’s appropriate for the game at-hand. In this case the neural networks are trained using 64x SSAA images, giving the networks a very high quality baseline to work against.

None the less, of NVIDIA’s two major gaming use cases for the tensor cores, DLSS is by far the more easily implemented. Developers need only to do some basic work to add NVIDIA’s NGX API calls to a game – essentially adding DLSS as a post-processing stage – and NVIDIA will do the rest as far as neural network training is concerned. So DLSS support will be coming out of the gate very quickly, while raytracing (and especially meaningful raytracing) utilization will take much longer.

In sum, then the upcoming game support aligns with the following table.

Planned NVIDIA Turing Feature Support for Games
Game Real Time Raytracing Deep Learning Supersampling (DLSS) Turing Advanced Shading
Ark: Survival Evolved   Yes  
Assetto Corsa Competizione Yes    
Atomic Heart Yes Yes  
Battlefield V Yes    
Control Yes    
Dauntless   Yes  
Darksiders III   Yes  
Deliver Us The Moon: Fortuna   Yes  
Enlisted Yes    
Fear The Wolves   Yes  
Final Fantasy XV   Yes  
Fractured Lands   Yes  
Hellblade: Senua's Sacrifice   Yes  
Hitman 2   Yes  
In Death     Yes
Islands of Nyne   Yes  
Justice Yes Yes  
JX3 Yes Yes  
KINETIK   Yes  
MechWarrior 5: Mercenaries Yes Yes  
Metro Exodus Yes    
Outpost Zero   Yes  
Overkill's The Walking Dead   Yes  
PlayerUnknown Battlegrounds   Yes  
ProjectDH Yes    
Remnant: From the Ashes   Yes  
SCUM   Yes  
Serious Sam 4: Planet Badass   Yes  
Shadow of the Tomb Raider Yes    
Stormdivers   Yes  
The Forge Arena   Yes  
We Happy Few   Yes  
Wolfenstein II     Yes
Meet The New Future of Gaming: Different Than The Old One Meet The GeForce RTX 2080 Ti & RTX 2080 Founders Editions Cards
Comments Locked

337 Comments

View All Comments

  • godrilla - Wednesday, September 19, 2018 - link

    Conclusions*
  • BurntMyBacon - Thursday, September 20, 2018 - link

    I'm going to take a (admittedly small) leap of faith and suggest that nVidia most likely is not intentionally limiting performance of Turing cards. Given the amount of hardware dedicated to tasks that don't benefit rasterization, it just doesn't seem like could have left that much performance on the table. It is much more likely that they've simply got prices set high with the intent of dropping them once high end pascal inventory clears out. Of course, after the mining push, they've seen how much the market is willing to bear. They may be trying to establish a new pricing structure that gives the extra profits to them rather than retailers.
  • mapesdhs - Wednesday, September 26, 2018 - link

    Give the amount of deceitful PR being used for this launch, I don't think your leap is justified.
  • tamalero - Wednesday, September 19, 2018 - link

    I honestly believe the endgame of Nvidia is simple. They want to increase their margin, and the only way to to that is to sell the WHOLE full chips, tensor and all to gamers. While still charging top notch to Pros.

    This would lead Nvidia to make LESS variants, saving costs in having to design multiple versions when they cant scale down or cut.
  • PopinFRESH007 - Wednesday, September 19, 2018 - link

    your argument is invalidated by the evidence of this product launch. All three cards are on different chips.
  • eva02langley - Thursday, September 20, 2018 - link

    You are kidding me? This is exactly this. They made an all around chip to tackle pros, gamers and compute. Vega has the same issue. It was aimed at being an iGPU to a dGPU. It does extremely well at low input, but as a dGPU.

    They save cost and standardize their manufacturing process. It is nothing else.
  • Bensam123 - Wednesday, September 19, 2018 - link

    Going to go a weird direction with this. I believe cards are going to start diverging from one another in terms of what gamers are looking for. Hardcore gamers that are after the professional scene and absolute performance always turn graphics down, they drive high refresh rate monitor, with low response times, and high frame rates to absolutely limit the amount of variance (spiking) that is present in their gaming experience.

    Nvidia went for absolute fidelity where they believe the best gaming experience will come from picture perfect representations of an environment, such as with ray tracing. I see ray tracing as a gamer and I go 'Welp that's something I'll turn off'. Hardware review websites are only looking at gaming from a cinematic standpoint, where best gaming will always have everything maxed out running at 8k. Cards do perform differently under different resolutions and especially with different amounts of eye candy turned on. I really think Anand should look into testing cards at 1080p on lowest settings with everything uncapped - Not as the only datapoint, but as another one. Professional gamers or anyone who takes gaming seriously will be running that route.

    Which runs into another scenario, where card makers are going to diverge. AMDs upcomming 7nm version of Vega for instance may continue down Vegas current path, which means they'll be focusing on current day performance (although they mentioned concentrating more on compute we can assume the two will intersect). That means while a 2080ti might be faster running 4k@ultra, especially with rays if that ever takes off, it may lose out completely at 1080p@low (but not eyecancer, such as turning down resolution or textures).

    For testing at absolute bleeding speeds, that 1% that is removed in 99% percentile testing really starts to matter. Mainly because the spikes, the micro-stutters, the extra long hiccups get you killed and that pisses off gamers that aim for the pinnacle. Those might seem like outliers, but if they happen frequently-infrequently enough, they are part of a distribution and shouldn't be removed. When aiming for bleeding speeds, they actually matter a lot more.

    So thus is born the esports gaming card and the cinematic gaming card. Please test both.
  • PopinFRESH007 - Wednesday, September 19, 2018 - link

    so they should include the horizontal line of a completely CPU bound test? Also I'm not understanding the statistical suggestions, they make no sense. Using the 99th percentile is very high already and the minuscule amount of outliers being dropped are often not due to the GPU. As long as they are using the same metric for all tests in the data set it is irrelevant.
  • Bensam123 - Thursday, September 20, 2018 - link

    Not all games are CPU bound, furthermore it wouldn't be completely horizontal, that would imply zero outliers, which never happens. In the case of that instead of looking at 99% frame time you would instead focus on the other part 1% frame time or all the stuttering and microstutters. You can have a confidence in tail ends of a distribution if there is enough data points.

    Also having played tons of games on low settings, you are 100% incorrect about it being a flat line. Go play something like Overwatch or Fortnite on low, you don't automagically end up at CPU cap.
  • V900 - Thursday, September 20, 2018 - link

    Despite all the (AMD) fanboy rage about higher prices, here’s what will happen:

    Early adopters and anyone who wants the fastest card on the market, will get an RTX 2080/2070, Nvidia is going to make a tidy profit, and in 6-12 months prices will have dropped and cheaper Turing cards will hit the market.

    That’s when people with a graphics card budget smaller than 600$ will get one. (AMD fanboys will keep raging though, prob about something else that’s also Nvidia related.)

    That’s how it always works out when a new generation of graphics hit the market.

    But everyone who’s salty about “only” getting a 40% faster card for a higher price won’t enjoy the rest of the decade.

    There won’t be anymore GPUs that deliver a 70-80% performance increase. Not from AMD and not from Nvidia.

    We’re hitting the limits of Moore’s law now, so from here on out, a performance increase of 30% or less on a new GPU will be the standard.

Log in

Don't have an account? Sign up now