AMD FSR Testing With FP32 Fallback Shows Slightly Slower Performance On Radeon RX 400, RX 500 And Older NVIDIA GPUs
Recently, Wccftech discussed how both Marvel Avenger's and Necromunda: Hired Gun utilize NVIDIA's DLSS and AMD's FSR technologies to upscale graphic quality and where each fell in quality or increased quality of each title. We also mentioned that the AMD FSR technology was open source, allowing anyone to view the code and essentially alter the code to see what the technology can do.
AMD FidelityFX Super Resolution
...uses a collection of cutting-edge algorithms with a particular emphasis on creating high-quality edges, giving large performance improvements compared to rendering at native resolution directly. FSR enables “practical performance” for costly render operations, such as hardware ray tracing.
Twitter user CapFrameX, who tests hardware, captures frame times and does analysis and logs sensor information, released screenshots of testing that was completed on the Radeon RX 6800 XT on both half-precision and single precision computations (FP16 and FP32). The use of half-precision computations and single precision computations shows that when the FP16 is accelerated, and the CPU is unable to process the information available, it will fall back to FP32. This is useful for older GPUs when trying to process information in gaming or other activities that would stress the GPU.
Unfortunately however, it lookslike the FP32 fall back is slower with the native FP16 implementation having a 7% speed advantage in FSR.
CapFrameX altered the AMD FSR coding when using a newer and more powerful Radeon RX 6800 XT GPU that utilizes the Nav 21 GPU. The Radeon RX 6800 XT is capable of running half precision computations, but they wanted to see what the output would be if the AMD FSR coding was altered to force the card to running single precision. To do this, CapFrameX "used a 'SciFiHelment' sample running at 4K in FSR Ultra Quality" reports VideoCardz.
What the testing showed was that there was a seven percent increase when utilizing FSR 1.0 in FP16 computations. This is a very small increase from switching between half precision and single precision acceleration. This matters because older GPUs like the AMD RX 400 and RX 500 series (polaris based) do not support native FP16. Older NVIDIA GPUs like the GTX 900 series also dont support the same while Intel's integrated GPUs don't either. What this essentially means is that if you are using FSR on any of these older GPU models expect a very slight single digit performance loss when compared to newer generations of graphics cards.
You can find the AMD FidelityFX Super Resolution source code on GPU Open.