Windows 10 To Support ARM Chips With X86 Emulation Next Year; Qualcomm Chips First To Support It

Qualcomm announced that through a collaboration with Microsoft, its next generation ARM-based chips would be able to run legacy Win32 programs. If the effort were successful, Qualcomm and other ARM chipmakers would suddenly become a much bigger threat to Intel's PC chip monopoly. Qualcomm also recently announced the world's first 10nm 48-core ARM-based server chip. If Microsoft decides to offer Windows Server flavors for ARM servers it could present even more problems for Intel.

ARM And Windows

So far, Microsoft has attempted to get developers to write new applications that were compatible with both the ARM and x86 architectures through its Universal Windows Platform. However, the two operating systems that were supposed to make ARM appealing to developers - Windows Phone/Mobile and Windows RT - both failed with consumers.

The two operating systems, and especially Windows RT, had a chicken and egg problem with apps. Consumers wouldn’t buy the devices running them because there weren’t enough apps to make it worthwhile, and developers didn’t build more apps because there wasn’t really a market for them.

With AMD being on a strong decline in the past few years, Intel needed more competition. It looked like ARM would be able to provide that competition, at least in terms of offering competitive chip performance at low power levels.

However, without those chips also being able to run most existing Windows programs, the game was over before it even started. If Microsoft could somehow make x86 apps work on ARM chips well enough, then ARM chipmakers would suddenly be able to build notebooks that are competitive in every way to the Intel-based ones. The ARM-based notebooks would probably have to start at the lower end of the spectrum, but that also happens to include a big portion of the market.

It now looks like Microsoft is going to make it so that ARM chips can run all x86 programs, starting next year.

Qualcomm, First To Emulate Win32 Programs

Qualcomm said that devices based on its next-generation processors would give users the “full Windows experience.” It then specifically mentioned that its chips would be able to run both UWP apps and Win32 legacy programs through emulation.

“Qualcomm Snapdragon processors offer one of the world’s most advanced mobile computing features, including Gigabit LTE connectivity, advanced multimedia support, machine learning and superior hardware security features, all while supporting thin, fan-less designs and long battery life,” said Cristiano Amon, executive vice president, Qualcomm Technologies, Inc., and President, QCT. “With full compatibility with the Windows 10 ecosystem, the Qualcomm Snapdragon platform is expected to support mobility to cloud computing and redefine how people will use their compute devices,” he added.

The ARM ecosystem isn’t nearly as standardized as the x86 ecosystem is, mainly because there are so many more competitors, but also because ARM itself wants to give chipmakers some liberty to further customize ARM-based chips, which creates some incompatibility between the chips. Because of the scattered compatibility matrix, Microsoft will likely not be able to support x86 emulation on all ARM chips at first.

The company may also start out with not just a select few chipmakers, but likely with only a few ARM chip models, too. That’s because of the lack of standardization, but also because the first ARM notebooks that can emulate x86 applications will need to have enough performance to run smoothly.

ARM chips have attained notebook-class performance over the past few years already, proven not just by a handful of ARM-based Chromebooks and by Apple's increasingly more powerful "PC-class" ARM chips, but also by Intel itself. Intel replaced the Core architecture in the lower-end Celeron and Pentium chips with the Atom architecture. Atom, which has similar performance to higher-end ARM chips, was getting good enough to be used in lower-end notebooks (and because it costs Intel less to make Atom chips than it does for Core chips).

However, despite high-end ARM chips now being able to offer a reasonably good desktop computing experience when running native platforms, it remains to be seen if the same will remain true for the x86 emulation. How fast and efficient the emulation is will largely depend on Microsoft’s implementation.

Qualcomm said that the first devices to use its ARM chips and emulate legacy Windows programs would be available in the second half of 2017.

