ARM64EC mixes Arm and x64 emulated code in Windows 11 for higher performance on Arm

Windows has been available on Arm for a few years, and while software support has progressed there have always been some limitations, and emulated x86/x64 code on Arm does not usually run as fast as native ARM32/ARM64 code.

So far developers had a binary choice: run their x86/x64 app on Arm using emulation, or port the entire app to Arm, But Microsoft has now come up with a solution that mixes x64 emulation and native Arm with ARM64EC (Emulation Compatible).

ARM64EC Windows 11

That means developers won’t need to port the complete app to Arm, but instead could do so step-by-step and focus on part of the code where native Arm support makes the most difference.

Microsoft explains:

ARM64EC is a new application binary interface (ABI) for Windows 11 on ARM that runs with native speed and is interoperable with x64. An app, process, or even a module can freely mix and match ARM64EC and x64 as needed. The ARM64EC code in the app will run natively while any x64 code will run using Windows 11 on ARM’s built-in emulation.

the ARM64EC ABI follows x64 software conventions including calling convention, stack usage, and data alignment, making ARM64EC and x64 interoperable. Apps built as ARM64EC may contain x64 code but do not have to, since ARM64EC is its own complete, first-class ABI for Windows.

Microsoft is using ARM64EC in Windows 11 where all binaries have been rebuilt with ARM64EC in order to let x64 apps run native system code. They are also using the new ABI with 64-bit Office for Arm, not for the main program that is written using native Arm code, but for existing x64 plugins that can work normally with the updated program.

So I’d expect a significant performance boost in Windows 11 on Arm compared to Windows 10 for a significant number of programs. Developers can download the latest Windows Insider SDK build and Visual Studio Preview (version 16.11 preview 2 or later) to get started with porting apps to ARM64EC.

Share this:

Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress

Radxa Orion O6 Armv9 mini-ITX motherboard
Subscribe
Notify of
guest
The comment form collects your name, email and content to allow us keep track of the comments placed on the website. Please read and accept our website Terms and Privacy Policy to post a comment.
3 Comments
oldest
newest
Boardcon CM3588 Rockchip RK3588 System-on-Module designed for AI and IoT applications