Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

eicca

Suspended
Original poster
Oct 23, 2014
1,773
3,604
With all this talk of Rosetta-ized x86 apps still running at impressive speeds, I got to thinking:

Once VMWare/Parallels figure out how to get Windows 10 running in VM, what are the odds that gaming in a VM will still outperform gaming in a native Win10 boot on my 2010 Mac Pro (or other moderate-spec gaming systems)?

I currently have the 2xE5620 2.4ghz quad-core CPU setup, with 12GB RAM, RX580 GPU, and even though lots of games say my processors are well below minimum required spec, they still run perfectly. Star Wars Battlefront 2, Star Wars Squadrons and Halo MCC are my three main games and they run just as well as my friend's brand new PC tower.

Given that the M1 butchers my processors in pretty much every conceivable way, I think we can reasonably expect that Win10 in a VM will still be plenty usable.

The catch is of course graphics. The M1 beats a 1050ti in benchmarks but not my RX580, so running in VM would cause an even bigger hit in that department.

That said, assuming Apple introduces more powerful GPU options in the future, I suspect that Windows gaming in a VM may yet bet a viable option, given how extraordinarily well the M1 runs translated apps so far.

Thoughts?
 

averagenerd81

macrumors 6502
Jun 2, 2020
252
798
Out there man
There is a lot to hypervisor virtualization to begin with. I think expecting any kind of performance that resembles something you would like to use is going to be a bit down the road, if ever. Hypervisor virt while also doing x86-64 translation is .. man I dont even want to think about it.
 

Janichsan

macrumors 68040
Oct 23, 2006
3,126
11,916
Once VMWare/Parallels figure out how to get Windows 10 running in VM, what are the odds that gaming in a VM will still outperform gaming in a native Win10 boot on my 2010 Mac Pro (or other moderate-spec gaming systems)?
Zero. The odds are zero.

Rosetta 2 does not support VMs. At all. Almost for sure never will.

There are only two ways you could ever run Windows 10 on Arm Macs: either MS allows Windows 10 for Arm to be sold separately and you virtualise this. This would allow you to run Arm-native Windows applications. All three of them.* Windows for Arm comes with its own x86 emulator, which performs mediocrely at best, has compatibility issues, and is pretty much completely unsuitable for any gaming except maybe Solitaire.

Second option: Parallels/VMware integrate their own emulator in their products. They don't seem to have any intention to do this, though. Such an emulator again would create a massive overhead impacting performance in a significant way and also most likely would be plagued with compatibility issues.

