Hardware

DLSS 3: how it works, how it performs, and when you should use it


Nvidia DLSS 3 is arguably the single most interesting thing to emerge from the RTX 4090 and RTX 4080 GPU launches. Even with, I’ll concede, some limits: whereas previous DLSS (Deep Learning Super Sampling) versions have been available to any GeForce RTX graphics card, DLSS 3 is currently only usable on these RTX 40 series models. Or will be, once the RTX 4080 goes on sale on November 16th. Yet having tested it out on the RTX 4090, I’m convinced it could be as big a deal as the cards themselves, especially if you have a high-refresh-rate gaming monitor.

Marvel’s Spider-Man Remastered is one of the first games to get DLSS 3 support.


Mainly, that’s down to some potentially gigantic improvements to visual performance afforded by DLSS 3’s key tool: AI-based frame generation. Since the RTX 4080 is about to drop, and the number of games with DLSS 3 support is ticking up, let’s peer a little closer at how it all works, how many frames per second it can serve up, and whether there are any catches to DLSS 3 – besides it being exclusive to some immensely ‘spenny graphics cards.

DLSS 3: what it is, and how it works


At its core, DLSS 3 is similar to DLSS 2 – the catch-all term Nvidia now use for DLSS versions 2.0 through 2.4. It’s an upscaler, so instead of rendering a game at your monitor’s native resolution, it renders each frame at a lower res, then reconstructs them to appear as though they’re of native-level sharpness. The result: games run faster, thanks to the easier workload of the lower render resolution, without an adverse affect on the overall clarity of the image. AMD FSR and Intel XeSS are similar, but DLSS has always been the king of the upscalers, as it uses more sophisticated machine learning/AI techniques to piece together more accurate frames. It also includes its own anti-aliasing, which overrides and tends to look sharper than the TAA or MSAA techniques built into the games themselves.


In many cases, using DLSS 2 on its highest ‘Quality’ setting can actually make games look even better than they do with native resolution rendering, while still improving FPS performance. DLSS 3 doesn’t change this: it still includes its own intelligent AA and still looks as good, if not better than native res on its higher settings.


Microsoft Flight Simulator's first free city update features five photorealistic German cities.


Where the game changes is in DLSS 3’s frame generation feature. When switched on, as it is optional, the GPU will use its AI smarts to create entire new frames, and quietly slot them in-between the rendered ones. Not unlike the upscaling process, it uses data from surrounding frames to predict what the next generated frame should look like.


This instantly gives performance yet another boost, with barely any additional strain on your PC, as generating these frames is far less resource-intensive than rendering them. And while we’ll get into how these ‘fake’ frames look later on, the results aren’t offputting like the gross motion smoothing effect on certain living room TVs. Both use interpolated frames, but DLSS 3 is more sophisticated in how it gathers data from the rendering pipeline to draw them, so it does just look like the game is running at a higher framerate as opposed to being artificially smoothed over. I guess it helps that our brains just aren’t conditioned to expect every game to run at 24fps, like TV shows and films usually do.


As is more typical of game upscalers, DLSS 3 still requires games to implement support for it, and in these early days the library of compatible games is more of a single shelf: just nine games are playable with DLSS 3 at the time of writing. Many more are confirmed to be on the way, though, and while you’ll have the option of turning frame generation on or off, it will always be included alongside DLSS 3’s upscaling component.

DLSS 3: upscaling and generated frame quality


I tested DLSS 3, using the RTX 4090, in three games: Cyberpunk 2077, Microsoft Flight Simulator, and F1 22. As expected from the successor to DLSS 2.4, DLSS 3’s upscaling looks excellent: on its Quality and even Balanced modes, upscaled 4K looks just as good as native 3840×2160 across all three games. On its second-fastest Performance mode, I noticed a drop in water quality in Microsoft Flight Simulator, but in terms of sharpness you could have told me it was native 4K and I’d have believed you. There’s little to no fudging of fine details, no strange outlines around objects, and the AI-based anti-aliasing remains superior to just about every built-in AA option you’ll find.


If you want to use DLSS 3 just for upscaling, with frame generation turned off, go for it – you’ll get great results in the games that support it. But that’s kind of to be expected, right? DLSS 2.4 was and still is brilliant too. It’s the added, generated frames that make the difference for DLSS 3, so how do they look?


Not half bad, actually. For the most part, they just look 99% like a traditionally rendered frame. Here’s a randomly chosen, fully AI-generated frame in F1 22 (upscaled to 4K), followed by a successive rendered frame:


An AI-generated DLSS 3 frame in F1 2022, showing a driver's-eye view of a race in Monaco.
3840×2160, Ultra High quality, DLSS 3 Quality (generated frame)

A traditionally rendered DLSS 3 frame in F1 2022, showing a driver's-eye view of a race in Monaco.
3840×2160, Ultra High quality, DLSS 3 Quality (rendered frame)