Lucian Armasu
Lucian Armasu is a Contributing Writer for Tom's Hardware US. He covers software news and the issues surrounding privacy and security.
  • alextheblue
    You'll still want native code for maximum performance. But a lot of Win32 programs don't need extreme horsepower, and even with emulation will run well enough. So while it won't replace UWP, it fills in the gaps where their existing tools, APIs, bridges, etc aren't yet reaching. With MS and Qualcomm both putting resources towards it (special instructions or other CPU tweaks, OS-level optimization) it's viable. With Intel abandoning their low-margin low-power Atom efforts, MS probably felt like they need to give it a shot.

    Now, while this may work fairly well on a ~5-15W tablet/hybrid/laptop model, I'm not certain about phones and Continuum. They may very well be able to pull it off, but it would need the highest-end low-power chip they can get their hands on to allow for a Win32-capable Continuum experience. For now though they need to continue to make improvements to Continuum, which are already in the pipe, to give it a more desktop-esque operation when docked.
  • tntom
    Looks like the Surface Phone is right around the corner.

    This is potentially really big if they execute it well. Win10 might just accomplish what everyone envisioned Apple would do (combine OSX and iOS) but never did when Macbook Air and iPad came out.
  • So, hummm, QEMU on Windows? Having used Hyper-V, I'm not really impressed by Microsoft answer to virtualisation, and I doubt their emulation will be better than what already exists. If it's transparent enough, probably it will get some traction. Hyper-V did and it's terrible (IMO).

    Microsoft is facing huge obstacles. On one hand, web apps rendering the OS irrelevant. On the other, emulation and virtualisation rendering the OS irrelevant.

    At an extreme point, the only reason to be OS specific are performance and ecosystem, and those are where I still see Microsoft shinning, i.e. gamming and legacy.

    Unfortunately, I don't see possible growth for Microsoft in other areas. They won't be in servers or phones. At least they are trying.
  • RedJaron
    18975091 said:
    Looks like the Surface Phone is right around the corner.
    I want this to be the case, but I have my doubts. I've been very disappointed with how MS has handled Windows Phone in the last two years.

  • ZolaIII
    Mufff this is going to fall. A entry lv phone SoC this day's equipped with quad core ARM A53 @ 1.5GHz is capable of running full 64 bit Linux distros smooth for a native windows however it would need to be clocked at around 2 GHz for a same effect & as this is going to be a emulation & it will be about 60% efficient that brings us to quad A57 @ 2 GHz or quad A72-73 @ 1.8 GHz this is still at least a high end mid range SoC's & still doesn't meet efficiency needs for most pocket devices. Naturally you need much more than that for a specialised high end programs. To make this work Microsoft do need a emulator but for legacy programs while they parallel build a native translation to ARM V8 instruction set of the current or future OS & programs. That's the only way I see this working so this just another shortcut attempt is going to fall like others before.
  • Clamyboy74
    Ready for when someone manages ro run windows 10 on an iPad/phone?
  • falchard
    This will make Windows Phone slightly more appealing.
  • NightLight
    this is kinda huge!
  • alextheblue
    18975694 said:
    To make this work Microsoft do need a emulator but for legacy programs while they parallel build a native translation to ARM V8 instruction set of the current or future OS & programs. That's the only way I see this working so this just another shortcut attempt is going to fall like others before.
    The OS and it's APIs/libraries are native ARM. Most if not all of MS' software is going to be native ARM. All of the Modern RunTime UWP apps are going to be compiled to native or near-native (IL) as needed. Seamless OS-level x86 emulation is only utilized when necessary, for Win32 programs. Even then, the performance penalty, while steep, isn't as bad as I initially thought. The video of them running Win32/x86 World of Tanks on a Snapdragon 820 was impressive. It's a great way to bridge the gap between Windows on x86 and Window on ARM. Oh and they DO have bridges leading to UWP (which run on x86 and ARM), for developers. But even if they achieve a critical mass of UWP software, that doesn't completely negate the need for Win32, so this is a good step for them to take.

    Oh, and they're going to have hardware requirements. By the time it is released, they may require specific Snapdragon model(s) that not only meet or exceed the performance of the 820 they were demoing it on, but also may have specific optimizations for x86 emulation. Initially it looks like they're targeting tablets and laptops, so clockspeeds should be fairly high too.
  • DOA, next