64-bit Intel Windows on Apple Silicon with UTM

For anyone who has an M1 (or M2) macOS machine, I recently had to figure out how to run x86_64 Windows 10 on my machine. After a lot of trial and error, I found a combination that works!

  1. Download the latest Intel 64-bit Windows 10 ISO you can get from Microsoft.
  2. You’ll need to download UTM
  3. Create a new machine
  4. Emulate: Select Emulate
  5. Operating System: Select Windows
  6. Windows: Select the iso from your drive. Install Windows 10 or higher (I’m using Win10_22H2_English_x64.iso)
  7. Hardware: Change Memory to 8192 and CPU Cores to 4
  8. Storage: Increase drive size to 128GB
  9. Summary: Check Open VM Settings
  10. Select System: CPU should be AMD Phenom™ 9550 Quad-Core Processor (phenom-v1)
  11. Select Network: Emulated Network Card should be rtl8139
  12. Click Save
  13. Start the VM
  14. When the display says “Press Any Key to boot from CD or DVD” press the spacebar

Be patient and answer questions. If you don’t have a Product Key, click “I don’t have a product key” at the bottom of the window. You’ll be able to enter one later in Windows.

NOTE: If the boot process fails, stop the VM and start it again. I’m having about a 10% failure rate but it has always booted the second time.

Screenshots. I’ve highlighted in red the things that you need to change:

3 Likes

BIG FREAKING NOTE: don’t set the number of CPU cores equal to the number of performance cores you have. Your machine will hang until it’s done with whatever it is doing. Been there, done that, got the t-shirt.

You will not get a full speed emulation out of this but it’s definitely fast enough for testing. I wouldn’t try to use this for gaming however as there is lots of stuttering.

Thanks, but why would you want to emulate x86 for the whole OS and not just for an application?

Well for one thing, Visual Studio runs like crap on Windows ARM. it’s at least usable in the emulated OS.

@Greg_O Very interesting !!!

In my opinion, the only drawback Apple Silicon has is not be ale to run Windows applications. Seems you found a good way to solve the issue. If the emulation is good, then you have a winner.

Thanks

Well to be fair, you can run x86-64 windows applications under Windows ARM on parallels. I do that now and it’s okay for testing, but I have found some weird differences. This gives me another avenue.

What may be really interesting here is if a similar technique will allow running older macOS versions available only in x86 as VMs. That is one thing I miss now on my Mx based machines, compared to my older Intel based macs.

Don’t have time to research right now, but perhaps a variation of this will let me bring over some older macOS VM’s from Intel machines.

Thanks for sharing.

Before I knew about UTM, I bought a refurbished Intel Mac mini and boosted its memory to 64GB just for that purpose.

But if I get curious, I may just figure out macOS as well.

Same here. UTM is really the best VM client when you have Apple Silicon device, and it’s free too.
And thank you for the guide to install Windows 10. Does it also work with Windows 11?

Edit:
With the latest UTM 4.1, there is no AMD Phenom™ 9550 Quad-Core Processor (phenom-v1). I did choose the upper choose in the list.

Please explain.

I have Visual Studio 2022 on the Windows 11 on ARM.
Works wonderful.

This speed, the silence from the fans on my Macbook is great.

Yes, from 2019 to 2022 a few little things may change and I may need a few more #if to build in both, but so far things seem to work.

So eventually I may use VS 2022 on ARM to build my Intel plugins.

I meant … I did choose the first choice in the CPU drop down menu.

Interesting. I found it completely unusable. I’m talking about “being able to type 3x faster than it could keep up with” slow.

Did you install the ARM64 version of VS2022?

or do you run the VS in emulation?

This runs on building, faster than the i9 in the Macbook. I can type and the menu command react much faster.

1 Like

I was not aware of an ARM version of VS. every time I download it, it has been Intel.

VS 2022 has a ARM Version since 17.4. But you have to uninstall VS 17.3 (Intel) before install. Installer is multi plattform, but if upgrading it keeps Intel Build.

Works great for me on M1 with parallels.

Some here. The Apple Silicon version is magnitudes faster.

VMWare on MacBook Pro with i9 CPU and 4 virtual cores building in VS 2019: 7 minutes and 57 seconds

Parallels on MacBook Pro with M1 Max CPU and 4 virtual cores building in VS 2022 ARM: 50 seconds.

And this is the project I use to work on Windows plugins directly in Visual Studio. I copied the project and converted it to VS 2022. Then build for Intel 64-bit on both.

Not sure how much of this is the crappy file sharing used by VMWare, the trouble of VS 2019 for using multiple CPU cores or the increased memory bandwidth on Apple Silicon.

1 Like

I have been UTM on my M1 Mac Mini for over 6 months now and no problem running windows ARM 10 and 11. Unfortunately the development ARM version of Windows 11 has now expired but it still runs ok, but with a prompt to purchase a key on startup.
Shared folders are good for accessing the Windows builds from the Mac for testing as well.
Tried the same with ARM Ubuntu under UTM but it wont start up.
Have created a x64 Linux Mint system with UTM but it is painfully slow (I believe it’s due to lack of Display drivers or similar).