Textures look identical, details look identical, AA looks identical… the only noticeable difference is a slightly messed up piece of UI, the lap clock up in the top-right. And it’s such a small detail, appearing for such a short amount of time – less than a hundredth of a second – that it’s impossible to spot when the game is in motion. Here are the two frames zoomed in, showing how well the generated frames can match the detailing of rendered frames:


A comparison image showing generated vs. traditionally rendered frames in F1 22.
Left: generated frame. Right: rendered frame


This was typical of both Microsoft Flight Simulator and Cyberpunk 2077, as well. Here’s a generated frame of Flight Sim…


An AI-rendered DLSS 3 frame in Microsoft Flight Simulator, showing a small plane flying over London.
3840×2160, Ultra quality, DLSS 3 Quality (generated frame)


…and a rendered frame:


A traditionally rendered DLSS 3 frame in Microsoft Flight Simulator, showing a small plane flying over London.
3840×2160, Ultra quality, DLSS 3 Quality (rendered frame)


Again, no differences or downgrades worth mentioning except for a dash of scrambled UI that’s invisible in motion. Missed it the first time? Here it is zoomed in:


A comparison image showing DLSS 3 generated vs real rendered frames in Microsoft Flight Simulator.
Left: generated frame. Right: rendered frame


And lastly, the same deal in Cyberpunk 2077. The generated frame has a slightly messy bit of UI, this time on the mission log…


A screenshot of Cyberpunk 2077, showing an AI-generated frame in DLSS 3's Quality mode.
3840×2160, High quality, Psycho RT, DLSS 3 Quality (generated frame)


…but is otherwise indistinguishable from a subsequent rendered frame:


A screenshot of Cyberpunk 2077, showing a traditionally rendered frame in DLSS 3's Quality mode.
3840×2160, High quality, Psycho RT, DLSS 3 Quality (rendered frame)


Zooming in closely, there’s also a teensy bit of artifacting around the road barrier in the generated frame, but what is noticeable in a blown-up screenshot isn’t always visible when playing the game normally. And I honestly didn’t notice this, nor the UI issue, when playing.


A Cyberpunk 2077 comparison image showing how traditionally rendered frames compare to AI generated frames in DLSS 3.
Left: generated frame. Right: rendered frame


Obviously the ideal would be to have generated frames be absolutely pixel perfect, but they really don’t need to be in practice. Instead, they come close enough that these small hiccups become impossible to spot with the naked eye. Unless you were to record them, capture individual frames as PNGs, then upload them to the PC gaming site you work for.


There is one situation in which the AI generation gets confused, which is when sudden changes in scene or perspective make it harder for DLSS 3 to produce an image consistent with previous frames. In both F1 and Cyberpunk 2077, for example, you can quickly switch the driving camera position; if it’s DLSS 3’s turn to generate a frame right as the switch occurs, it will be drawing much OF the visual data it requires from a perspective that’s no longer in use. Hence, frames like this:


An AI-generated frame in F1 2022, showing visual errors due to a lack of applicable data from similar, recent frames.
3840×2160, Ultra High quality, DLSS 3 Quality (generated frame)


Or this:


An AI-generated frame of DLSS 3 running over Cyberpunk 2077. The interior of a car is blurred due to the rapid frame-to-frame change of a camera transition.
3840×2160, High quality, Psycho RT, DLSS 3 Quality (generated frame)


It’s particularly clear in the F1 22 frame that DLSS 3, bless its cotton socks, is trying to estimate an image using two completely different perspectives for source data. But again, in motion these errors are more or less invisible, because they’re onscreen for such little time before being replaced by a totally accurate, traditionally rendered frame. With, of course, subsequent generated frames correcting themselves thanks to having more image data from after the camera angle shift.


I went actively searching for these kinds of errors in both games, rapidly swapping perspectives to try and catch a dodgy frame, but even while staring holes into my monitor I couldn’t pick them out. They’re gone before you can notice them, or at the very least, they blend well enough into the surrounding frames as to become imperceptible.


My only concern is that if there are ever any mid-range/lower-end RTX graphics cards with DLSS 3 support, such blemishes will become more visible, as the lower framerates will leave each frame – including the iffy ones – onscreen for longer. Still, on the RTX 4090 and almost definitely the RTX 4080, it’s fine. Frame generation errors might make for some hate-click Twitter engagements if you screenshot them, but they’re not actually an issue in practice. By and large, then, DLSS 3 looks great.

DLSS 3: performance


DLSS 3 has itself to thank for smoothing over any one-frame AI mistakes, as the bonus generated frames represent such a enormous burst of overall FPS speed that the RTX 4090 could double or even triple its performance averages at 4K.


