Thursday, November 14th 2019

Microsoft Could Bring x86-64 App Emulation to Windows on ARM

According to the sources close to Neowin, Microsoft is expected to launch x86-64 (or x64 in short) emulation support for Windows on ARM (WoA) devices. Expected to arrive in Windows 10 21H1, or around 2020 for all the Windows Insiders, the new feature will enable a vast majority of apps made for Windows OS, currently built for x64 architecture, to run on ARM ISA and all Windows on ARM computers.

So far, only 32-bit x86 applications were able to be emulated, however, if these rumors are to be believed, many users of WoA devices should get a chance to run all of their favorite 64-bit software that was previously unavailable. The launch of this feature will boost the adoption of the WoA ecosystem with benefits reaching all existing laptop models, including Microsoft's newly launched Surface Pro X laptop that utilizes an ARM-based chip called SQ1 (customized Qualcomm Snapdragon 8cx processor).
Source: Tom's Hardware
Add your own comment

30 Comments on Microsoft Could Bring x86-64 App Emulation to Windows on ARM

#1
juiseman
Seems like it may be slow as crap...
Posted on Reply
#2
Easy Rhino
Linux Advocate
juiseman
Seems like it may be slow as crap...
If it is anything like x32 then yes it will be pretty unusable for graphic intensive apps. It would be interesting to have some sort of on chip hardware emulation of x64. I know that seems silly but would be truly useful. Sort of like the old math co-processors back in the i486 days.
Posted on Reply
#3
R-T-B
Easy Rhino
If it is anything like x32 then yes it will be pretty unusable for graphic intensive apps. It would be interesting to have some sort of on chip hardware emulation of x64. I know that seems silly but would be truly useful. Sort of like the old math co-processors back in the i486 days.
I mean, what you are proposing is basically implementing x86 isa alongside arm64.

At that point, why bother with arm at all?
Posted on Reply
#4
Deathy
R-T-B
I mean, what you are proposing is basically implementing x86 isa alongside arm64.

At that point, why bother with arm at all?
No.
Doing hardware emulation does not mean that the ISA is just implemented 1:1 and requires the same silicon footprint as for example an Atom core of the same speed. It should still be more area efficient, but also have a hit in performance. Energy wise, depends totally on the implementation.

Look at Project Denver by Nvidia. It never came out, unfortunately.
Posted on Reply
#5
R-T-B
Deathy
No.
Doing hardware emulation does not mean that the ISA is just implemented 1:1 and requires the same silicon footprint as for example an Atom core of the same speed. It should still be more area efficient, but also have a hit in performance. Energy wise, depends totally on the implementation.

Look at Project Denver by Nvidia. It never came out, unfortunately.
I mean, cisc x86 instructions are already emulated in a sense. They get broken down to risc-like micro-ops.

I really don't see how you can implement an isa 1:1 in hardware without... implementing it, really. I guess adding helpful instructions for software emulation would be one way, but I consider that more a "hybrid" approach.
Posted on Reply
#6
holyprof
Easy Rhino
If it is anything like x32 then yes it will be pretty unusable for graphic intensive apps. It would be interesting to have some sort of on chip hardware emulation of x64. I know that seems silly but would be truly useful. Sort of like the old math co-processors back in the i486 days.
No it's impossible. That would violate x86 patents which only Intel, AMD and VIA (at least they used to have a license in the past) can use and implement. Software emulation is permitted though.
So basically, as R-T-B said, why bother with ARM CPU if you will have a x86 CPU in the same system???

The future, as I see it, is:
  • x86 CPU from Intel or AMD - you want a real, "classic" PC Windows ecosystem, you can have it all the way from ultraportables up to huge multi-socket workstations and servers;
  • ARM running WoA with dedicated, compiled for ARM software (UWP platform) + x86 emulation for those old programs you can't live without on your thin ARM-based laptop with 3 days of battery life.
