Microsoft Auto Super Resolution tested: a new AI upscaler has arrived
The gaming highlight of the new Windows on ARM Copilot+ laptops.
The less said about gaming on the new wave of ARM-based Windows laptops, the better. Qualcomm's Snapdragon X Elite has severe driver issues resulting in generally poor performance and while the PRISM CPU translation layer allowing x86 code to run on ARM looks impressive, no support for AVX instructions means many games won't even load. Let's be generous and say that gaming support on 'Windows on ARM' hardware is a work-in-progress - but there's an element I feel is well worth examining. Microsoft's Auto Super Resolution upscaling technology has its limitations, but it works.
In robustly embracing the AI era, Microsoft has mandated that new, AI-focused Copilot+ PCs should contain an integrated neural processor rated for at least 40 TOPs (tensor operations). New processors like the Snapdragon X Elite and AMD's Strix Point line contain the requisite hardware and while we can expect gaming not to touch the NPU for a good while yet, Microsoft's Auto SR can be invoked at will on practically any game. Right now, there's a curated 'white list' of games that support Auto SR, but as far as I can tell, there's nothing stopping you from simply adding the feature yourself within the Windows control panel. Right now, Microsoft is only talking about Snapdragon support for Auto SR, but one would hope that the feature will roll out for all Copilot+ PCs in due course.
While both DLSS and Auto SR aim to take lower base resolution imagery and upscale them to higher resolutions, the way this is achieved is very, very different. DLSS and rivals like FSR2/3 and XeSS have a wealth of data to work from: the base image, motion vectors, colour and depth information and more. They're also integrated into the game engine pipeline, meaning that some aspects of the image - such as post-processing or HUD elements - can be processed at native resolution. Auto SR seemingly only has access to the base image, effectively making it a screen-space upscaler.
Microsoft puts it like this: "Auto SR utilises a large AI-based super resolution model running on the Snapdragon Series X Neural Processing Unit (NPU) to restore the visual detail lost by rendering the game at a lower resolution to increase frame- rate.
"The model is a convolutional neural network (CNN) that provides spatial upscaling between two fixed resolutions. It has been trained to add detail and perform anti-aliasing while upscaling. The high resolution output from the model is set to optimise image quality for the built-in displays of Copilot+ PCs equipped with the Snapdragon Series X processor, and dictates the time required to execute the model. Applying Auto SR adds latency to the game equivalent to the time it takes to execute the model, which is currently 12ms."
By shuttling the upscaling work to the NPU, there is no perceivable impact to the game's frame-rate - however, by adding an additional step with the upscaling, latency is added. If you're gaming with v-sync on a standard 60Hz display, you're essentially looking at a single frame of latency added - which I think is perfectly fine.
More noticeable is the fact that Auto SR only has the lower resolution image to work from. HUD elements can exhibit some artefacting while upscaled text in general (on splash screens and the like) looks OK, but clearly not quite right. The other key limitation Auto SR has which is that as it is effectively a post-process, it has no sense of 'history'. It doesn't seem to refer to previous frames for its anti-aliasing in the way that TAA does. That being the case, it's important to 'feed' Auto SR with the most temporally stable image that you can. The idea of running a 720p image with TAA isn't generally a good idea as it introduces a lot of blur. However, Auto SR does a much better job in increasing detail than it does in dealing with the shimmering artefacts - so using TAA makes a lot more sense. For the same reason, intrusive post-process effects like film grain and chromatic aberration should be disabled (motion blur, however, seemed fine to me).
In looking at Auto SR's upscaling prowess, I went back to Microsoft's blog that introduced the technology and sought to replicate its results on Borderlands 3, which were based on 720p imagery upscaled to 1440p with clearly noticeable quality improvements. Initially, I captured the benchmark run at native 720p, then with an Auto SR upscaling pass captured at 1080p, 1440p and 2160p. It turns out that Auto SR only upscales to one resolution, so any differences between the captured resolutions will be entirely down to the GPU scaler. From that point onwards, I moved to 2160p Auto SR captures - as 4K is the final output resolution for the YouTube video.
Borderlands 3 may have been chosen as a 'best case scenario' by Microsoft from its supported titles owing to a bright, vibrant, distinct art style, but as you can see from the images on this page, there is no doubt whatsoever that the AI model can deliver substantially improved detail that seemingly did not exist before. It even does a reasonable job on tricky elements like grass, which look significantly cleaner. In my tests, I found that bright, colourful games like Borderlands 3, The Witcher 3 and Baldur's Gate 3 produce the best results.
Control was my test: again, I could see more detail in the upscaled output, but at the same time, as Remedy's TAA isn't particularly impressive, sub-pixel break-up and edge aliasing still remained obvious in the upscaled output. Additionally, film grain needed to be disabled as this could produce some weird results. Even so, while capturing the game at 4K, I also fed the output from the capture card into a 27-inch 4K screen. I can tell that it's obviously not a 4K image but the point is that it still looks noticeably better than standard bilinear or lanczos upscaling from the base 720p.
And while Microsoft is busy validating games that'll automatically turn on Auto SR, its status as a post-process gives it a flexibility that other upscalers do not. Cyberpunk 2077 is not a validated game, but I could enable it easily enough and it worked just fine. Again, it's no competition for native 1440p or 4K, but it presents in a pleasing enough manner to enable it as opposed to not enabling it. Bearing in mind that Copilot+ PCs will almost certainly come with relatively meagre integrated graphics solutions, it's a good value added feature.
The flexibility of Auto SR in running on everything also has some interesting possibilities. There's nothing stopping you using Auto SR upscaling on top of a game's existing upscaling features. First of all, I tried God of War, finding that while Auto SR-upscaled FSR 2 wasn't particularly attractive (effectively upscaling from 480p to 720p then to whatever output Auto SR uses), using the game's inbuilt TAA upscaler wasn't a disaster. Meanwhile on The Witcher 3, I actually found that using Intel XeSS at ultra quality mode upscaling to 720p produced the most temporally consistent image available and from there, Auto SR did the business. Upscaling on upscaling sounds like a disaster in the making, but ultimately, the flexibility is useful when GPU resources are limited.
You may have noticed from the video that while games like Control run well on the Snapdragon X Elite (it's mostly 60fps at low settings at 720p), titles like Cyberpunk don't run well at all. None of this is down to Auto SR, but rather the Snapdragon X Elite GPU, where even the Steam Deck GPU wipes the floor with it in the vast majority of games I tested. However, if the Copilot+ feature set is extended to, say, AMD Strix Point processors (which do have a 'qualifying' NPU), the utility of Auto SR will be much more pronounced - many more playable games means many more reasons to use Auto SR.
Of course, right now, it remains to be seen whether Auto SR will deploy on anything other than Snapdragon processors, but the possibilities are still intriguing - I ran my Auto SR captures on the AyaNeo Kun Windows handheld to get a feel for what it may look like. There's a definite increase in clarity, so may find some use, but the bottom line is that basic 720p still looks good enough - I guess it would come down to the power draw of the NPU, and whether the additional latency is noticeable.
So, Auto SR is no DLSS or XeSS, but it certainly has its uses and when it works well, the quality boost is appreciable. That said, it's safe to say that the quality increase is variable (Doom Eternal didn't seem to do much at all), and its absolutely essential that the quality of the input image is reasonable. Dark Souls 3 is supported out of the box, but its anti-aliasing is very, very poor and Auto SR can't seem to do much with it. Still, it's an intriguing start for the technology and I'll be following its progress with much interest.