VMware Cloud Community
RanjnaAggarwal
VMware Employee
VMware Employee

Memory Compression Cache

Where is memory compression in the vRAM or in Physical RAM is it reserved by default or only allocated in Memory Contention Scenario?

Regards, Ranjna Aggarwal
0 Kudos
8 Replies
weinstein5
Immortal
Immortal

If you are referring to Transparent Page Sharing then it is down in physical ram and is always active -

I have also moved this thread to a more appropriate forum -

If you find this or any other answer useful please consider awarding points by marking the answer correct or helpful
0 Kudos
RanjnaAggarwal
VMware Employee
VMware Employee

I am asking about memory compression

Regards, Ranjna Aggarwal
0 Kudos
julienvarela
Commander
Commander

Hi,

According to this : VMware vSphere 4 - ESX and vCenter Server

"ESX/ESXi provides a memory compression cache to improve virtual machine performance when you use memory overcommitment. Memory compression is enabled by default. When a host's memory becomes overcommitted, ESX/ESXi compresses virtual pages and stores them in memory.

Because accessing compressed memory is faster than accessing memory that is swapped to disk, memory compression in ESX/ESXi allows you to overcommit memory without significantly hindering performance. When a virtual page needs to be swapped, ESX/ESXi first attempts to compress the page. Pages that can be compressed to 2 KB or smaller are stored in the virtual machine's compression cache, increasing the capacity of the host.

  You can set the maximum size for the compression cache and disable memory compression using the Advanced Settings dialog box in the vSphere Client "

Memory compression does not reserve memory, it is only a process provided from your host to compress memory from 4KB to 2KB.

Regards,

Julien

Regards, J.Varela http://vthink.fr
0 Kudos
RanjnaAggarwal
VMware Employee
VMware Employee

Thanks for your reply but that i knew my question is when it is created when memory contention is there or by default and is this part of the vm memory or other than that?

Regards, Ranjna Aggarwal
0 Kudos
julienvarela
Commander
Commander

Hi

Memory compression is a process only active when memory contention is there. It is not a part of the vm because it is a process, and this process compress all 4KB block memory to 2KB all over your host.

Regards,

Julien

Regards, J.Varela http://vthink.fr
0 Kudos
RanjnaAggarwal
VMware Employee
VMware Employee

But for every vm there is a compression cache of 10% of allocated memory to VM then from where this is coming?

Regards, Ranjna Aggarwal
0 Kudos
a_p_
Leadership
Leadership

In case of contention, ESXi will use up to 10% (by default) of the VM's provisioned memory as compression cache. The memory required for the cache will automatically be freed up by the compression itself, i.e. by reducing memory pages from 4kB -> 2kB.

André

0 Kudos
julienvarela
Commander
Commander

Sorry, i haven't explain well.

By default vmware will reserve 10% for memory compression. This is the memory of the VM. It is the last process used by your host before swapped. The memory is reserved but not used. This cache will be used when your host doesn't have any memory available.

Here a great post about memory reclaimation : Vmware vSphere 4.1 Memory Compression Understanding | GeekSilver's Blog

Regards,

Julien

Regards, J.Varela http://vthink.fr