Memory management technologies
VMkernel (the hypervisor used by ESXi) employs these five memory-management technologies in order to economize the physical server’s RAM usage:
- Transparent page sharing – economizes the usage of physical memory pages by allowing pages with identical contents to be stored only once. This technique reduces the total number of memory pages consumed, which allows hosts to support higher levels of memory overcommitment.
- Ballooning mechanism – the balloon driver named vmmemctl, that is typically installed with VMware Tools, is used to respond to commands from VMkernel to reclaim memory from that particular guest OS.
- Memory compression – enabled by default on ESXi hosts, this technique attempts to reclaim memory by compressing pages when contention is high to avoid swapping out to a VM swap file.
- Host-level SSD swapping – involves using an SSD drive on the host for the host cache swap file.
- Swapping – memory pages are swapped out to disk in order to reclaim memory that is needed elsewhere. This is the last resort solution, since it comes with significant performance penalty.