VMware Workstation 5.0Features | Documentation | Knowledge Base | Discussion Forums
Memory Use on the Host
Host operating systems do not behave well when they run low on free memory for their own use. When a Windows or Linux host operating system does not have enough RAM for its own use, it thrashes it constantly swaps parts of itself between RAM and its paging file on disk. To help guard against virtual machines causing the host to thrash, VMware Workstation enforces a limit on the total amount of RAM that may be consumed by virtual machines.
Some memory must be kept available on the host to ensure the host is able to operate properly while virtual machines are running. The amount of memory reserved for the host depends on the host operating system and the size of the host computer's memory.
Many workloads present opportunities for sharing memory across virtual machines. For example, several virtual machines may be running instances of the same guest operating system, have the same applications or components loaded or contain common data.
VMware Workstation uses a proprietary transparent page sharing technique to securely eliminate redundant copies of memory pages. With memory sharing, a workload often consumes less memory than it would when running on a physical machine. As a result, the system can support higher levels of overcommitment efficiently. The amount of memory saved by memory sharing is highly dependent on workload characteristics. A workload consisting of many nearly-identical virtual machines may free up more than 30 percent of memory, while a more diverse workload may result in savings of less than 5 percent of memory.
VMware Workstation memory sharing runs as a background activity that scans for sharing opportunities over time. The amount of memory saved may vary over time; for a fairly constant workload, the amount generally increases slowly until all sharing opportunities are exploited.
Specifying How Much RAM Is Used by All Virtual Machines
The second configuration parameter you can set is the amount of RAM that VMware Workstation is allowed to reserve for all running virtual machines combined. To set this parameter, go to Edit > Preferences > Memory.
The reserved memory setting specifies a maximum amount of RAM that VMware Workstation is allowed to use. But this memory is not allocated in advance. Even if multiple virtual machines are running at the same time, VMware Workstation may be using only a fraction of the RAM you specify here. Any unused RAM is available to be used by other applications. If all the RAM you specify here is in use by one or more virtual machines, the host operating system cannot use this RAM itself or allow other applications to use it.
The RAM used by VMware Workstation includes the RAM made available to the guest operating systems plus a small amount of overhead memory associated with running a virtual machine.
The amount of RAM actually used for a particular virtual machine varies dynamically as a virtual machine runs. If multiple virtual machines run simultaneously, they work together to manage the memory.
The recommended amount of RAM to specify for all running virtual machines is calculated on the basis of the host computer's physical memory and appears in the reserved memory control Edit > Preferences > Memory. If you want VMware Workstation to use more or less RAM, move this slider to change the amount.
If you set this value too high, the host may thrash when other applications are run on the host. If you set this value too low, virtual machines may perform very poorly and you cannot run as many virtual machines at once.
Using Additional Memory
By default, VMware Workstation limits the number of virtual machines that can run at once based on the amount of memory specified in the application settings. This prevents virtual machines from causing each other to perform poorly.
To allow more or larger virtual machines to run, you can adjust a third setting the amount of virtual machine memory that the host operating system may swap to disk. To change this setting, go to Edit > Preferences > Memory and change the additional memory setting. Select one of the following radio buttons: