nvidia dlss vs amd fsr

DLSS vs. FSR Comparison (All Modern GPUs & AAA Games)

It took them a while, but both teams have understood that gamers like more than just pure power that’s getting ever more expensive to render even more frames in ever more demanding game titles. Upscaling might have had a lot of rough edges in its earlier days, but Nvidia and AMD have truly done a remarkable job and I’d like to start this comparison by commending them both for a job well done. Both are winners.

DLSS is better overall, more so with Nvidia RTX cards’ native ray tracing taken into account. FSR’s software optimizations give more FPS in almost all games than DLSS, but there is often a loss of detail on the Performance preset (the best preset for pure FPS gains). For older GPUs like Nvidia 10 series and 16 series, FSR is the only option as these cards all lack Tensor cores, which is the core piece of hardware that DLSS 2.0 and 3.0 use for its motion vector calculations. FSR is also the only option for all gaming PCs with AMD GPUs, Intel GPUs, AMD APUs, and Intel integrated graphics.

If you have an Nvidia RTX GPU, it’s best to stick to DLSS. You can indeed gain anywhere from 10 to 40% more FPS with FSR over DLSS, but the quality just won’t be worth it on the higher end of the range. In any other case, FSR is your only option and an excellent one to boost FPS.

What are DLSS and FSR?

Nvidia DLSS

DLSS (Deep Learning Super Sampling) and FSR (FidelityFX Super Resolution) are both upscaling technologies used in graphics processing that use AI and machine learning algorithms to improve image quality and boost performance in video games.

  • DLSS is developed by Nvidia and works by rendering games at a lower resolution and then using an Nvidia GPU’s inbuilt Tensor cores as well as AI algorithms to upscale the image to the desired resolution, resulting in improved performance without sacrificing image quality.
  • FSR, on the other hand, is developed by AMD and is an open-source alternative to DLSS. It works similarly to DLSS but uses AMD’s own upscaling algorithm to improve performance and image quality in games. It’s completely software-based and works regardless of which GPU is being used.

What you have to know is that neither of these is a single technology or algorithm but rather a collection of technologies that work together.

Note that though DLSS is not open-source, Nvidia did make the SDK free to download without filing an application for any game developer. This can be seen as a move to get out of a pinch vs. AMD’s open-source FSR or the gaming hardware community coming together for the better.

Which one is better?

Deathloop is a greatly optimized game for FSR. Similarly, in well-optimized games, the huge gains of FPS without any apparent lack of image quality is so impressive that FSR could be called way better than DLSS if you didn’t care much about ray tracing, until you know the full story.

The full story is that it depends on your definition of “better.”

  • FSR 1.0 produces more FPS than DLSS 2.0 and FSR 2.0 in most games. Deathloop can be used to test this. DLSS 2.0, DLSS 3.0, and all FSR 2.x versions preserve more details and therefore have better quality renders at the cost of lower FPS than FSR 1.0.
  • FSR is generally better if you’re only after an increase in FPS. A game can see up to 90% improvement in FPS using FSR 2.x Performance preset vs. non-FSR whereas DLSS 2.0 can manage up to 50% from non-DLSS.
  • But if you’re after quality, DLSS is generally better (and DLSS 3.0 is the best). Combine that with the fact that Nvidia GPUs (if you’re using DLSS then it means you have an Nvidia RTX GPU) have better ray tracing performance and you get the coveted RT+DLSS combination which is the sweet spot of upscaling. Nothing else comes even close in terms of balance, though AMD is catching up.

With the launch of FSR 2.0, Vivek from Gizbot did a comparison (shown below) of FSR’s different presets, noting a difference of 32.75% from FSR off to FSR Performance in Farming Simulator 22 at very high settings (RX 6800 and Ryzen 7 5800x3D). He also noted a sharp reduction in sharpness in Balanced and Performance modes, however. In DLSS, reviewers often note small gains in FPS but much more bearable losses in quality or detail. This is a win for DLSS especially with ray tracing on.

Which one supports more games?

Note that as FSR is open-source, any game developer can leverage the toolkit so the actual number of games supporting FSR is always higher than the official support list thanks to a large number of third-party implementations.

Nvidia came before with DLSS and has a higher market share of officially supported games than AMD’s FSR. FSR has been scary fast but still has some time before it can catch up, and the move from Nvidia to make the DLSS SDK available for free hasn’t helped either.

Officially, as of March 2023:

  • There are around 190 DLSS 2.0 games as per Nvidia.
  • There are around 30 DLSS 3.0 games as per Nvidia.
  • There are around 140 officially supported FSR games as per AMD
    • 20 support FSR 2.0
    • 16 support FSR 2.1
    • Need for Speed Unbound supports FSR 2.2

PCGamingWiki has a table of all games that support FSR or DLSS. This is more accurate. Ignoring the unofficial implementations:

  • 214 games support DLSS 2.0
  • 128 games support FSR 1.0
  • 25 games support FSR 2.0
  • 41 games support FSR 2.1
  • 3 games support FSR 2.2 (F1 22 and Forza Horizon 5 also support FSR 2.2 apart from Need for Speed Unbound, which is true as AMD itself teased Forza Horizon 5 with FSR 2.2. Don’t trust AMD’s official page of supported games).
  • Apart from these, there are also unofficial implementations of FSR 1, 2.0, and 2.1.

