AMD's has released its new Fidelity FX Super Resolution 2.0 (FSR 2.0) upscaling technology, showing massive image quality improvements over FSR 1.0. Based on our testing, FSR 2.0's upscaling quality appears to be on par with Nvidia's latest DLSS 2.3 version. Even better, FSR 2.0 doesn't require any special machine learning hardware like Nvidia's tensor cores, meaning it will run on all of the best graphics cards and basically every GPU released in the past several years.
A quick disclaimer: the above is based on our testing with a preview build of Deathloop, provided by AMD. We've learned over the years that not all DLSS or FSR implementations are created equal, and this is an AMD-promoted game that had very poor FSR 1.0 quality to begin with. Even so, the changes are impressive.
FSR 2.0 is a from the ground up overhaul of FSR 1.0, with features and functionality that are more aligned with DLSS 2.x than the original FSR version. FSR 2.0 now relies on a temporal upscaling algorithm that takes into account data from multitude sources. It uses current and previous frames (temporal data), motion vectors, and the depth buffer — just like DLSS. But instead of using a supercomputer and tens of thousands (millions?) of frames worth of data to train an algorithm, and then relying on special purpose tensor cores to run, AMD's FSR 2.0 simply uses the GPU shader cores, allowing the tech to work on virtually any GPU.
The motion vectors feed FSR movement data, based on how the scene is changing or "moving" over two consecutive frames. This allows the algorithm to better prioritize which pixels to upscale. The depth buffer meanwhile provides information on the distances between objects within a scene. Using this information can help reduce artificial ghosting created by the FSR upscaler.
FSR 2.0 also adds a new feature called pixel ridge locking. This tech allows FSR to lock onto thin edges of geometry and prevent them from shimmering or flickering. It makes these edges more pronounced and stable between frames. Nvidia doesn't seem to need this type of technology, as its deep learning algorithm is already able to stabilize thin geometry quite well.
So DLSS 2.x and FSR 2.0 both use the same basic inputs for their upscaling algorithms: multiple frames of data, motion vectors, and depth buffers. However, FSR 2.0 processes all this data through a customized Lanczos upscaling algorithm instead whereas DLSS relies on a deep learning algorithm.
FSR 2.0 Dynamic Resolution Scaling
New to FSR 2.0 — and only more recently available in DLSS — is Dynamic Resolution Scaling (DRS). DRS allows the render resolution of a game to be completely dynamic and change based on frame rate. This tech can provide a smoother gaming experience and potentially improve overall image quality, as it targets a frame rate and adjusts the render resolution appropriately.
FSR 2.0 saves data from previous frames, which can be re-used by lower-resolution images down the line. This can help preserve the quality of each frame and ensure image quality degradation is hardly noticeable when the rendering resolution does drop for brief periods of time.
Tom's Hardware FSR 2.0 Testing
For testing, we ran our own suite of tests comparing FSR 2.0 to DLSS and AMD's older FSR 1.0 in Deathloop at 1080p. We specifically selected this lower resolution as that has been one of the areas where FSR 1.0 was particularly weak. Running at higher resolutions like 4K tends to provide the algorithms with sufficient detail for even spatial upscaling to look decent. Despite the lower resolution, the results were still fantastic with FSR 2.0.
When comparing DLSS Quality mode to FSR 2.0's Quality mode, we found the images to be incredibly similar. Both upscalers provide a native-like viewing experience, with the perfect reconstruction of geometry as well as thinner details such as power cables.
The only real difference between the two upscalers is in sharpness, FSR 2.0 provides a slightly more aggressive sharpening effect compared to DLSS quality. However, the FSR 2.0 sharpness can be adjusted with a slider if needed. Both images still look good, it's just a matter of personal preference over which image looks more aesthetically pleasing.
In motion quality also matters, and here perhaps DLSS does a bit better than FSR 2.0. Taking a relatively still screenshot is basically a best-case scenario for any upscaling algorithm. Even so, we found the experience of FSR 2.0 and DLSS to be largely the same.
Switching over to the performance mode in each upscaler, image quality again looks impressively similar. Again, these images were taken while remaining still, where both algorithms have a chance to fully reconstruct the images to the highest fidelity possible. While in motion, expect image quality to be slightly worse compared to the quality mode.
Also notice the third image, which is native rendering with the default sharpening set to level 5. It's incredibly blurry, so FSR 2.0 and DLSS even in performance mode can look "better" than native. That's something that can vary in every game, and the implementations of TAA, FSR, and DLSS aren't all equivalent.
We mentioned before that Deathloop doesn't have the best FSR 1.0 implementation that we've seen, and the upscaling artifacts can be incredibly jarring. Comparing FSR 1.0 to FSR 2.0 shows a massive boost in image quality with the newer version.
The lack of multi-frame data analysis results in edges and lines looking very jagged, even under the quality preset. Look at the red and white lines on the van as a great example, but also look at the text on the building to the right. It gets even worse with FSR 1.0 performance mode, where the "staircase" effect becomes even more apparent and impossible to ignore. In fact, detail textures everywhere look blurry or blocky with FSR 1.0, especially in performance mode.
With FSR 2.0, all the jaggies and lack of detail are gone. One of the big benefits of using temporal data is that FSR 2.0, like DLSS, can do anti-aliasing as well as upscaling. With FSR 1.0, anti-aliasing was left to the standard AA algorithm that a game supports.
Even comparing native resolution to FSR 2.0 quality mode, we'd say FSR 2.0 still wins. Due the side effects of Temporal Anti-Aliasing (TAA), the image can look artificially blurred even at native resolution. The above images both use a sharpening level of 10, and perhaps native looks a bit better when in motion, but it's very difficult to spot the difference in that case. FSR 2.0 and DLSS have the advantage of removing (not adding in the first place) this artificial blurring, providing additional image quality to objects in the game world.
FSR 1.0, FSR 2.0, and DLSS Performance Compared
We also wanted to run some performance tests to see how the various algorithms fare. We chose the RTX 3070 and RX 6700 XT as relatively popular high-end solutions and tested at both 1080p and 4K. We ran tests at native, and then used each of the upscaling algorithms in Quality and Performance mode. Note that FSR 1.0 has an Ultra Quality mode that has a lower upscaling factor, but we kept things consistent for this look at performance and image quality.
Starting with the AMD RX 6700 XT, performance at native was 110 fps. FSR 1.0 provided the biggest uplift in framerates, but obviously at the cost of image quality. FSR 2.0 Performance mode actually still looks better than FSR 1.0's Quality mode, however, so you can get almost 40% more performance with still decent image quality, or you can opt for Quality mode and get effectively better than native quality and almost 25% more performance.
Interestingly, the RTX 3070 basically runs into a CPU bottleneck at 1080p so that there's very little benefit to any of the upscaling modes. We tested at maximum settings, including the use of ray tracing reflections, but even so we couldn't get much above 140 fps. Native rendering ran at 128 fps, so there was a slight 8–11% benefit, but the in practice the difference in framerate between the various Performance and Quality modes in FSR 1.0, FSR 2.0, and DLSS was negligible.
Kicking up to 4K rendering, the need for FSR and DLSS becomes far more apparent. The RX 6700 XT only managed 35 fps on average and sometimes dipped below 30 fps, making for a less then smooth experience. FSR 1.0 provided a good boost in performance — 73% in Quality mode and 127% in Performance mode — but even at 4K the loss in image quality was apparent. FSR 2.0 meanwhile delivered 46% more performance in Quality mode and 92% higher fps in Performance mode, with the latter still being better overall (in our subjective opinion) than FSR 1.0's Quality mode.
The RTX 3070 complained about a lack of VRAM at our maxed out 4K settings, though performance still ended up being slightly higher than the 6700 XT at native rendering. Interestingly, FSR 1.0 didn't boost framerates quite as much as on the AMD GPU (61% and 106%), but the gains with FSR 2.0 were 46% and 87%, which is close enough to the 6700 XT's improvements to call it a tie. DLSS meanwhile delivered a 46% increase in fps with its Quality mode, while the Performance mode yielded a 114% improvement.
Based on our initial testing, FSR 2.0 and DLSS now look relatively comparable in image quality, at least in this one game. AMD GPU owners should opt for FSR 2.0, while Nvidia RTX users can decided between DLSS and FSR 2.0 as they see fit.
FSR 2.0 on Older GPUs
What about older graphics cards? In theory, FSR 2.0 should still work, but the gains may not be as pronounced according to AMD. We pulled out a GeForce GTX 1080, GeForce GTX 970, Radeon RX Vega 64, and Radeon RX 480 to see how they fared. For the GTX 970, because it only has 4GB of VRAM, we set the game to high quality mode. For the other GPUs, we used maximum quality, though unlike the latest generation GPUs that doesn't include ray traced reflections.
The performance improvements available to the GTX 1080 and RX Vega 64 are relatively consistent with FSR 2.0. Both get just under 20% more performance with FSR 2.0 Quality mode, or a bit more than 30% more performance in Performance mode. The same mostly goes for FSR 1.0, where Quality mode gave the GTX 1080 28% more performance and the Vega 64 26% higher performance, while Performance mode was 47% faster than native on the 1080 and 44% faster on Vega 64.
Going back another generation of GPUs, the gains were lower. The RX 480 only increase fps by 8% with FSR 2.0 Quality mode, or 19% with Performance mode — granted, running at maximum quality probably had something to do with that. FSR 1.0 meanwhile gave the old-timer GPU 19% or 30% more performance. The GTX 970 on the other hand, running high quality settings, was 15% and 24% faster with FSR 2.0, and 24% and 38% faster with FSR 1.0.
Based on what we saw in our testing, AMD is correct that older GPUs may not benefit as much from FSR 2.0. The image quality gains were still present, but you'll want to run with settings that are appropriate to the hardware at the very least, and don't expect miracles. GTX 970 ran at just 32 fps with 1080p native, and dropping to medium or even low quality would likely improve the scaling offered by FSR 2.0.
Closing Thoughts: FSR 2.0 vs. DLSS
Overall, AMD has done a great job with FSR 2.0. It has found a way to provide DLSS 2.0-like image quality, without the steep hardware requirements that Nvidia's upscaling tech requires. FSR 2.0 can run on any GPU, which means even Nvidia GPU owners with a GTX series card can benefit.
There are of course some caveats with FSR 2.0. The first is developer support, which will be more difficult with FSR 2.0. Implementing FSR 2.0 is basically as complex as DLSS 2.x now, and both need frame data, motion vectors, and depth buffers. Interestingly, Nvidia actually released it's Streamline SDK to make it easier for developers to support the various upscaling solutions, including DLSS but also Intel's XeSS along with AMD's FSR 1.0, and FSR 2.0.
The problem with FSR 2.0 is that it basically resets developer support to zero. Deathloop is the only game with FSR 2.0 right now, and many other games with FSR 1.0 support will hopefully adopt the new algorithm, but that takes time. FSR 1.0 has been AMD's most successful FidelityFX solution in terms of developer uptake, and hopefully FSR 2.0 will carry on that legacy, but DLSS is already supported in over 100 games. Going forward, at least, if a game company is already planning on implementing DLSS in a game, it should be very easy to add FSR 2.0 support as well — assuming there aren't Nvidia developer incentives to preclude such a decision.
The second cavitate is GPU support. According to AMD, there are limits to what FSR 2.0 can do on older hardware. AMD recommends an RX 5700 or RTX 2070 as a baseline for 4K upscaling with FSR 2.0. For 1440p, AMD recommends at least an RX 5600 XT or GTX 1080 for optimal performance, and at 1080p AMD recommends an RX 590 or GTX 1070.
AMD says FSR 2.0 will still work on even older GPUs, but your mileage may vary. Due to FSR 2.0's additional computing requirements on the GPU, you might not get a performance uplift at all when using FSR 2.0 on older GPUs, especially if you try running at higher resolutions. As we showed with our GTX 970, GTX 1080, RX 480, and RX Vega 64 testing, you should expect lower performance gains if you use FSR 2.0 on older hardware.
In the meantime, it's great to see the significant improvements in image quality that FSR 2.0 provides. Basically, AMD has created a far better anti-aliasing algorithm than TAA, which also happens to support upscaling to boost performance. As we've said with DLSS, for any game that taxes the GPU at all, we can't think of a situation where we wouldn't at least want the option. Sure, there are driver level upscaling solutions from AMD and Nvidia, but in-game support provides a better overall experience and we hope all game developers take note.