You can already use FSR4 on Steam Deck btw, no need to wait if you want to try it out!
I already use it in combination with an portable monitor, scaling the output to 1080p - that's my balcony setup ;-)
You can already use FSR4 on Steam Deck btw, no need to wait if you want to try it out!
I already use it in combination with an portable monitor, scaling the output to 1080p - that's my balcony setup ;-)
Maybe the community adds the OS-level support unofficially
No, this is not possible. FSR 1 is an algorithm that works on the output image, like a Photoshop filter. That means HUD elements can't be distinguished from the actual game world in example. Since FSR 2 (and upwards) its different. It needs to be integrated into the game, understanding what it does and compare multiple images. It is Ai based and requires training from the game itself. That's why you don't get system level integration for DLSS too. So that is out of question.
Afaik dlss and fsr are pretrained models and they don't train them for each specific game. Modders totally do enable them for games that don't support them natively, but it can be quite involved because it needs the motion vectors and maybe depth from the game.
Afaik dlss and fsr are pretrained models and they don’t train them for each specific game.
Maybe I misunderstood it and its not about adjustment training to specific games, and its about adjusting settings or something like that. I searched for a resource to point to that, but cannot find. It's really hard to search about this topic online, because its always the same basic explanations what Ai upsaclers are (probably written by an Ai model itself...).
Modders totally do enable them for games that don’t support them natively
I know of modders being able to replace an existing model that already has motion vectors and depth. It would just reuse those information, because the API is agnostic to the models. If modders add vectors and depth by their own, that does not change the fact that DLSS or FSR 2+ can only work with those data.
I think it needs depth buffer access and a UI mask, but not necessarily deep integration beyond that? At least for the FSR3 shader code I’ve looked at personally.
This is not out of the question for generic integration.
I’m less sure if FSR4 though, as I think that was a pretty big leap over 3.
I don't know the exact process too, so we are both speculating. But its fact that Temporal upscaling (that is FSR2 and upwards for FSR related ones) need integration from the game. And these are Ai models that needs some kind of training data from the game as well. I don't know what that exactly means, but my guess is that the integrated Ai model to upscale is trained with the data in the game and then delivered as a package. That makes it impossible to integrate a general purpose Temporal upscaler with Ai into a system, that could be utlized on any game (or program if you will). So I don't know how this cannot be anything else "out of question". I mean this is by concept not possible, as far as I understand (and why nobody did it too).
But an Ai system could be used as a Spatial upscaler, like a filter that is not integrated into the game. FSR 1 itself is not using any Ai, but DLSS 5 has such capabilities (think of the new lighting model, it could be tweaked to upscale the image instead).
I don’t think it’s actually trained per game. Maybe per type of game.
I do remember Nvidia offering individual game finetuning as a service to game devs for a hot minute, but really, these models generalize well. A model they spent time tweaking and training on a big basket of games might work better than a finetune for one specific game, as it would just get overfit and perform worse in edge cases.
I’ve seen this happen in older GAN models, and newer diffusion ones, and especially in LLMs. Even with the exact data the model is going to work on, finetuning can make it perform worse with the actual stuff it’s going to miss or mess up.
I can use FSR4 in games that don't have it, on hardware that doesn't even support it with Optiscaler. How did it train on shit it wasn't actually made for if that's how it worked?
What exactly do you mean? Any link? As explained. FSR 2, 3 and 4 needs training data from the game. It is possible to swap DLSS out with FSR variants, because DLSS has the training data already. But you cannot have FSR 2, 3 and 4 on all games like FSR 1. And FSR 4 also has to modes as it seems, one classical Temporal like 2 and 3 that runs on relatively older hardware too, and the new ML-based variant that requires the new cores on RX 9000 hardware.
If you use Optiscaler, then I think what happens is that you swap the DLSS implementation with FSR 4 Temporal variant out. I searched the web a bit and found this: https://github.com/optiscaler/OptiScaler
OptiScaler is a tool that lets you replace upscalers in games that already support DLSS2+ / FSR2+ / XeSS
Enables usage of XeSS, FSR2, FSR3, FSR4 2 (officially, RDNA4 and RDNA3 dGPUs only) and DLSS in (temporal) upscaler-enabled games
So what part I was wrong about exactly?
You swap it with whatever upscalers it already has, yes. But not all games have any FSR or even DLSS support. Some only have XeSS, and you can replace that with FSR or DLSS using the utility. If it never had any kind of FSR support what-so-ever, how is it able to work at all?
If it never had even FSR1 support, how is it able to work at all?
I did not say this, where do you get that? I explained that FSR 1 is different from all other upsalers, it is not comparable to all of the other methods. FSR 1 is like a Photoshop filter, while the other methods have builtin data from game. You cannot add a Temporal Upscaler to a game that does not have any. You cannot use OptiScaler on a game that does not have any upscaling at all, it needs DLSS 2 or higher, or FSR 2 or higher, or XeSS, because those have the training data using Ai with the game builtin. You cannot use OptiScaler without any of these, or with FSR 1.
What exactly am I wrong about?
I am not saying you're wrong, I'm trying to understand what you posted. But I see what you mean now. I was under the impression the training data was specifically for the specific upscaler so FSR4 would need at least FSR2 supported natively.
Oh, no no, I did not say or imply that. I was concerned about FSR 1 and the difference to the other upscalers. And the difference between the second new mode of FSR 4 that is not available on any other. So even if you have DLSS or FSR 3, you can only use the Temporal variant of FSR 4, not its ML-based variant (if I understand it correctly). At least that is what I said, so its probably true (self irony).
FSR4 would benefit from specialized hardware cores used to accelerate Ai based workload. Looking at AMDs site: https://www.amd.com/en/products/graphics/technologies/fidelityfx/super-resolution.html