In any case, DLSS has more supported titles. A total of 214 DLSS titles vs. 204 FSR titles (with the majority still supporting only FSR 1.0). When compared to FSR 2.x, there are only 69 games so far against Nvidia’s 214 (DLSS 2.0).

For Nvidia, you can go to this page to see which games and apps support ray tracing, DLSS 3, DLSS 2, and DLSS 1. In the Type column, set it to Game and not All to avoid the apps showing up.

Which one supports which GPUs?

DLSS support starts with the Nvidia GeForce RTX 20 series graphics cards.

Whereas DLSS is based on Tensor cores, FSR is software-based, meaning any GPU can use it.

  • DLSS 2.0 supports RTX 20 series, RTX 30 series, and RTX 40 series graphics cards.
  • DLSS 3.0 supports RTX 40 series cards only.
  • FSR 1.0 can be used on any GPU.
  • FSR 2.0, 2.1, and 2.2 can also be used on any GPU but for decent performance, a minimum of AMD RX 590 or Nvidia GTX 1070 are recommended.
  • FSR can be used on integrated graphics, in any game, Xbox Series X, PlayStation 5 (not officially), and even consoles like Steam Deck. People at Toms’ Hardware tested it on Intel’s UHD630 and Nvidia’s 900 series cards as well.

Downsides of DLSS and FSR

Ultimately, these are both upscaling technologies. Temporal artifacts can always occur and ghosting, in particular, is very prominent across titles. Nvidia and AMD have improved their offerings a lot in the last few years, but neither implementation is perfect. Generally, DLSS is better with fewer artifacts.

Some styles of art, lighting, textures, and sometimes entire games, lead to more artifacts than others. It depends largely on the implementation and game optimization, which is in the hands of the game developer and not Nvidia or AMD.

Important notes

Instead of trying to fit all this miscellaneous stuff elsewhere, I have added this separate section here. Consider this like a FAQ without questions and answers.

  • The technology doesn’t just “work” if you have a GPU that can use it. The game must also support it. Games not supporting DLSS, for example, will not be able to utilize it regardless of what GPU you’re using.
  • AMD’s FSR is open-source (any developer can download it off GitHub), meaning that it can be implemented by anyone on any card that can support it. This allows older cards like the GTX 1080 Ti to outperform many higher-end RTX 20 series cards and lower-end RTX 30 series cards (with DLSS off) using AMD’s FSR.
  • Nvidia also has the deep learning dynamic super resolution or DLDSR which is the opposite of DLSS. Using this, the GPU actually does more work by rendering the frames at a higher resolution, and then downsizing them to your lower native resolution (let’s say from 4K to 1440p). This allows the frames to pack more information and look marginally richer and sometimes (depending on what is being rendered) dramatically more detailed.
  • The first and second generations of DLSS work on all RTX cards. The third generation is exclusive to the RTX 4000 series.
  • AMD also has this thing called Radeon Super Resolution, an FSR 1.0 driver-level implementation that allows you to use it on literally any game ever. This is not to be confused with FSR in general.

Tensor cores

Nvidia’s DLSS makes use of the Tensor cores on the GPU. That’s why the 10 series or the 16 series (which lack Tensor cores) cannot use this tech. On the other hand, AMD’s FSR is software-based and has little to do with what card you’re using, allowing it to run on practically any modern graphics card including the Nvidia GTX 10 series.

Tensor cores are essentially AI accelerators also utilized by other applications and technologies. These cores are originally included on video cards to help in workstation use cases and finding a use for them in gaming applications was a genius move by Nvidia.

Upscaling

At its core, such technology allows the render pipeline (the entire workflow of generating a frame during the gameplay) to render frames at a lower resolution. To the uninitiated, lowering a game’s resolution reduces the workload on the GPU, thus allowing it to render more frames, thereby increasing the framerate or FPS; or allowing it to focus elsewhere, such as increasing the graphics quality from high to ultra.

Now, you might ask, isn’t there a downside to a lower-resolution image? Indeed, such an image is choppier and more pixelated. It loses detail. But what if this image is now upscaled using other parts of the GPU or software optimizations that are not as much work as the GPU having to render higher resolution frames?

That’s precisely what upscaling is. Render at a lower resolution and then use other bits and pieces to dramatically upscale the image so that it appears fitting for your higher native display resolution. This was pretty wonky and unusable just a few years ago but both Nvidia and AMD have done remarkable work in their own ways to improve the output of real-time upscaling.

I’d be remiss to ignore the fact that newer versions of these technologies are not purely upscaling. DLSS 1.0 was a pure upscaling technique. Upscaling essentially means creating information or pixels from a lower-resolution source image. DLSS 2.0 for example recovers data from the previously rendered frame without creating anything new. This is generally more accurate and not pure upscaling.

Background & technical information of DLSS and FSR

Both technologies had humble beginnings. If you’re interested in the timeline of how they both evolved, I have summarized all the important milestones below.

