VMware Cloud Community
MiZo
Contributor
Contributor

Meaning of memory compression related metrics?

Hi,

I have a few questions about the memory compression related performance metrics available in vSphere 4.1 API. I found these metrics:

  • mem.zipped.latest
  • mem.zipsaved.latest
  • mem.compressed.average
  • mem.compressionrate.average
  • mem.decompressionrate.average

  1. Is there a documentation available for these counters? I could not find it on http://www.vmware.com/support/developer/vc-sdk/visdk41pubs/ApiReference/memory_counters.html
  2. I can guess the meaning of the rate counters, but what is the difference between compressed and zipped? In a test environment they are sometimes the same, but they can differ.
  3. How do zipsaved relate to them, e.g. memory_before_compression = zipped + zipsaved?
  4. Bonus: how do the above counters relate to mem.granted and mem.consumed?
    1. As far as my testing goes zipped is not included in granted, e.g. memory_total_size = granted + zipped + vmmemctl + swapped + not_allocated
    2. The compressed memory is stored in a compression cache according to this (http://www.vmware.com/files/pdf/techpaper/VMW-Whats-New-vSphere41-Performance.pdf). Is this counted in mem.consumed or is it a separate area?

Thanks for any help,

Zoltan

2 Replies
admin
Immortal
Immortal

Hi,

Please look into the document http://www.vmware.com/pdf/vsphere4/r41/vsp_41_resource_mgmt.pdf ; most of your queries related to memory will be resolved.

zipped -->  Total compressed physical memory.
saved  -->   Saved memory by compression.

Compressed  --> Amount of memory stored in the virtual machine's compression cache.

Compression rate average --> Average of the compressed memory per second.

decompressionrate.average --> Average of the decompressed memory per second.

Compression cache is accounted for the memory consumed by a VM. i.e. you set the size of the compression cache as a percentage of the memory size of the virtual machine. For example, if you enter 20 and a virtual machine's memory size is 1000 MB,  ESX/ESXi can use up to 200MB of host memory to store the compressed  pages of the virtual machine.

If you do not set the size of the compression cache, ESX/ESXi uses the default value of 10 percent.

Xsaron
Contributor
Contributor

So if I understand it correctly, there can ben more memory compressed than the size of the compression cache. The part that doesn't fit in the compression cache is swapped? Or ...

0 Kudos