(Sorry for screenshot, couldn't copy-paste easily.) REdstone is FSR 4 here. The RX 7000 graphics cards here can only use Upscaling. So I would expect any older generation of (and weaker) hardware like Steam Deck should also only be able to use Upscaling, not the full set of features. And because these graphics cards and older hardware do not have the hardware cores to accelerate Ai based workload, they should require more power and latency. Just my assumption here.
The table shows 3 types of upscaling: Spatioal, Temporal and ML-Based. Spatial is without Ai, and the game does not require any support, it's like a Photoshop effect after the image is created (simply speaking). Temporal is more complex, taking multiple images from the game with builtin support from the game to produce better results. This doesn't necessarily require Ai, but AMD decided to combine Temporal with their FSR 2 and FSR 3 with Ai based logic. Now I do not understand why ML-Based Upscaling is not available to FSR 2 and FSR 3. Maybe this requires special hardware that is only available on the new RX 9000 cards... Ah yes, I was right: https://en.wikipedia.org/wiki/Radeon_RX_9000_series#FSR_4
FidelityFX Super Resolution 4 (FSR 4) is AMD's first machine-learning upscaling solution that is able to leverage the second-generation AI accelerator cores in the RDNA 4 architecture.[14] AMD stated that due to requiring hardware acceleration, FSR 4 was limited to the Radeon RX 9000 series.
That means, the FSR 4 version that could be available on Steam Deck is not the same upscaler used on these cards. So we get a FSR 3 styled upscaler (Temporal) only and I wonder how much better it is, if any, and how much more power it draws. I think its important to make this distinction.
These are all solid assumptions and I thank you for providing the data to try and manage expectations here.
However, I do think you're making the case for the current state of things as opposed to what AMD is apparently trying to achieve by supporting older hardware with FSR 4.
That said, it's probably going to be somewhere in the middle, with RDNA 4 (which Steam Deck APU is not) getting the full potential that FSR 4 can provide, and RDNA 2 (which Steam Deck APU is) seeing at least some of it. I wonder if the latter is going to be of any benefit compared to what Steam Deck users have now, especially in terms of the power draw, like you mentioned.
“Supporting” and “working well” are different things though.
Without the low precision/specialized instructions of newer hardware, there’s just a fundamental limit to what can be done without the overhead of FSR being too much. Though there are certainly some implementations that could work on older hardware, I’m sure.
all 17 comments