ago 2011
Blog Casa

ESX 4.1: Compress, Don't Swap

Introduction

Memory, along with CPU, Storage and Networking, is one of the critical resources that could impact performance in a virtualization infrastructure.

A key virtualization objective is to achieve better server utilization, which is often measured by the server consolidation ratio - higher consolidation ratios are expected to lead to better server utilization, reduced data center energy consumption, and fewer physical servers to manage. One of the key tools to drive higher consolidation ratios is to "oversubscribe" or over-allocate computing resources such as memory.

The practical problem for virtualization architects is that, when memory is overcommitted (actual memory utilized exceeds physical memory available), memory swapping to slow disk will occasionally be initiated by ESX. Since memory swapping involves slow disk access, the VM performance will be impacted due to the much higher access latencies of disk storage (in milliseconds) vs. memory (in nanoseconds).

vSphere 4.1 now supports a new memory reclamation technology called Memory Compression. With Memory Compression in place, when a virtual page needs to be swapped, VMware ESX will first attempt to compress the page and store the page in a compression cache located in the main memory; then, the next access to the page only causes a page decompression which can still be completed in an order of magnitude faster than the disk access for swap files.

To give you a glimpse of how Memory Compression can alleviate performance impact caused by Memory Swapping, we performed several tests using artificial and controlled memory loads on 12 Windows 2003 VMs each configured with 4GB of memory. The 12 VMs are deployed on one ESX 4.1 HP® ProLiant DL380 G6 server with 32GB of physical memory. This amounts to 60% of memory over-allocation. Additional details on our configuration and tools can be found in this white paper

When we increase the artificial memory load to cause memory pressure, ESX starts to reclaim memory by way of Memory Ballooning, then Memory Compression and Memory Swapping. The following graph shows the performance impact of Memory Swapping without the use of Memory Compression on one of the Windows 2003 VM. In the following examples, we use the %LAT_M memory statistics which is the %time the VM was not scheduled due to memory resource issues.

The purple line shows that Win003 is impacted by significant latency, hovering around 100% starting at timeframe 337.

In contrast, we ran the same memory load test with Memory Compression enabled, as shown in the following graph:

As ESX 4.1 compressed memory pages to reclaim space, the impact on win003 is significantly reduced.

We will soon publish an new in-depth study on Memory Compression with the new vSphere 4.1 to provide more details.

Search for Kingston Server Memory

Author: YP Chien, Ph.D. - Kingston Technology