Running and benchmarking Windows 10 in M1 Mac using ACVM (QEMU)

Sai Balaji
Techiepedia
Published in
5 min readMar 17, 2021

Hello everyone in this article we are going to see how to set up Windows 10 ARM edition in M1 Mac using QEMU and benchmark it using GeekBench

No BootCamp in M1 Macs

Before introduction of M1 Mac Intel based Mac used BootCamp which allow the users to dual boot Windows in their Mac so that they can enjoy best of both worlds but in M1 Mac Boot Camp is not supported even though it comes with BootCamp installed when we try to open, it gives this error. Apple will fix it in future if Microsoft allows ARM Windows 10 edition to run in M1 Mac. But still ARM Windows 10 edition is still under insider preview so it may take some months or years.

QEMU is one of the possible solutions with some Limitations

QEMU is a free and open-source emulator and virtualizer that can perform hardware virtualization. QEMU is a hosted virtual machine monitor it emulates the machine’s processor through dynamic binary translation and provides a set of different hardware and device models for the machine, enabling it to run a variety of guest OS. It also can be used with Kernel-based Virtual Machine (KVM) to run virtual machines at near-native speed (by taking advantage of hardware extensions such as Intel VT-x). QEMU can also do emulation for user-level processes, allowing applications compiled for one architecture to run on another.

Getting Windows 10 ARM insider preview edition

Currently Windows 10 ARM is under preview and one can download it by joining Microsoft Insider program and download the VHDX file

Setting up Network Adapter for connecting VM to internet

Fedora infrastructure hosts virtIO drivers and additional software agents for Windows virtual machines running on kernel-based virtual machines (KVM). virtIO is a virtualization standard for network and disk device drivers. By default the VM is not connected to internet so we need to download an virtIO iso file to add network adapter to our VM it can be downloaded from here

Setting up QEMU

Here we are going to use ACVM which is a GUI based QEMU which makes creating VM easier than using CLI to create VM. Download the ACVM from here

ACVM is an open source project and it is available on GitHub you check it out here

Once downloaded launch ACVM and if Mac’s gatekeeper prevent it from launching then go to settings and give access to ACVM application.

  • Drag the Win10 VHDX file to MainImage box and virtIO ISO file to CDImage box
  • Set Ram depending upon your Mac's RAM capacity and set no of CPU cores to 4 or more
  • Press start now Windows 10 will boot and after initial set up you can see Windows 10 ARM edition running in M1 Mac.

Setting up Internet

Now as you can see the VM is not connected to internet so go to This PC in vm and open the iSO file which we have loaded and install netkvm.

This will set up the network adapter for your VM. To check this go to device manager in VM and Network Adapter you can see RedHat VirtIO Ethernet Adapter.

Now open the browser and you can see Internet works

Fixing Display resolution

By defualt whenever your VM it has a display resoultion of 640x480 to change this while booting the VM press escape key to enter into bios settigs here and follow the below steps

Now save it and select reset now it will boot it in 1024x768 resolution. But at present you need to do this step every time you boot into the VM in future the ACVM developer may fix it.

Benchmarking using GeekBench

Now we can compare our VM running Windows 10 ARM on M1 chip with Microsoft Surface Pro X running Windows 10 ARM natively without any VM in Microsoft SQ2 ARM Chip.

And here are the results

Surface Pro X with SQ2 Chip

Our VM running in M1 Chip with default CPU(4 cores),RAM(4gb) configuration

Conclusion

As you can see Windows 10 ARM edition running in M1 Chip inside a VM outperforms Microsoft SQ2 chip running it natively without any VM. So In future If Microsoft allows Apple to run Windows 10 ARM edition natively using Boot Camp with M1 GPU support then M1 chip will run the OS much better than Microsoft’s SQ2 Chip. And complete details about GeekBench test can be found here.

Stay Tuned and follow Techiepedia.

--

--