Hyper-V Manager error when trying to start my 4th virtual machine:
- An error occurred while attempting to change the state of virtual machine. Unable to allocate MB of RAM. Insufficient system resources exist to complete the requested service. etc…
What is Memory Overcommitment?
Memory overcommitment is not a feature in itself, but a collection of technologies out of which “transparent page sharing” is the most interesting in my opinion. The usefulness of transparent page sharing will spring to mind immediately if you consider VDI environments. There, host machines typically run large numbers of identical client operating systems with the same applications installed on them. Since all the clients/guests run the same application set, most of the code pages they need to keep in memory are identical. Each guest keeps separate copies of all system and application EXEs and DLLs in memory – what a waste!
Now consider the following: in memory program code is organized in units of pages. If you had a component that identified all those identical pages in each guest’s virtual memory and map them to one set of pages in the host’s physical memory, you could reduce the code memory footprint of n virtual machines to that of one single virtual machine. And that is in a nutshell what VMware’s “transparent page sharing” does.