When AMD launched the RX 7000 series in November last year, it also teased FidelityFX Super Resolution (or FSR) 3, the third iteration of its resolution upscaling technology. FSR is AMD's answer to Nvidia's Deep Learning Super Sampling (or DLSS), which is now on version 3 which uses frame interpolation to potential double framerates. FSR 3 was promised to also double framerates and it was assumed it would introduce frame interpolation. AMD recently gave a preview of FSR 3 at GDC, confirming that it does indeed use frame interpolation, which means FSR has caught up to DLSS once again but may also face the same problems.

Frame interpolation is FSR 3's primary improvement

The rendering pipeline for FSR 3.
Source: AMD

Contrary to some rumors, AMD didn't fully launch FSR 3 at GDC but did provide some technical details that help us understand how exactly AMD is achieving a doubling in framerate. The arrows in the above image illustrate the workflow when the GPU (from top to bottom) uses no upscaler, uses FSR 2, and uses FSR 3. If you were wondering how FSR 2 increases the framerate, this shows you: the GPU spends less resources rendering to make a lower quality frame, then the FSR 2 algorithm makes it look better. That results in potentially poorer image quality but about 50% more FPS.

FSR 3 is very similar to FSR 2 but there's an extra step for frame interpolation, which is the key to boosting the framerate. The basic idea is that if you have two frames, you can easily insert an AI- or software-generated frame in the middle, giving you a third frame that the GPU didn't even need to render itself. However, if you notice in the image, FSR 3 gets the first frame out later than FSR 2. Frame interpolation takes an extra step, not to mention the fact that you need the next frame in order to interpolate; you can't create an extra frame if you only have one reference frame.

Nvidia DLSS 3 frame generation in action.
Source: Nvidia

The end-result is that the latency is higher yet the framerate is also higher, even though a higher framerate by definition should mean lower latency. This is because the GPU is waiting on the second frame for interpolation, plus your inputs only matter for the frames that the GPU has natively rendered, because the frames generated by interpolation are purely visual. To be fair to AMD, this isn't a flaw in the way they're implementing frame interpolation, and Nvidia's own DLSS 3 has the same exact problem (as seen above), plus some others.

Same frame boosting as DLSS 3, along with the same issues

Current testing for DLSS 3 in the few games it's available in shows that it boosts the framerate by nearly four times compared to native rendering, but with similar latency. Even with AI-powered Tensor cores, it seems impossible to get around the fact that frame interpolation will always result in additional latency since you need to wait for the real, rendered frame on the other side of the generated one.

That's not the only problem DLSS 3 suffers from, however. DLSS 3 takes finished frames to generate extra ones, and finished frames have UI and HUD elements on them in addition to all the 3D rendered parts. It's very difficult for DLSS 3 to properly replicate those elements on the generated frame, which results in weird garbled text and artifacts that wouldn't be there in a real frame. FSR 3 works the exact same way and AMD directly acknowledges that this is a challenge for FSR 3's visual quality, just as it is for DLSS 3.

But perhaps the biggest and most intractable problem for FSR 3 and DLSS 3 is CPU bottlenecking. It doesn't matter how many frames the GPU is putting out if the CPU can't keep up, and even the fastest CPUs have limits. In the end, frame interpolation or generation technology for games suffers from latency issues, visual quality issues, and might not even deliver the theoretical doubling in framerate if the CPU is overwhelmed. DLSS 3 has faced all of these challenges since launch, and it's hard to imagine FSR 3 won't either.


Source: AMD