Nvidia DLSS

DLSS 3.0 supported games (mostly upcoming)

Nvidia launched DLSS or DLSS 1.0 with the RTX 20 series cards in September 2018. It allowed the 20 series to hold more value than it had otherwise. The tech only worked in Battlefield V and Metro Exodus. The algorithm had to be trained specifically on a game for it to work.

The result wasn’t pretty initially. The images were blurry and had a lot of artifacts, especially in Battlefield V, and it was more or less considered a blunder on Nvidia’s part. Many, including me, felt that it was poorer than just turning down the resolution. The choppy frames actually provided a more seamless experience. In less than a year, however, Nvidia came on top of these issues.

A year later, Control launched with both, ray tracing and an improved version of DLSS 1.0 that didn’t use Tensor cores. It was a completely software-based implementation. This was essentially a sharpening filter using FreeStyle tools. This experiment was short-lived and Nvidia was working on something much bigger behind the scenes.

Coming back to Tensor cores, Nvidia launched DLSS 2.0 in April 2020. DLSS 2.0 was a wholly different beast than DLSS 1.0 and did not need to be trained on a game specifically to work for it. It was “opened” to work across all resolutions and quality settings as long as you had an RTX GPU. DLSS 2.0 is not backward compatible with DLSS 1.0 titles.

Only a handful of games shipped with DLSS 2.0 including Wolfenstein: Youngblood but its adoption was fast and in mere months, many more titles were supporting DLSS 2.0. It was even incorporated in the Unreal Engine and Unity, both game engines (which are used to create games) natively.

This time, Nvidia used a supercomputer to train the algorithm on 16K resolution images. This training was purposed to help the algorithm learn the future of a game. The algorithm takes a rendered frame and tries to “imagine” what the next frame could look like, and shows that. Admittedly, the output of such a generative AI can only be as good as the volume of training. And it was truly trained on heaps of game image data. In dumber words, the algorithm sees the history of an object and traces a motion path to its future trajectory.

September 2022 marked the reveal of DLSS 3.0, the best yet. It was a major improvement over DLSS 2.0 and used an optical flow frame-generation algorithm that practically doubles your framerate by inserting a new frame magically for each rendered frame. In their marketing copy, Nvidia mentioned how DLSS 3 “multiplies performance by up to 4X over brute-force rendering.”

Optical flow basically means the pattern of motion caused by relative observation. Originally a psychological construct, it was used to define how animals move through the world by discerning possibilities for actions and perceiving the world as an observer in the world. It has since become a more tech-oriented construct.

The Nvidia 4000 series has these very powerful Optical Flow Accelerators. The previous OFAs are nothing in comparison. These OFAs are responsible for tracking pixel movements of all things such as particles, shadows, reflections, and lights, and then do motion vector calculations. They take two frames as input. Upon analyzing the pixels from Frame A to Frame B, they “know” what the next frame should look like.

OFAs are just one part of what makes DLSS 3.0 so good. For example, the general motion vector calculations have improved dramatically and the algorithm can now use that, along with other data such as the previous frames, to create intermediate frames. DLSS 3 actually reconstructs over 87% in two consecutive frames, with the traditional render pipeline only being used to render 25% of the first frame (and the second frame being totally put together by the DLSS 3 AI).

AMD FSR

FSR 3.0 is slated to launch very soon

AMD released FidelityFX Super Resolution in June 2021. Since its beginning, FSR has been all about software-based optimizations to upscale rendered frames. It was launched as a part of AMD’s GPUOpen project which is a repository of open-source toolkits for game developers.

In the beginning, AMD FSR did not collect data from previous frames to calculate motion vectors. It was not time-dependent or temporal (no regard for previous or next frames) but a spatial form of image upscaling. Made up of two main parts, namely, Edge-adaptive Spatial Upsampling and then a Robus Contrast-adaptive Sharpening, FSR 1.0 was essentially a glorified sharpening and filtering engine that wasn’t as good as DLSS 2.0. The upside? It could (and newer FSR versions still can) run on any GPU including older AMD and Nvidia cards such as RX 580 or GTX 1080.

Starting FSR 2.0 which launched in May 2022, the technology now takes data from multiple frames (thus being transformed into a temporal upscaling technique). This makes the technique more demanding and slower than FSR 1.0, but also much better. Though you can use it on any GPU, AMD officially recommended a minimum of Radeon RX 590 or a GeForce GTX 1070 at 1080p for FSR 2.0, bringing to light the fact that more performance is needed to get from FSR 1.0 to FSR 2.0.

Much like DLSS 2.0, FSR 2.0 also uses data such as depth, motion vectors, and frame color to recreate upscaled images. Ghosting and shimmering artifacts were pretty common in racing games at this point.

AMD launched FSR 2.1 on September 14, 2022. It removed some instances of ghosting and shimmering and other issues faced in FSR 2.0.

FSR 2.2 was shown in November 2022 with the RX 7900 and became available for developers in February 2023. It was a further improvement that fixed many problems apart from enhancing what works. The main focus of this version was improving framerates further on games that had high-speed objects (read racing games, like Forza Horizon 5 and Need for Speed Unbound).

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.