In recent years, the trend for real-time graphics in PC video games has moved in several different directions. To begin with, we have 4K that require bandwidths and computing power 4 times higher than 1080p and 2.5 times higher than 1440p. Then we have the recent appearance of Ray Tracing that requires great computing power in order to bring the lighting of games to the maximum expression. And to finish we have the case of high frame rates for eSports.
All this has led to algorithms that allow increasing the output resolution of the games with respect to the native one, the latter being understood as the resolution at which a GPU renders and the output resolution that is displayed on the screen in terms of its pixel count . The latest addition is the AMD Fidelity FX Super Resolution, which joins NVIDIA’s Deep Learning Supersampling and Checkerboard Rendering as an advanced algorithm than interpolation to achieve a better resolution image from a lower resolution image.
FidelityFX Super Resolution versus Deep Learning supersampling
The AMD Fidelity FX Super Resolution is an algorithm that is responsible for taking the image buffer at a specific resolution and creating from it an image equal to a higher resolution and therefore with a greater number of pixels. Being the challenge for this type of algorithms to know the color value of the new pixels.
The FidelityFX Super Resolution in its operation is reminiscent of the Deep Learning Supersampling 1.9 that NVIDIA launched for the Remedy Control video game, in the sense that it is not intended to work with the Tensor Core that are exclusive to NVIDIA, but rather works with conventional SIMD units and it specifically exploits the SIMD over register capability that some GPUs have. This ability allows them to double the speed of calculation in exchange for reducing the precision by the same degree.
Contrary to NVIDIA’s solution, it is not a proprietary solution that is not documented. AMD is releasing the code under the open license from MIT and it will be usable on both AMD and Intel and NVIDIA GPUs. Therefore, since it is an open source license, developers can make changes to the code to optimize it to the particularities of each architecture.
The latter is a double-edged sword, because on the one hand AMD wipes its hands like Pontius Pilate on the support of FidelityFX Super Resolution in games and on the other it allows greater optimization than that allowed by NVIDIA with Deep Learning Supersampling, but depending on the involvement of the developer of each game. Instead NVIDIA has a whole department in charge of working for the different developers
Is AMD FidelityFX Super Resolution an AI algorithm like Deep Learning Supersampling?
Deep Learning Supersampling, as its name says, is an algorithm or series of algorithms, which is based on deep learning, which involves a training period to generate what we call an inference algorithm. In the case of AMD, although we know that a patent assigned to them where an algorithm for increasing resolution based on Deep Learning is not the case of AMD FidelityFX Super Resolution, since it is not a Deep Learning algorithm.
This is because AMD GPUs do not have specialized units for this to accelerate Deep Learning algorithms. Which are generally calculation units optimized for matrix operations, which are common in most Deep Learning algorithms.
It should be clarified that artificial intelligence algorithms can be executed in any type of processing unit, be it scalar, SIMD or matrix. The normal thing is to think that a future version of FidelityFX Super Resolution, when AMD includes units designed for the calculation of matrices, will be optimized for this type of units, but for the moment we are faced with an algorithm that does not use them. .
Since AMD FidelityFX Super Resolution is not an artificial intelligence algorithm, it does not need prior training, which means immediate compatibility in all games, but unfortunately this resolution increase algorithm not only differs from NVIDIA Deep Learning Supersampling by not being a deep learning algorithm, but also lacking temporality, which in itself is a problem with regard to the algorithm’s image quality.
How does AMD FidelityFX Super Resolution work?
As we discussed in the previous section, to rebuild a higher resolution image, the AMD FSR takes a single frame to function, from which a higher resolution version will be created. So it is a resolution upload algorithm that we call spatial. In the specific case of the AMD FSR, it detects the different edges of the elements on the screen and from this information reconstructs a higher resolution version of the image, thereby applying sharpening algorithms already available in the AMD Fidelity FX to improve quality. of the final image.
However, as we have already mentioned, it lacks the temporal information for the reconstruction of the image. This is being very controversial, since the image quality obtained is proving inferior to antialiasing algorithms that make use of data from previous frames to better triangulate the information of the unknown pixels in the image. Which has led to developers like Metro Exodus dispensing with the FSR for their Enhaced Edition, but we cannot ignore the pressure from NVIDIA on developers to support their DLSS.
The problem of temporality
Unlike Deep Learning Supersampling 2.0, and despite the fact that AMD FidelityFX Super Resolution is a super-resolution algorithm like Deep Learning Supersampling 2.0, it does not take temporality into account. What do we mean by this? Well, to the simple fact that while Deep Learning Supersampling 2.0 takes into account the information from previous frames for image reconstruction, AMD’s FidelityFX Super Resolution only takes into account the information of the current image, so in that regard it looks more like the first generation of NVIDIA’s Deep Learning Supersampling.
When generating the color buffer today, several simultaneous buffers are usually stored called in Direct3D slang as Render Targets and in the case of Vulkan and OpenGL as FBO or Framebuffer Object, which are textures that store a buffer of full image, but they do not have to store the color information. This is where what we call the ID Buffer comes in, which puts an identification label on each object on the screen.
The idea is simple, through an image buffer that we call ID Buffer we can know in which screen position the pixel of each object in the scene is. This allows us to derive the speed of each object from one scene to another and to know where each pixel is. One application is to create intermediate frames in movies. But in games where the changes are minimal from one frame to another, this allows us to rescue the information from the pixels of previous frames to compare it with the current one and correct it if there is any failure.
However, the FidelityFX Super Resolution unlike DLSS 1.0 can be used with temporary antialiasing algorithms, which we know thanks to the fact that Epic has confirmed that the new version of its engine, Unreal Engine 5, can combine its TAA with the AMD FSR. Of course, the computational cost of the FSR must be added to the cost of these temporary algorithms.
Quality levels in NVIDIA DLSS 2.0
In the type of algorithms that we are dealing with, the information to reconstruct the frame depends on the input information, and with a higher number of pixels, then higher image quality. In other words, the image quality of scaling from 1440p to 2160p will always be better than scaling from 1080p to 2160p, because the number of input pixels is much higher in the first case than in the second.
In the case of Deep Learning Supersampling 2.0 we have three operating modes, the one with the highest image quality takes 1 pixel of information to complete 2 pixels, the medium quality takes 1 pixel to complete 4 and the one that gives the worst image quality, but that is solved faster what it does is create the information of 9 pixels in total from one pixel. It must be taken into account that NVIDIA has the advantage of the Tensor Cores integrated in its RTX GPUs, while AMD does not have this advantage.
Quality levels in AMD Fidelity FX Super Resolution
As with NVIDIA’s Deep Learning Supersampling 2.0, AMD has different quality levels for FidelityFX Super Resolution or FidelityFX Super Resolution, which are four in total and you can see them referenced in the slide that accompanies these lines. The four modes are: ultra-quality, quality, balanced, and performance. That is why we leave you a table with the information that AMD has left about its FidelityFX Super Resolution.
|QUALITY MODE||SCALING FACTOR||INPUT RESOLUTION FOR 1440P||INPUT RESOLUTION FOR 4K||DIFFERENTIAL|
|Quality mode “Ultra Quality”||1.3x scaling factor per dimension||Input resolution for 1440p 1970 x 1108||Input resolution for 4K 2954 x 1662||Differential x 1.69|
|Quality mode “Quality”||1.5x scaling factor per dimension||Input resolution for 1440p 1706 x 960||Input resolution for 4K 2560 x 1440||Differential x 2.25|
|Quality mode “Balanced”||Scaling factor 1.7 x per dimension||Input resolution for 1440p 1506 x 847||Input resolution for 4K 2259 x 1270||Differential x 2.89|
|Quality mode “Performance”||2x scaling factor per dimension||Input resolution for 1440p 1280 x 720||Input resolution for 4K 1920 x 1080||Differential x 4|
So AMD does not currently have an equivalent to NVIDIA’s fastest mode, which generates 9 pixels from just 1. It is also not a mode that provides great image quality and only serves to achieve 8K resolutions in some games without stressing the graphics card. However, AMD’s solution, by lacking temporality in the data it uses to reconstruct the image, ends up giving a slightly worse image quality. In addition to achieving a lower frame rate increase. Although that will depend more on the nature of each game.
It is completely subjective for the user to decide if the FSR is worth it or not, but the image quality is not only the resolution and the fact that the FSR of worse image quality than some temporary antialiasing algorithms is enough for many developers to say not to the AMD algorithm. Which Lisa Su’s company sells as compatible with all graphics cards already out of the box, but a half truth is still a blatant lie.
AMD FidelityFX vs Deep Learning Supersampling, which one will have more support?
AMD states that its FidelityFX Super Resolution can be used and implemented in any of the competitor’s GPUs, however this statement has a certain trap, since the algorithm as it is cannot be implemented in NVIDIA and Intel GPUs are the corresponding changes in the form of optimizations in the code for competitive GPUs.
Where is the catch? Well, NVIDIA did not add that capacity to the SIMD units of their GPUs, they do not support SIMD over register in what are the CUDA units, since the objective of NVIDIA is that the Tensor Cores are used for the low precision calculations. So if we apply the FidelityFX Super Resolution as is and without optimizations on an NVIDIA GPU, it will be worse than on an AMD one, due to the fact that it requires optimizing the code for said GPU. The key question that we should all ask ourselves about the AMD FidelityFX Super Resolution is whether or not we are going to see its optimizations for different graphic architectures, think that the effort has not to be made by AMD itself, but by different developers.
The Deep Learning Supersampling from NVIDIA despite being a huge black box in terms of its operation, only asks for a series of parameters to function and the NVIDIA libraries do all the magic without the developers having to worry. Not for this reason, Deep Learning Supersampling in version 2.0 is better and we have to take into account the agreements that both AMD and NVIDIA make with the different developers.
Consoles are the key to adoption of the AMD algorithm
AMD’s secret weapon is the fact that the three next-generation consoles, the two Xbox Series and PlayStation 5, are based on RDNA 2 and will be compatible with FidelityFX Super Resolution. It must be taken into account that the game code is usually optimized on the console and unlike what happens on the PC, so everything indicates that the optimizations of the FidelityFX Super Resolution on the console could benefit the PC versions.
That if, as we have commented before, this will depend on the interest of each developer and if they do not have any kind of agreement with NVIDIA to give Deep Learning Supersampling an advantage. For example, we can find that the console versions of Metro Exodus and Cyberpunk 2077 make use of the FidelityFX Super Resolution on the console, but that on PC due to the agreements with NVIDIA they do not use it.