Posted on Reply
#7
R-T-B
holyprof
No it's impossible. That would violate x86 patents which only Intel, AMD and VIA (at least they used to have a license in the past) can use and implement. Software emulation is permitted though.
So basically, as R-T-B said, why bother with ARM CPU if you will have a x86 CPU in the same system???
Technically no, it is legal. They can do it as long as they do their own backend core implementation (Cyrix of old went this way) or simply translate in hardware on the fly (Ala Transmeta and similar brands).

holyprof
So basically, as R-T-B said, why bother with ARM CPU if you will have a x86 CPU in the same system???
Still, this.
Posted on Reply
#8
Easy Rhino
Linux Advocate
R-T-B
Still, this.
The surface pro devices are ARM. If you install an app not supported by ARM you have to install the 32bit version and it will then emulate the 32bit version using software.
Posted on Reply
#9
notb
Easy Rhino
If it is anything like x32 then yes it will be pretty unusable for graphic intensive apps.
What do you mean by "graphic intensive apps"? Games? No, this will not be suitable for games. I doubt anyone even analyzes this possibility.

But with a strong ARM CPU, this should be fast enough to run professional software like MS Office, Photoshop or Visual Studio.
So you end up with an ARM laptop that you don't have to turn off (similar to existing tablets), but it can run most of the stuff you need for work or everyday use.

Apple will provide a similar solution.

Of course x86 laptops will still be more robust and faster, but ARM tablets/laptops won't look like poor, disabled cousins anymore.

And in a more distant future (3-4 years?) we may finally see smartphones properly replacing PCs for most users. Today most people still have a Windows laptop lying around, because once a week they need to do something that Android/iOS apps can't help with.
Posted on Reply
#10
juiseman
3-4 years of desktop x86 Processor improvement will still be faster. I don't think AMD or Intel have any notion to stagnate in these "core wars" we are having now.
I could be wrong; but I don't see the desktop going anywhere soon. People have been predicting the death of the desktop for 20+ years now?
No doubt mobile will still gain more power though; just after it filters down the pipe...
Posted on Reply
#11
Easy Rhino
Linux Advocate
notb
What do you mean by "graphic intensive apps"? Games? No, this will not be suitable for games. I doubt anyone even analyzes this possibility.

Try running photoshop on a surface pro. You need to use the x32 emulation. Very slow.
Posted on Reply
#12
R-T-B
Easy Rhino
The surface pro devices are ARM. If you install an app not supported by ARM you have to install the 32bit version and it will then emulate the 32bit version using software.
Yeah, we were talking full on hardware implementing x86 above.
Posted on Reply
#13
notb
Easy Rhino
Try running photoshop on a surface pro. You need to use the x32 emulation. Very slow.
Surface Pro uses i5/i7 -U CPUs. You meant Surface Pro X?

No one said it will be fast. But try running Photoshop on an Atom x5. Also very slow (maybe worse). And Atom x5 will be rubbish for browsing web and multimedia as well.

The whole point of x86 emulation on ARM is that you'll be able to own a frugal, easy to use ARM device - it'll be very responsive when running ARM-optimized software, but also able to run more capable x86 software when necessary. Slow? Yes. But still more handy / cheaper than keeping and carrying a separate x86 laptop.

Of course this is not a solution for everyone. If you're going to emulate x86 software every day, just get a x86 system.
This is aimed at people who will use such functionality relatively rarely.

juiseman
3-4 years of desktop x86 Processor improvement will still be faster. I don't think AMD or Intel have any notion to stagnate in these "core wars" we are having now.
I could be wrong; but I don't see the desktop going anywhere soon. People have been predicting the death of the desktop for 20+ years now?
No doubt mobile will still gain more power though; just after it filters down the pipe...
2 separate things in this comment I have to answer.

I.
I meant x86 in general - not desktops in particular. And yes: x86 will be faster. But this is not a question of who is faster but rather: when will small ARM chips become fast enough for typical users. And this should happen in 3-4 years (ubiquitous 5/7nm).
For many this has happened already, but they still keep a Windows laptop for some tasks (i.e. editing photos from a trip, occasional MS Office and so on). My girlfriend uses her laptop maybe once a week. My parents: maybe once a month.
Functional x86 emulation will mean hundreds of millions of people can throw their laptop away. They'll just connect a mouse to their smartphone/tablet. :)

