Parallels run a similar thin wrapper on top of the OS-provided VM API which looks somewhat like: vm = createVM([device list]); vmWindow = createVMWindow(vm); vm.run();
Those are well known limitations of Apple virtualized OSes. The threshold for solving those issues involves using a different virtualization framework and a lot of reverse engineering.
Yes, I use macOS as development VM on a maxed out 16 inch M1 MacBook Pro. It all works as expected, except you don’t have any VM settings (e.g. how much ram / cpu you want to give the VM) and Docker doesn’t run inside the VM.
I’ve been using it on Monterey. It’s not nearly as optimized as virtualized Windows or Linux on the same hardware (most Parallels features like auto-scaling not available yet), but I think the situation should improve with Ventura.
Edit: many people download the default parallels; you need to download the parallels from this page https://www.parallels.com/blogs/parallels-desktop-apple-sili... to be able to have access to M1 virtualization.