AMD FidelityFX Super Resolution (FSR) and NVIDIA DLSS are two similar technologies that allow you to play at high resolution without weighing too much on the GPU. The trick is to render the image at a lower resolution and then proceed with the upscaling, but in two very different ways
NVIDIA has been working for some time on its DLSS which has now reached version 2.0 with huge leaps forward in quality and performance with the only problem that it requires dedicated hardware in order to function properly. A hardware that we find only on the latest generation RTX GPUs (or rather that we do not find since buying them is really complicated and expensive). AMD, on the other hand, has recently presented its FidelityFX Super Resolution (FSR) with a very different philosophy: the newborn upscaling technology. was received with extreme fervor by fans because it can theoretically be applied to any GPU, even those with a few more years such as the RX 4xx series or even the NVIDIA GTX 9xx GPUs. An extremely interesting opportunity because it allows you to play at high resolutions even with slightly older GPUs, without sacrificing performance. But it’s not all pure gold. In fact, AMD’s technology looks different than NVIDIA’s. In this article we will try to shed some light on understand how and why NVIDIA DLSS is different from AMD FidelityFX Super Resolution (FSR).
NVIDIA DLSS: la magia del Deep Learning
As tech enthusiasts we probably hear about machine learning and deep learning at least three times a week. In fact it is a very hot topic that for about ten years it has captured the interest of researchers in the world of information technology and AI and which today is overwhelming a bit in all scientific and industrial sectors. A field where, however, the success of deep learning has been revolutionary is that of Computer Vision, a branch of computer science that deals with image processing in order to obtain information from them.
In this sector, many companies have invested, for example, to improve the performance of smartphone cameras. And even NVIDIA has sniffed out the deal and has taken steps to use deep learning to improve the gaming experience. Deep neural networks are incredibly powerful tools that they are capable of derive spatial and temporal correlations within the data. This is really important when we talk about video because what is a video (or a video game) if not a series of images (spatial information) related to each other over time? Obviously it is not possible to know what the solution adopted by NVIDIA is, but we can assume that it makes extensive use of convolutional and recurrent neural networks to analyze both spatial and temporal dimensions.
How does it work in practice? Deep learning is based on a training phase where a very high number of examples of the problem that you want to solve with the corresponding solutions are provided. In this way the neural network learns to predict solutions to the problem. Basically it is like when you study the way of attacking a boss in a video game: after several times you try and get defeated, you develop a strategy to take him down. Having many examples is essential to be able to obtain good solutions. But we are very lucky because video games are completely digital objects and that was it the great fortune of NVIDIA DLSS. The supercomputers of the Santa Clara giant enjoyed running games to produce the data needed to train the neural network. Once the model was able to produce satisfying images, it was sent to consumer GPUs through firmware updates and voila – effortless high-resolution gaming.
Initially with NVIDIA DLSS 1.0 a different model was being trained on a single video game and therefore each video game needed to use a specific model. The new versions of NVIDIA DLSS instead I am able to generalize better, although not all games are properly supported.
AMD FidelityFX Super Resolution (FSR): A More Traditional Approach?
Let’s move on to AMD’s proposal instead. Although we do not know what strategy is adopted to implement AMD FidelityFX Super Resolution (FSR) it is reasonable to assume that deep learning is not being used as is the case with NVIDIA’s DLSS. Why? First of all, a good marketing manager would have heralded it from the rooftops since now the words “machine learning” and “artificial intelligence” seem to turn everything into gold. Instead silence. Moreover, in the description on the official site dedicated to AMD FidelityFX Super Resolution (FSR) you can read:
A state-of-the-art spatial upscaling algorithm delivers near-native resolution quality gaming experiences with super high-quality edges and detail.
“Spatial Upscaling ”is a very bland term which does not give many explanations, however we can immediately say one thing: time correlations will not be exploited. This is already an alarm bell because, as already discussed, time is a fundamental dimension, especially in video games where there are often fast-moving objects. Spatial upscaling it can be based on classical algorithms where essentially the programmer decides a strategy to perform the upscaling. A very simple example is that ofbilinear interpolation: in practice, to fill the “holes” after the upscaling, the empty pixels are colored by averaging the adjacent ones, in order to obtain a gradual transition. This is certainly much faster than a deep neural network, but it also leads to a loss of image detail. Of course, we expect AMD FidelityFX Super Resolution (FSR) to use the most advanced techniques of bilinear interpolation. Being a more open technology than NVIDIA DLSS we can expect that in the future we will be given the opportunity to learn more from a technical point of view.
The comparison: better AMD FidelityFX Super Resolution (FSR) or NVIDIA DLSS?
So what are the main differences between an AMD FidelityFX Super Resolution (FSR) which, according to the clues, will rely on more traditional techniques and NVIDIA DLSS which instead uses deep learning? What’s the best?
Let’s go in order. In terms of absolute quality, deep learning should easily win. If we look at the ranking “Image Super-Resolution on Set14 – 4x upscaling”Of paperswithcode we realize how the best performing technologies in terms of image upscaling quality are all based on deep learning. In fact, neural networks are able to recognize patterns and objects within the image and therefore at a higher level than that of individual pixels. Furthermore deep learning has enormous potential: As new data is made available for training and neural network architectures are refined, the results improve visibly. Recently in a scientific publication some researchers have managed to improve the graphics of GTA V making it very similar to the real world.
However, there is a limitation: deep learning models they don’t generalize well with all gamesIn fact, it took years to get support for just over a hundred games out of thousands of titles available. Furthermore they are incredibly complex and heavy. In fact, NVIDIA DLSS requires dedicated Tensor Core hardware to work without impacting the performance of the entire system.
A more traditional approach like the one that seems to follow AMD FidelityFX Super Resolution (FSR) does not suffer from these limitations. A Traditional upscaling can be applied to any game (although it is unclear if it will be possible with FSR) and it is much more efficient, so much so that AMD proposes it for graphics cards that are even a little dated. Unfortunately, the quality of the upscaling is not very good. As colleagues at wccftech noted, the same demo that AMD showed showed some limitation in image quality including loss of detail and a blur effect. AMD offers several presets, based on different algorithms, to decide whether you want to favor image quality or performance, but essentially the limits in terms of quality remain.
So, concluding: what is best? The NVIDIA’s DLSS could be compared to a Ferrari: great performance, but at a higher cost (for both gamers and developers); AMD FidelityFX Super Resolution (FSR) instead is more like a small car: it does its job with dignity and is easily accessible to all. Among other things, for your knowledge, Microsoft is also working in this direction. In the DirectX 12 libraries there is a package called DirectML that allows you to accelerate machine learning loads on different platforms starting from AMD GCN 1st Gen and NVIDIA Kepler. Anyhow no approach currently can achieve image quality comparable to direct rendering. We hope with this article to have clarified your doubts a bit, keep following us in our hardware section!