MacInTouch Amazon link...

virtualization

Channels
Products, Questions
In my experience, this is mostly due to not having enough RAM. 8 GB is plenty for most common desktop applications, but if you need to run several VMs at once, you may find yourself needing to assign that much memory to each one of them. If you're running (for example) four VMs, each one with a comfortable desktop environment, then those VMs are probably going to require a total 32 GB of RAM (plus memory for the host environment). If the host doesn't have that much, you will start swapping, which will kill the performance of them all.
Available CPU cycles can also be a bottleneck, but only if the total number of virtual CPUs (across all your VMs) exceeds the number of hardware threads provided by the host, and even then only if the software running in the guest operating system is keeping them all busy. Most of the time, you can overcommit virtual CPUs by a factor of 2:1 or even 3:1, depending on how CPU-intensive the workload is at any given time.
This is why computers sold as dedicated VM hosts tend to have dozens of CPU cores/threads and hundreds of GB of RAM - to avoid these bottlenecks.
That's a lot of good information and has been pretty much what I've experienced for a single user with multiple VMs running. But I've also found that multiple simultaneous users creates a much more severe burden for Parallels than the number of VMs running. I'm guessing that, for each user, a new instance of the Parallels application is created, each competing for resources. This results in the console user experiencing very jerky and slow performance.

It's likely that Fusion handles this situation much better, given its broader use in that kind of environment.
 


I've also found that multiple simultaneous users creates a much more severe burden for Parallels than the number of VMs running. I'm guessing that, for each user, a new instance of the Parallels application is created, each competing for resources. This results in the console user experiencing very jerky and slow performance.
I hadn't though about that, but you're right. If two users are each running their own instance of the hypervisor, there is going to be resource contention that doesn't exist when all users are accessing the same hypervisor.

My experience with multi-user VM environments has been using VMWare's free vSphere Hypervisor product. This is a "bare metal" hypervisor that runs without an underlying operating system. The computer boots directly to vSphere, which in turn starts running whatever VMs you have configured to auto-start with the computer.

In this environment, there is never more than one instance of the hypervisor running. Multi-user capability is implemented by creating users in the vSphere management interface (granting different users different rights) and by managing who has access to (remotely) log in to the various running VMs.

vSphere is commercial product, but anyone can get a free license. The free version limits you to 8 CPU cores per VM and doesn't allow advanced clustering and management of a network of VM hosts, but is otherwise fully functional. I don't know if it can be run on Mac hardware.
 


... The free version limits you to 8 CPU cores per VM and doesn't allow advanced clustering and management of a network of VM hosts, but is otherwise fully functional. I don't know if it can be run on Mac hardware.
ESXi isn't officially supported on the current Mac Mini or new Mac Pro. The old 2009-2010 models got officially listed. ESXi won't run or work with the T2 SSD subsystem, but if you allocate [non-T2] hardware, it works for 'lab' work.
 


Check Point Research said:
Evasions: macOS
... Apple software licensing policy doesn’t allow emulating macOS on hardware other than the original Apple hardware. It is also doesn’t not allow more than 2 virtual machines to run on one host machine. ...
Does this quote from Checkpoint mean that I must be hallucinating when I have four VM instances running on my macOS system? Or, perhaps, is this just an ambiguous reference in the quote?
 


Does this quote from Checkpoint mean that I must be hallucinating when I have four VM instances running on my macOS system? Or, perhaps, is this just an ambiguous reference in the quote?
The macOS software license agreement states in Section 2B(iii) that "you are granted a limited, non-transferable, non-exclusive license to install, use and run up to two (2) additional copies or instances of the Apple Software within virtual operating system environments on each Mac Computer you own or control that is already running the Apple Software, for purposes of: (a) software development; (b) testing during software development; (c) using macOS Server; or (d) personal, non-commercial use."

That clause goes (unchanged) all the way back to the Lion license agreement, which was the first version of Mac OS X (guest) that allowed virtualization in the license agreement.

So yes, technically, if you have more the 2 macOS VM's installed, you're in violation of the license agreement. Fortunately, none of the hypervisor software providers have taken any technical measures to try to enforce that part of Apple's license agreement.
 


Todd, thanks for the clarifying quote. Checkpoint should have said, "2 macOS virtual machines", as the quoted license agreement puts no limits on Windows, UNIX, Linux, etc. VMs.

I consider "install, use, and run" to be a combinatorial and. Even further, a VM instance is only installed and capable of use if the volume containing the VM files is connected and mounted. (This is a good use for recycled SSDs that were replaced with larger drives. 64GB is enough for modest Windows OS uses and more than enough for most OS X or macOS uses.)

My most-used VM set on my production machine is Windows 10, Snow Leopard Server, Catalina Beta, and Sierra. A simple view is that Apple's limits are met if only two of the three OS X/macOS VMs are plugged in and running at one time.
 


Amazon disclaimer:
As an Amazon Associate I earn from qualifying purchases.

Latest posts