Apple M3 nested virtualization

I’m about to buy a new Apple m3 Mac book pro, but part of my job is building virtual machine introspection tools - I’m using VMware Fusion right now with KVM inside.


Is it possible to run nested virtualization on Apple M3 pro?

Posted on Nov 30, 2023 01:50 PM

Reply
Question marked as Top-ranking reply

Posted on Jun 10, 2024 03:15 PM

Finally, macOS 15 introduces support for Nested Virtualization!

THANK YOU, Apple!!!


Now, for developing WSL2 support and building cloud sandboxes with virtualization within virtual machines, a separate computer will no longer be needed!


I’ve been waiting for this since the introduction of Apple Silicon processors, checking for this feature every release, and now the API is finally here!


I’m looking forward to the Parallels Desktop update more than ever!

isNestedVirtualizationEnabled | Apple Developer Documentation


9 replies
Question marked as Top-ranking reply

Jun 10, 2024 03:15 PM in response to ora600pl

Finally, macOS 15 introduces support for Nested Virtualization!

THANK YOU, Apple!!!


Now, for developing WSL2 support and building cloud sandboxes with virtualization within virtual machines, a separate computer will no longer be needed!


I’ve been waiting for this since the introduction of Apple Silicon processors, checking for this feature every release, and now the API is finally here!


I’m looking forward to the Parallels Desktop update more than ever!

isNestedVirtualizationEnabled | Apple Developer Documentation


Feb 1, 2024 01:01 AM in response to ora600pl

I have similar concerns. I've filed feedbacks to Apple via Product Feedback - Apple on adding nested virtualisation in the Virtualisation and Hypervisor frameworks. For many developers like the OP or me , this is a much needed feature. Just think about running WSL2 or Docker on Windows/Linux VM. From my point of view, this is also a decisive step for Apple's virtualisation frameworks to become mature. Hope Apple can see it and listen to such voices.

Jan 10, 2024 08:26 AM in response to SalmanHKhan

What Apple documents in the hypervisor framework is what we know about.


I would not suggest buying or using Apple silicon to run Windows x86-64, Linux x86-64, or any other not-AArch64 operating system. It might work within UTM via emulation, but it’s not going to be speedy. Even with a JIT.


If you want or need lots of guests or want or need nested guests akin to IBM VM on z/Architecture or akin to various of the x86-64 VM vendors can offer, use x86-64 hardware with the necessary virtualization support and associated hardware assists.


If you want nested-guest support in some future macOS version, let Apple know: Product Feedback - Apple


Jan 9, 2024 07:53 AM in response to ora600pl

I would advise against buying the M3 model of MacBook if you want to use it for nested virtualization. I purchased the M2 model in June of last year and have been trying to run virtual x86 machines on UTM since then. Unfortunately, I have been left quite disappointed due to the MacBook's lack of nested virtualization, which causes it to fall behind in terms of performance and usability. Overall, it feels like a pretty-looking dinosaur of a laptop. As a result, I have decided to sell my MacBook M2.

Jan 9, 2024 08:22 AM in response to SalmanHKhan

SalmanHKhan wrote:

I would advise against buying the M3 model of MacBook if you want to use it for nested virtualization. I purchased the M2 model in June of last year and have been trying to run virtual x86 machines on UTM since then. Unfortunately, I have been left quite disappointed due to the MacBook's lack of nested virtualization, which causes it to fall behind in terms of performance and usability. Overall, it feels like a pretty-looking dinosaur of a laptop. As a result, I have decided to sell my MacBook M2.


Buying an Apple silicon AArch64 processor for heavy x86-64 requirements is not an optimal purchasing choice.


Microsoft does support Microsoft Windows on AArch64 via Parallels, which avoids emulation for Windows itself.


Running Windows for AArch64 on Parallels may still need to emulate x86-64 apps (within Windows), but that’ll at least be running native code for the Windows system calls and related, where running Windows x86-64 on AArch64 via UTM necessarily emulates everything. Which will involve more overhead.

This thread has been closed by the system or the community team. You may vote for any posts you find helpful, or search the Community for additional answers.

Apple M3 nested virtualization

Welcome to Apple Support Community
A forum where Apple customers help each other with their products. Get started with your Apple Account.