When AMD originally announced it was working on FidelityFX Super Resolution (AMD FSR), an image upscaling and enhancement algorithm that would work on all of the best graphics cards and allow AMD to compete with Nvidia's DLSS, it raised a lot of questions. Would it use machine learning, or some other upscaling technique? AMD has apparently claimed the algorithm was built "entirely in-house," but people have looked at the source code and determined that it's largely based on the existing Lanczos resampling algorithm, which has been around for several decades and is already in use by Nvidia for its sharpening filter. Ah, the joys of open-source software.
To be fair, AMD has done more than just straight-up reusing Lanczos resampling. Specifically, FSR includes some optimizations to allow it to run faster, along with some other filters that help remove any halos caused by the sharpening. But, perhaps most importantly, AMD threw its weight behind creating an open-source solution that game developers — or really anyone — could incorporate into their applications. The ideas behind upscaling and enhancing video content aren't remotely new, but sometimes it takes a bit of elbow grease to get everyone on the same page.
One key point with FSR is that it's supposed to be incorporated into a game, so that it only gets applied to the 3D rendered content and not to other things like UI elements or text. Of course, there's nothing stopping people from using FSR to upscale everything — and in fact, several projects exist that aim to do just that — but some things are best left rendered at native resolution. By putting some work into optimizing and standardizing the FSR algorithm, AMD has already managed to get at least two dozen games to adopt the technology, along with Unreal Engine and Unity Engine.
Ironically, Nvidia also adopted Lanczos upscaling and sharpening as a filter in its drivers that was first added years ago. Could it have put in the work to get developers to use Lanczos upscaling instead of temporal upscaling — or in addition to temporal upscaling — back in the Pascal GPU generation? Absolutely. But instead, it was left as a mere filter while Nvidia put its engineering efforts to work creating DLSS, an AI-driven upscaling and enhancement algorithm that's proprietary to Nvidia RTX GPUs. And to be fair, DLSS 2.0 and later revisions do work quite well, arguably better than Lanczos resampling.
But as we noted in our FSR testing, having a general-purpose algorithm that works on any modern GPU — everything from Intel UHD 630 to Nvidia RTX 3090 to AMD RX 6900 XT — has a lot of benefits. For example, if we take a look at the current Steam Hardware Survey (focusing on the DirectX 11 GPUs), we find that only 17.6% of all PCs in the most recent survey have an RTX card. That means over 80% of the gaming market can't currently make use of DLSS. In contrast, every PC in the survey with a DirectX 11 or later GPU should be able to use FSR.
As a former software developer, I can attest to the fact that it's far easier to get management to greenlight a new feature when said feature benefits 100% of the intended user base, rather than only a small portion of the potential users. The needs of the many outweigh the needs of the few, or something like that.
Of course, the proof is in the eating of the pudding, and FSR pudding tastes nearly as good as natively rendered pudding — maybe a bit undermixed, but you almost wouldn't notice, at least when using the ultra quality or quality profiles. Let's just not get too carried away with congratulating AMD on creating something new and useful when what we really should be doing is asking what took so long.
If one of the companies behind our modern graphics APIs — meaning, Microsoft and DirectX or Khronos and Vulkan/OpenGL — had integrated Lanczos upscaling and promoted it as a useful function for game developers five or ten years ago, we could have been benefiting from the technology all those years. But then maybe people would have been able to sit on a slightly older GPU for another year or two before upgrading, which maybe wasn't deemed in the best interest of AMD or Nvidia until now.
Anyway, FSR is pretty useful, even if it's just a modified take on a decades-old algorithm. Sometimes the best solutions are the old solutions. DLSS is also great if you have an RTX card — sorry, GTX and AMD owners. Hopefully, we'll see more widespread adoption of both technologies in future games, because choice is almost always a good thing to have.
AMD's FSR Uses Lanczos Tech, Just Like Nvidia's Years-Old Sharpening Filter
