Saturday, September 17, 2011

vSphere 5: Memory share calculation for mem.minfreepct

While I was reading up the vSphere 5 Clustering Technical Deep Dive book by Duncan Epping and Frank Denneman, I came across this section which took me to awhile to understand the calculation for the math part.

This section on memory share which has been changed in vSphere 5 which is also written in Frank Denneman, Mem.MinFreePct sliding scale function.

The example is as below:
Let’s use an example to explore the savings of the sliding scale technique. On a server configured with 96GB RAM, the MinFreePct threshold will be set at 1597.6MB, opposed to 5898.24MB if 6% was used for the complete range 96GB.
Free memory state Threshold Range Result
High 6% 0-4GB 245.96MB

4% 4-12GB 327.84MB

2% 12-28GB 696.32MB

1% Remaining memory 696.32MB
Total High Threshold

1597.60MB



I was trying to get the calculation for the Result column and thought to elaborate it on a clearer picture which a believe some are confused like myself.


The first 0-4GB will be on 6%, followed by from 4GB-8GB will be 4%(which is total of 4GB), then the next 12GB-28GB on 2% (which is 16GB) and lastly the remaining memory minus off from total on 1% (which is 68GB).  When you add those up would give you the Threshold.

Hope that helps how the math was derived.

2 comments:

Xsaron said...

Hi, in all the examples I've found, the 6 % value is used for the Mem.MemMinFreePct-setting. But what if you change this value? With the 6 %, the other percentages of the ranges are 4 %, 2 % and 1 %... But what if you change the 6 % to 10 % (for example!) ? Will the other percentages change too? I assume that the 4, 2 and 1 % are an outcome of 64 % of 6 % (which is 4 %), 32 % of 6 % (which is 2 %) and 16 % of 6 % (which is 1 %)...

So changing the Mem.MemMinFreePct-setting to 10 % would, following the above assumption, result in:
Range %
4-12 GB => 6 % (64 % of 10 %)
12-28 GB => 3 % (32 % of 10 %)
remaining => 1.6 ~ 2 % (16 % of 10 %)

Is this assumption correct? Or how does it work?

Thanks on advance!

KiOng said...

Duncan has replied to this. In vSphere 4.1 and prior, Mem.MinFreePct was available and can be changed. In vSphere 5.1, this setting is no longer available as an advanced setting and a "sliding scale" principle of 6/4/2/1 is used.
http://www.yellow-bricks.com/2013/06/14/how-does-mem-minfreepct-work-with-vsphere-5-0-and-up

VMUG Singapore VMC Session

With the launch of VMware Cloud (VMC) on AWS in Singapore back in April 2019, there has been lots of talk and questions. VMUG Singapore w...