Emulation is always slower and eats more battery. Microsoft’s laziness is proof they don’t care about that hardware, so may just as well buy an iPad Pro instead.
To add to what the other person said, there are some Windows-only games even today that run better on Linux than on Windows (I don’t have examples off the top of my head.)
Yuzu can exhibit superior performance because the Switch is rocking the Tegra X1 from 2015. Yuzu absolutely cannot beat the Switch with contemporary hardware and/or comparable power consumption.
Oh yeah, clearly I did not read the article well. Still, it doesn’t mean what you think it does.
First, Yuzu is more of an alternative API implementation than an emulator in this setup. The stock Switch OS and API implementation have been entirely replaced with Linux and the Yuzu implementation of the API. Given recent performance uplifts in the Linux kernel, I’m not surprised that Linux+Yuzu beats the first-party implementation.
Second, the use of the word “emulation” in the above thread is really a misnomer: Rosetta 2, Prism and the like all perform what is called dynamic ISA translation. Yuzu need not perform ISA translation when running on ARM hardware.
Its not laziness, they have lost developers support over time and lets be honest here, Windows 8 arm was roundly laughed out the door. Expectations are now marketing hallucinated by copilot.
This is typical Microsoft “agile”: minimum effort and delivery.
Emulation is almost always slower and eats more battery.
FTFY. There have been some cases where emulation actually outperforms native execution, though these might be, “the exceptions that prove the rule.” For example, in the early days of World of Warcraft, it actually ran better on WINE on Linux than natively on Windows.
To be fair this is also a translation layer and not an emulator.
Prism is an x86 emulator for ARM. If you think that Prism is “a translation layer and not an emulator”, I refer you to the very first word of the second to last paragraph of the submitted article.
I firmly maintain that if Microsoft gave a shit about ARM, they would be defaulting every one of their compilers to produce fat x86/aarch64 binaries. The reality is, however, that they don’t care about the hardware so long as it is good enough.
if Microsoft gave a shit about ARM, they would be defaulting every one of their compilers to produce fat x86/aarch64 binaries
Wasn’t the point of .NET once that native binary code isn’t needed? I’d say if Microsoft gave a shit about ARM, everything would have been ported to .NET.
The 68k to PPC transition was rough though. It wasn’t until system 8 that Mac OS on a PPC mac was fully PPC code. But that was also a much different Apple that’s nothing like the Apple of today.
Isn’t that the point? This new layer is supposed to make it easier to port everything, and they’re saying that’s what Rosetta did for Apple/Mac.
Translation layers aren’t porting
Fair enough, but to the end user it doesn’t matter if it works.
Emulation is always slower and eats more battery. Microsoft’s laziness is proof they don’t care about that hardware, so may just as well buy an iPad Pro instead.
To add to what the other person said, there are some Windows-only games even today that run better on Linux than on Windows (I don’t have examples off the top of my head.)
Wine is not CPU emulation.
This is a pretty interesting counter example: https://www.eteknix.com/running-yuzu-on-switch-gives-you-better-performance-than-native-gaming/
But, as others have said, exceptions confirm the rule.
Yuzu can exhibit superior performance because the Switch is rocking the Tegra X1 from 2015. Yuzu absolutely cannot beat the Switch with contemporary hardware and/or comparable power consumption.
But yuzu was running on the switch in that example. So it was beating the switch on contemporary hardware.
Oh yeah, clearly I did not read the article well. Still, it doesn’t mean what you think it does.
First, Yuzu is more of an alternative API implementation than an emulator in this setup. The stock Switch OS and API implementation have been entirely replaced with Linux and the Yuzu implementation of the API. Given recent performance uplifts in the Linux kernel, I’m not surprised that Linux+Yuzu beats the first-party implementation.
Second, the use of the word “emulation” in the above thread is really a misnomer: Rosetta 2, Prism and the like all perform what is called dynamic ISA translation. Yuzu need not perform ISA translation when running on ARM hardware.
I’m also not surprised and I still find it amusing. The ISA translation is something I never actually thought about in emulation
Just like wine is not a windows emulator, this will not be an x86 emulator
Its not laziness, they have lost developers support over time and lets be honest here, Windows 8 arm was roundly laughed out the door. Expectations are now marketing hallucinated by copilot.
This is typical Microsoft “agile”: minimum effort and delivery.
Not porting simple stuff like Minesweeper is definitely laziness on Microsoft’s part.
FTFY. There have been some cases where emulation actually outperforms native execution, though these might be, “the exceptions that prove the rule.” For example, in the early days of World of Warcraft, it actually ran better on WINE on Linux than natively on Windows.
WINE literally stands for “WINE Is Not an Emulator”.
To be fair this is also a translation layer and not an emulator.
Prism is an x86 emulator for ARM. If you think that Prism is “a translation layer and not an emulator”, I refer you to the very first word of the second to last paragraph of the submitted article.
That’s assuming the writer knows what they’re talking about. Last line from the second paragraph:
And first line from the third paragraph.
Wine is not an emulator
No, the point of Rosetta was to be a stop-gap for 3rd party software because Apple did all porting in-house software long ago.
Prism is Microsoft’s tool for staying lazy. Microsoft ships ARM-based Surface tablets since 12 years!!!
In all architecture transitions (PPC->Intel then Intel->ARM), Apple Chess has always been a native port from day one.
I firmly maintain that if Microsoft gave a shit about ARM, they would be defaulting every one of their compilers to produce fat x86/aarch64 binaries. The reality is, however, that they don’t care about the hardware so long as it is good enough.
Wasn’t the point of .NET once that native binary code isn’t needed? I’d say if Microsoft gave a shit about ARM, everything would have been ported to .NET.
The 68k to PPC transition was rough though. It wasn’t until system 8 that Mac OS on a PPC mac was fully PPC code. But that was also a much different Apple that’s nothing like the Apple of today.