AMD's FidelityFX Super Resolution (FSR) Tested

by Tarinder Sandhu on 22 June 2021, 14:01

Tags: AMD (NYSE:AMD)

Quick Link: HEXUS.net/qaeqqq

Add to My Vault: x

Introduction

PC graphics cards continue to sell out way faster than either Nvidia or AMD can produce them. This stock refrain has become all too familiar and painful during the pandemic, but said companies can continue innovating outside of hardware and offer customers genuine value-add features that improve the games-playing experience.

Take the latest graphics cards from Team Red and Team Green. Both ship with raytracing support for ultra-realistic lighting in supported games. Nvidia goes further on the GeForce RTX 20- and 30-series by offering a combination of hardware and software AI technology to improve performance in compatible titles.

Second-generation Deep Learning Super Sampling (DLSS), upscales a lower-resolution input on dedicated Tensor Cores for, oftentimes, a 100-200 per cent boost in framerate with little in the way of perceivable image quality loss. Usually paired with GPU-crushing raytracing, this Nvidia one-two IQ punch is the real deal if you're fortunate enough to own an RTX card.

Having debuted its most potent GPU architectures at a later date, AMD is playing catchup on both fronts. Raytracing performance is not as robust as Nvidia's comparable GPUs and, until today, a DLSS-like technology has been conspicuous by its absence.

This preamble leads us neatly to AMD's delayed response to rival DLSS technology. Known as FidelityFX Super Resolution, or FSR between friends, it is potentially intriguing software for games developers.

How does FSR work?

Let's be clear at the outset. AMD's FSR technology is not a facsimile of Nvidia's DLSS. There is no machine-learning component, it does not run on dedicated Tensor Cores, and there are no 'ground truth' super-high-resolution models from which lower-resolution inputs are improved by an on-the-fly A.I. algorithm using temporal filters for smooth motion. FSR's scope isn't therefore limited to cards with specific hardware specifications.

Now we know what's it's not, let's discuss what it is. FSR is an advanced post-processing spatial upscaling algorithm which runs on regular GPU shader-cores in two passes. The first pass takes a lower-resolution input that has already been antialiased and tonemapped and intelligently upscales by finding and analysing edges and then recreating them at a higher resolution across the entire image. The second pass, like AMD's contrast adaptive sharpening (CAS), seeks to improve quality further by enhancing texture detail. CAS and FSR are mutually exclusive as the latter includes much of the former's goodness.

The FSR algorithm runs in four modes: Ultra Quality, Quality, Balanced and Performance. Each subsequent one increases the speed - and therefore framerate - by using a higher scaling factor. Absolute image quality worsens, of course, as the image is ballooned up, but do realise that FSR cannot by definition match the quality of the desired output's native image through this upscaling approach. Unlike Nvidia's A.I system, the trade-off for speed is always a degradation of image quality; the only question is just how much one is willing to accept. Running on the shader-cores for a short time, FSR naturally has some performance hit, too, though the uptick in framerate more than makes up for the overhead. The exact toll varies between GPUs - the faster the card, the quicker FSR can get its job done.

FSR is not a strictly one-fits-all approach. The algorithm works in the same way across all supported titles but developers can choose to optimise it for their particular games engines - tweaking the scale factor, for example, or applying more or less sharpening as they see fit. One game's FSR implementation may well be better than another's, depending upon developer expertise.

Though it may be obvious to many, FSR needs to be implemented on a game-by-game basis. It is effectively a downloadable software tool provided by AMD for developers to integrate into their game(s) when they see fit. It is therefore very unlikely to be present on RTX-enabled games because of the long-term relationships Nvidia has with those guys. That's an important consideration in the wider gaming landscape: titles will either benefit from DLSS or FSR.

Small beginnings

At launch, only seven games will have FSR support. None of them are what we deem triple-A status. The upcoming roadmap and list of studio partners is much more impressive. Thinking outside the PC box for a second and knowing that both Microsoft and Sony use AMD's latest hardware in their newer consoles, it's not much of a reach to think that FSR support will arrive sooner rather than later. Such speculation bodes well for well-optimised ports over to the PC ecosystem.

A boon for the standard shader-based approach for FSR is the wider range of GPU compatibility. AMD says it has tested the algorithm on everything from a high-performance Radeon RX 6000 card to the integrated graphics on Ryzen chips, where arguably the increase in framerate will be more keenly felt. That said, being lower performance in nature, the FSR percentage increase is likely to be smaller than on a high-end card which has shader grunt to spare. DX11, DX12 and Vulkan are all supported, meaning most games can benefit.

Being open-source to the games developer and mostly agnostic of hardware, FSR, as we will show you later on, also runs on Nvidia GeForce cards. It's rather amusing that FSR operates on, say, a GeForce GTX 1060 when Nvidia's own DLSS technology does not, and Nvidia has no plans to do so on non-RTX cards.

The two companies go about their framerate-boosting technologies in disparate ways. Nvidia believes it is best achieved on dedicated cores and A.I. training. AMD, meanwhile, sees more potential in a simpler shader-based approach. Presently, Nvidia does it better.