As the graph below shows, even the RTX 4090 can’t get a solid 60fps in some games when both a native 4K res and top-quality graphics settings are in play. But with the combined upscaling and frame generation of DLSS 3, it’s up to around 100fps in both Cyberpunk 2077 and Microsoft Flight Simulator, with nearly a 100% improvement in F1 2022 as well. And that’s all on the highest Quality setting for DLSS 3; the faster, only slightly less sharp Performance mode could go even further, more than tripling Cyberpunk 2077’s performance compared to native.


A bar chart showing average FPS performance for various games running at 4K, on the RTX 4090 and either at native resolution or with DLSS 3 and its frame generation feature.


Not sure what happened with Performance mode in Flight Sim, mind – that might be an issue with the early build I was testing with. Otherwise, DLSS 3 is clearly capable of FPS gains that would be impossible through upscaling alone, short of applying a quality-wrecking drop in render resolution. This lets you keep all the crispness of native 4K without the performance hit.


Outside of the fact that it’s limited to a small number of fiercely costly GPUs, that might make DLSS 3 seem like the inarguable gold standard of PC performance sorcery; the default setting that any RTX 40something owners should enable immediately, in all currently supporting games and any that might arrive in the future. Alas, it’s not quite that simple.


The reasons why have nothing to do with easily-missed frame generation errors like the ones above. Instead, it’s mainly a matter of that nebulously definable (but very real) concept in games: feel.


Raising performance, be it through buying hardware upgrades, lowering graphics settings, or employing tricks like upscaling, isn’t usually just to make games look nicer – a lot of games feel better when running at a higher FPS. Aiming becomes sharper. Steering becomes more responsive. MOBA teamfights become less of an unreadable clusterfudge. DLSS 3 can serve this noble goal through its upscaling component, but those AI-generated frames? They’re purely a visual aid, and you’re not going to feel those at all.


Here’s an example from my testing. Cyberpunk 2077, running on max settings with Psycho ray tracing switched on, could run at about 100fps with Ultra-quality DLSS 3 and frame generation. Great! Looks lovely. But I definitely got the sense that weapon aiming and driving camera movements weren’t as sharp and immediate as I’d expect from 100fps – it all felt fine, and perfectly playable, but maybe more along the lines of a 60fps game than a 100fps one. Sure enough, I switched off frame generation (keeping Quality upscaling on), measured performance again, and what was it averaging? About 60fps. As far as the rest of my PC knew, that was what Cyberpunk 2077 was running at, so that’s the level of input responsiveness I got. And why would it know better? Those frames are fakes, separate from the assembly line of actual rendered frames.


An F1 22 screenshot showing the race leader narrowly leading the pack at Silverstone.


Another potential issue is input lag. DLSS 2 introduces a teensy bit of this when it’s turned on, but DLSS 3 with frame generation adds more. Smartly, Nvidia have decreed that any game with DLSS 3 must also support Nvidia Reflex, their GPU-based, latency-cutting tech; with this running in tandem, lag is ultimately kept low enough that I could happily play Cyberpunk 2077 or Flight Sim without adverse sluggishness. Still, neither of those are particularly twitchy, and knowingly turning up latency is a big ask for more competitive games.


Then again, this might be a worry that never comes to pass. The kinds of games where cutting a sliver of latency might actually make a tangible difference – mainly sweaty shooters like CS:GO or Valorant – are not currently represented among the confirmed DLSS 3 roster, and even if they were, they’re using built to run at fast framerates on older and low-end hardware. They’re not, in other words, likely to need DLSS in the first place – not for its upscaling and certainly not for its frame generation.

DLSS 3: should you use it?


I can understand approaching DLSS 3 with more caution than the average upscaler; it’s certainly wrapped in a thicker layer of caveats than DLSS 2, which is often a no-brainer for any PC with a compatible card.


Johnny Silverhand, a character in Cyberpunk 2077, poses with his back to the camera, facing the skyline of Night City.


Besides DLSS 3’s own narrow hardware requirements, there’s also the matter of needing a sufficiently high-specced monitor to take full advantage of it. A 4K gaming monitor with an above-100Hz refresh rate is best, but those are mighty expensive, and although 1440p monitors will benefit, that resolution doesn’t put nearly the same strain on games as 4K. Thus, frame generation becomes less useful.


Despite all that, I’m staying pretty positive about DLSS 3, and do think that you should give it a whirl if you find yourself in possession of a compatible GPU and a suitable display.

The performance gains it affords at tough resolutions are almost unbelievable – and yes, they might be comprised of fake frames, but remember that there’s still upscaling going on in the background. That will improve the feel of your games, at least compared to trying to run them at native res. And even if they don’t help responsiveness, is there really a compelling reason to give up the extra visual enhancement of these frames? I’d say nah, not when the latency impact remains minor with Reflex, and when those occasional AI generation errors are functionally invisible.

For best results, try to secure a good level of performance – say, 60fps – with upscaling on but frame generation turned off. This will mean that if you choose to add those additional frames, the visual benefit they provide will sit on top of a solid baseline for control smoothness.




Source link

Related Articles

Leave a Reply

Back to top button