(* Yes, that's sarcasm. Probably there are five Arm-native Windows applications...)
 
Last edited:

gpat

macrumors 68000
Mar 1, 2011
1,931
5,341
Italy
You will probably better off running your x86 game on Windows on Arm, and leaving to Windows the translation process.
 

throAU

macrumors G3
Feb 13, 2012
9,198
7,348
Perth, Western Australia
Your only hope is running ARM Windows and having windows do the translation (which is unlikely as ARM windows is OEM only at the moment).

But I would not bank on it. Personally I'm getting rid of the PC for games and buying a PS5 for that.
 

AlexJoda

macrumors 6502a
Apr 8, 2015
817
619
Zero. The odds are zero.

Rosetta 2 does not support VMs. At all. Almost for sure never will.

There are only two ways you could ever run Windows 10 on Arm Macs: either MS allows Windows 10 for Arm to be sold separately and you virtualise this. This would allow you to run Arm-native Windows applications. All three of them.* Windows for Arm comes with its own x86 emulator, which performs mediocrely at best, has compatibility issues, and is pretty much completely unsuitable for any gaming except maybe Solitaire.

Second option: Parallels/VMware integrate their own emulator in their products. They don't seem to have any intention to do this, though. Such an emulator again would create a massive overhead impacting performance in a significant way and also most likely would be plagued with compatibility issues.

(* Yes, that's sarcasm. Probably there are five Arm-native Windows applications...)

Why should Parallels/VMware have no intention to create a X86 emulator? If they don't do it their business model for Macs is finished. Especially for Parallels this is a serious problem because the Mac product is their most important one.
 

KPOM

macrumors P6
Oct 23, 2010
18,308
8,320
You could try installing it with Codeweavers Crossover 20, which is a commercial WINE application. It doesn't emulate, but instead translates Windows instructions into macOS instructions. It doesn't work with all Windows programs, but does work with many. It doesn't work right under Big Sur 11.0.1, but does appear to work in the beta for Big Sur 11.1.
 

Janichsan

macrumors 68040
Oct 23, 2006
3,126
11,916
Why should Parallels/VMware have no intention to create a X86 emulator? If they don't do it their business model for Macs is finished. Especially for Parallels this is a serious problem because the Mac product is their most important one.
Neither ever had an emulation solution in their portfolio and it's not their expertise. Parallels is also offering a cloud-based virtualisation technology, in fact they just recently partnered with Google to bring cloud-virtualised Windows apps to Chrome OS. They could just offer that for the Mac.

VMware has been big in virtualisation solutions for servers and cloud-based VMs for longer already.

They probably will do fine when their local virtualisation products no longer sell.
 

wyrdness

macrumors 6502
Dec 2, 2008
274
322
Neither ever had an emulation solution in their portfolio and it's not their expertise.
But they must realise that there's a market for Windows x86 emulation on M1. I'd be quite surprised if Parallels aren't working on this, as their business model has a significant dependency on people who want to run Windows on Mac.
 

chrfr

macrumors G5
Jul 11, 2009
13,707
7,277
Why should Parallels/VMware have no intention to create a X86 emulator? If they don't do it their business model for Macs is finished. Especially for Parallels this is a serious problem because the Mac product is their most important one.
Most of VMware's business comes from enterprise solutions, not Fusion. Parallels/Corel is in a different position, and I'm sure both companies' engineers are looking at the possibilities but whether or not we end up with a way to run Windows via these two products is far from certain.
 

matram

macrumors 6502a
Sep 18, 2011
781
416
Sweden
I would imagine that writing an emulator, especially a x86 emulator (32-bit), would be quite complex. I wonder if there is really a business case here? I do not think VMWare would be interested, maybe Parellels have to give it a try.
 

nikidimi

macrumors newbie
Nov 13, 2020
17
12
I would imagine that writing an emulator, especially a x86 emulator (32-bit), would be quite complex. I wonder if there is really a business case here? I do not think VMWare would be interested, maybe Parellels have to give it a try.
It's not that big of a problem, there are x86 emulators for the ARM, even for iPhone (https://getutm.app/). The performance is the issue here. Translating each instruction in real-time in software is going to be a huge hit on performance
 

Janichsan

macrumors 68040
Oct 23, 2006
3,126
11,916
But they must realise that there's a market for Windows x86 emulation on M1.
That market would evaporate in an instant when the emulation is too slow or too incompatible to be of any real use.
I'd be quite surprised if Parallels aren't working on this, as their business model has a significant dependency on people who want to run Windows on Mac.
As I pointed out, they have solutions to provide this without emulation.
 

IowaLynn

macrumors 68020
Feb 22, 2015
2,145
589
CrossOver is in the game and from Parallels Blog:

"Parallels Desktop to universal binary and optimized its virtualization code; and the version that we are eager to try on these new MacBook Air, Mac mini and MacBook Pro 13″ looks very promising. Parallels is also amazed by the news from Microsoft about adding support of x64 applications in Windows on ARM."

 

playtech1

macrumors 6502a
Oct 10, 2014
695
889
Since Parallels' business model relies on getting Windows working on Macs, I think it highly likely they will incorporate an emulator into their product. I'm sure they would love for that emulator to be written by MS, but if it isn't then I bet they would first reach for an open source x86 emulator and build on that.

It's existential for Parallels, so I cannot see them just giving up and shutting down.

I remember the Virtual PC emulator for 68k and PowerPC Macs and it was very slow, but it worked just fine. I think CPU speeds are quick enough that for undemanding applications emulation will be fine.
 
  • Like
Reactions: wyrdness

Janichsan

macrumors 68040
Oct 23, 2006
3,126
11,916
Since Parallels' business model relies on getting Windows working on Macs, I think it highly likely they will incorporate an emulator into their product. I'm sure they would love for that emulator to be written by MS, but if it isn't then I bet they would first reach for an open source x86 emulator and build on that.

It's existential for Parallels, so I cannot see them just giving up and shutting down.
Once more: they are working on cloud-based solutions.

I remember the Virtual PC emulator for 68k and PowerPC Macs and it was very slow, but it worked just fine. I think CPU speeds are quick enough that for undemanding applications emulation will be fine.
The problem is that most people wanting to virtualise Windows and/or use Bootcamp don't do this for undemanding applications.
 

Anonymous Freak

macrumors 603
Dec 12, 2002
5,604
1,388
Cascadia
There were plenty of "emulate an Intel processor" solutions for Mac OS before Apple moved to Intel, there will be more again. (Although, ironically, Microsoft bought the most successful one and turned it in to Hyper-V.)

There are two things at play here -

"Native architecture hypervisor virtualization", which is what Parallels and VMWare are on Intel platforms. They just "pass through" the native code, while virtualizing/emulating the other hardware interfaces.

"Architecture emulator", which has been around a *VERY* long time, and is well-established. Microsoft has one for ARM Windows to run Intel code, even 64-bit Intel code. Microsoft had one in far older versions of Windows, when Windows NT 3.1 through Windows Server 2008 ran on alternate platforms like MIPS, SPARC, Alpha, PowerPC, and Itanium. It combines the virtualization above with full software emulation of the processor instruction set. This is also what Apple did with their previous transitions. The first PowerPC Macs ran almost 90% 680x0 code in the initial operating system versions. They had 680x0 emulator code in their boot ROM, so they could execute the almost-no-native-PPC-code early versions of System 7 and software. "Rosetta" started out as the PowerPC emulator for Intel.

While Apple's new method with Rosetta 2 seems to be different - translating the code at install or first-run, so that it stores ARM-native code for actual execution, rather than live-emulating an Intel chip. Obviously this works. When I tested Handbrake, running in Rosetta was only slightly slower than my theoretically-much-faster Intel Mac. (Handbrake ARM-native is buggy using the x265 encoder, it uses MUCH higher quality settings, taking far longer than it should producing a much larger file than it should.) So Rosetta 2 obviously isn't doing platform emulation.

We shouldn't expect truly emulated Intel to run anywhere near as fast as Rosetta 2 executed Intel code. Windows 3D games will almost certainly be terrible, since the emulator will have to translate not just the CPU code, but translate the GPU Direct3D code to Metal as well. With Rosetta 2, games are natively Metal, so the GPU is essentially "native". And even on Parallels on an Intel Mac, the 3D passthrough basically just passes through to the GPU code that Windows would natively support anyway, no translation.
 

MK500

macrumors 6502
Aug 28, 2009
434
550
I think the most promising tech for gaming may well be Crossover. Emulating an entire windows OS isn't going to go well. Better to try to get Rosetta to translate the needed Windows calls and Intel code:


 
  • Like
Reactions: Anonymous Freak

eicca

Suspended
Original poster
Oct 23, 2014
1,773
3,604
I think the most promising tech for gaming may well be Crossover. Emulating an entire windows OS isn't going to go well. Better to try to get Rosetta to translate the needed Windows calls and Intel code:



Promising. I wonder how well it could be made to work with Steam’s ecosystem.
 

bobbie424242

macrumors 6502
May 16, 2015
366
696
Your best bet would be Microsoft making an ARM version of Windows 10 that can be run in Parallels with a fast Rosetta 2 like translator of x86_64 to ARM. I would not hold my breath on this and the performance would be a big question.
 

Anonymous Freak

macrumors 603
Dec 12, 2002
5,604
1,388
Cascadia
Your best bet would be Microsoft making an ARM version of Windows 10 that can be run in Parallels with a fast Rosetta 2 like translator of x86_64 to ARM. I would not hold my breath on this and the performance would be a big question.
Microsoft has released a new ARM version of Windows 10 for their own Surface line - I could see them being willing to compile a version for Apple hardware, since it would be money in their pocket. Then you'd be able to take advantage of Microsoft's x86 emulator built in to the ARM version of Windows 10 to run Intel Windows programs.
 

Domino8282

macrumors 6502a
Apr 22, 2010
983
196
Southeast USA
Take a look at Shadow’s streaming service. You get your own remote, virtual gaming PC which you can install any game on and play remotely on just about any device assuming you have a good Internet connection.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.