II.
Desktops are pretty much dead already. Only gamers and residents of poor countries use them.
Posted on Reply
#14
lexluthermiester
Correct me if I'm wrong, but this is old news, isn't it? They've been working on this for years, with some success.

notb
Desktops are pretty much dead already.
Myth. Desktops have seen a resurgence in the past few years because people are realizing that mobile devices will only do so much for them.
notb
Only gamers and residents of poor countries use them.
Also a myth.
Posted on Reply
#15
hellrazor
I like the idea, but I doubt it'll help Windows on ARM at all.
Posted on Reply
#16
notb
lexluthermiester
Correct me if I'm wrong, but this is old news, isn't it? They've been working on this for years, with some success.
32-bit emulation works. 64-bit doesn't.
Myth. Desktops have seen a resurgence in the past few years because people are realizing that mobile devices will only do so much for them.
Yeah, I'm pretty sure desktops are super popular among people who use illegal windows copies, since you usually get a proper one with a laptop.

I think I got tired by the "AMD outsells Intel" belief on this forum, so I won't even try to convince you.
I suggest that you simply check sales figures (mobile CPUs vs desktops CPUs vs gaming GPUs).
Posted on Reply
#17
lexluthermiester
notb
I think I got tired by the "AMD outsells Intel" belief on this forum
It's a fact at the current moment.
notb
so I won't even try to convince you.
Very wise.
notb
I suggest that you simply check sales figures (mobile CPUs vs desktops CPUs vs gaming GPUs).
As I run a retail shop, I can check my own numbers. But I digress...
Posted on Reply
#18
Ferrum Master
I've tried a PS2 emulator few days ago and it surprisingly ran...

So basically a brute force alien CELL PPC CPU reverse engineered emulation fetches 60FPS at FHD...

And some x86 apps will not? It is acceptable as an idea and pretty feasible already to run. ARM is getting really strong.
Posted on Reply
#19
Prince Valiant
notb
II.
Desktops are pretty much dead already.
How many years has this been spouted now? Maybe it'll happen around the same time ARM takes over computing.
Posted on Reply
#20
Vya Domus
R-T-B
Technically no, it is legal.
It's legal as long as Intel says it's legal. Denver never came to be exactly because Intel claimed this sort of emulation infringes on their IP.
Posted on Reply
#21
biffzinker
Ferrum Master
I've tried a PS2 emulator few days ago and it surprisingly ran...

So basically a brute force alien CELL PPC CPU reverse engineered emulation fetches 60FPS at FHD...
The Playstation 2 CPU is MIPS III R5900. The Playstation 3 was the one with PowerPC Cell BE CPU.
Posted on Reply
#22
R-T-B
Vya Domus
It's legal as long as Intel says it's legal. Denver never came to be exactly because Intel claimed this sort of emulation infringes on their IP.
There are actual court precedents establishing this.

Transmeta didn't ask Intel's permission.
Posted on Reply
#23
biffzinker
Wasn't there a kerfuffle about whether Microsoft could get away with x86-64 emulation back when 32-bit emulation was implemented? Something about Qualcomm too?

Vya Domus
It's legal as long as Intel says it's legal. Denver never came to be exactly because Intel claimed this sort of emulation infringes on their IP.
I thought Denver never took off because the performance wasn't any significant improvement over what ARM was already working on.
Posted on Reply
#24
Ferrum Master
biffzinker
The Playstation 2 CPU is MIPS III R5900. The Playstation 3 was the one with PowerPC Cell BE CPU.
My bad, screwed. Still a valid point. Performance of ARM is ready for such highly inefficient tasks.
Posted on Reply
#25
DeathtoGnomes
notb
II.
Desktops are pretty much dead already. Only gamers and residents of poor countries use them.
Wow, can you be anymore condescending?

For every poll that say desktops are on the decline, there is another one that says its on the rise. That means there are more and more gamers, right? or is it more gamers in poor countries?
Posted on Reply
Add your own comment