Solved

RAM compression software or hardware for VMware ESXi or MS Hyper-V

Posted on 2015-01-09
32
305 Views
Last Modified: 2015-01-26
Anyone remember software (like Quarterdeck MagnaRAM '97) or some old hardware memory compression solutions? Yep, old days, almost 20 years ago... when we have 1-8MB of ram in our PC.... and not so much more in mainframes...:P

I'm interested in that kind of software or hardware are available today, compression of VM's memory can be really interesting if done quick and because VM's memory are quite good compressable (up to 33% of original size).

Sure that software (or hardware) should compress only non active memory, so should be quite integrated with VMware ESXi or MS Hyper-V but it still looking possible and reasonable for me.

Any good suggestions are welcome :)

regards
NTShad0w
0
Comment
Question by:Dawid Fusek
  • 14
  • 6
  • 5
  • +2
32 Comments
 
LVL 119
ID: 40539706
I do remember them...

Not required anymore, because the algorithms in all hypervisors are very good when it comes to using shared memory, so it's happening all ready, e.g. compare VMware Workstation Memory usage performance against VMware vSphere Hypervisor (ESXi) with the same VMs.

Also memory and storage compared to 20 years ago, is much cheaper, so just add more memory.
0
 
LVL 5

Author Comment

by:Dawid Fusek
ID: 40539721
Andy, as always I just end to type my question... and here U are, it's Your answer...:P impressive !!!

Yep I know that VMware have best memory management feature on the market but still it's not so efficient like memory compression,

Is that requirement in today days...?? hmm, as always it depends, just add some memory to your HP MS if you have 16GB... U will end with it, and the requirements may be much more (like for me for example)...:P

I understand that today's Dual CPU servers may end up to 768GB of memory but this option is really not cheap and not always possible, so here are my question Andy.

regards
NTShad0w
0
 
LVL 38

Expert Comment

by:Philip Elder
ID: 40540425
We deploy Hyper-V standalone and clustered solutions. We've not had one ask around this at all.

Hyper-V is very efficient at memory management. It would seem to me that anything that tried to muck about with memory within the Windows Server OS would be more a detriment to the server's operations given our own experiences with the product.

Currently nodes are going out the door with 256GB or 512GB of physical RAM in them. Some configurations based on E5-2600v3 processors and chipsets will be hosting up to 3TB of RAM on a single node.

Given the way hardware has grown exponentially with this product version change I don't see the point? Currently 16GB sticks are the sweet spot cost wise. It won't be long before 32GB and 64GB DDR4 ECC sticks become the norm.
0
Use Case: Protecting a Hybrid Cloud Infrastructure

Microsoft Azure is rapidly becoming the norm in dynamic IT environments. This document describes the challenges that organizations face when protecting data in a hybrid cloud IT environment and presents a use case to demonstrate how Acronis Backup protects all data.

 
LVL 119

Assisted Solution

by:Andrew Hancock (VMware vExpert / EE MVE^2)
Andrew Hancock (VMware vExpert / EE MVE^2) earned 100 total points
ID: 40540506
Actively look at memory which you can "steal" from other VMs, otherwise add more physical memory.

If you have vSphere Operations Manager, run a report on wasted memory, you can reclaim.
0
 
LVL 28

Assisted Solution

by:asavener
asavener earned 200 total points
ID: 40540528
ESXi already has a compression mechanism, so you don't need a third party solution.

When you don't overcommit RAM on ESXi, it simply gives dedicated RAM to each guest.  As you begin to overcommit RAM, ESXi already has a built-in compression mechanism.   It finds the memory pages on each guest that are the same, and then keeps just one copy in RAM for each of those pages.  Since you're likely to be running the same or similar guest OS's, they have a LOT of memory pages that are the same.
0
 
LVL 28

Expert Comment

by:asavener
ID: 40540535
And I sure wouldn't run business- or mission-critical workloads on a host that had some third-party memory management software installed.

Your best bang for the buck is going to be either adding RAM or adding another host and distributing your load.  Anything else is a hack, and will end up biting you on the behind some day.
0
 
LVL 28

Expert Comment

by:asavener
ID: 40540558
Sorry, the feature I described earlier is transparent page sharing.

There is an additional memory management feature that kicks in when ESXi would be forced to swap to disk, which checks whether memory pages are good compression candidates.  Good compression candidates are compressed to avoid swapping to disk.

So, first the ESXi hypervisor tries ballooning to reclaim RAM from the guest.

Next, it uses transparent page sharing to reduce the physical RAM utilized.

Third, it uses compression techniques to avoid swapping to disk.

Finally, it will swap to disk if necessary.



Where would any third party software improve on this?

http://www.vmware.com/files/pdf/mem_mgmt_perf_vsphere5.pdf
0
 
LVL 38

Expert Comment

by:Philip Elder
ID: 40540571
Hyper-V has a feature called "Dynamic Memory" that is similar. One can overcommit memory to VMs with Hyper-V managing the amount of vRAM allocated to each VM.

However, Exchange and SQL are two examples of server workloads that do not support nor like dynamic memory configurations. So, depending on workloads YMMV.

As a rule, we do not dynamic memory any VM. We allocate static since low load VMs won't need a lot in the first place. In complex cluster configurations this would be one more bear to manage.
0
 
LVL 5

Author Comment

by:Dawid Fusek
ID: 40540573
Philip,

it as always depends, depends for example of costs, if U look for costs and how deep U have to look for these costs, in US/CA/UK as I know that's really not a problem for many companies, but in PL/EU it is really not a easy way even for bigger companies to buy a 3 servers with 768GB of mem for each.. :P, sure U can tell that in this situations they must have smaller needs, not exactly, rather they have just smaller margins, like for example my small company... Heeh it's really strange situation here, I have my own lab for about 150k usd for company that is in fact a self-employment company with services for other IT Pro and some B2B and B2C customers, and lot of Polish SMB companies that have 100-300 users have IT infrastructure for less than 5k usd... yep 5k usd... ok I agree that it can make a great place for selling them a lot of nice stuff... but it's not always easy to convert them that they need it at all... and additionally that it have to costs them so many (as they use unnamed PC as a servers with WinXP licenses....:P sure bigger companies and especially international (US, CA, UK, IR, IS, GR, NL) companies don't have such "problems" and the differences with money spent for IT stuff between same size Polish and international company is more than 100x I think... :P

so cos of that I asking sometimes "strange" questions ;-))

p.s. - as I know E5-2600v3 processors have still limit 768GB of ram per single CPU.

so, are there any such old-fashioned stuff like memory compression (HW or SW) for hypervisors???

regards
NTShad0w
0
 
LVL 28

Expert Comment

by:asavener
ID: 40540597
so, are there any such old-fashioned stuff like memory compression (HW or SW) for hypervisors???
The answer is "yes, but these features are already built in.  You do not need a third party product.  If your hosts are still swapping to disk, and causing performance slowdowns for the guests, then you've reached the limits of the hardware, and you need more hardware."

If you're asking "can I make 768GB of RAM look like 1024 GB of ram on the guest" then you would implement whatever software you need on the guest.  Virtualization is not emulation; the guest sees the hardware, and if you're running E5-2600v3 processors on the hypervisor, the guests will see E5-2600v3 processors, and will assume that the processor has the same inherent limitations.
0
 
LVL 5

Author Comment

by:Dawid Fusek
ID: 40540603
asavener,

Sure I know ESXi memory management, and that compression is possible but it is a last action taken before swapping, so it's not a memory compression mechanism/solution...

but ok, I can agree that if there is no such product on the market, vendors may not see such need and it's much easier to add a ram when possible or add another server which is much simpler in most times when U have full of ram old servers.

and additionally, as I write above, I rather talking about solutions for SMB/SOHO/lab.

regards
NTShad0w
0
 
LVL 5

Author Comment

by:Dawid Fusek
ID: 40540614
asavener,

"If you're asking "can I make 768GB of RAM look like 1024 GB of ram on the guest" then you would implement whatever software you need on the guest.  Virtualization is not emulation; the guest sees the hardware, and if you're running E5-2600v3 processors on the hypervisor, the guests will see E5-2600v3 processors, and will assume that the processor has the same inherent limitations."

...interesting idea mate, maybe it's a part of answer to my question.

regards
NTShad0w
0
 
LVL 38

Assisted Solution

by:Philip Elder
Philip Elder earned 100 total points
ID: 40540629
From: http://ark.intel.com/products/81818/Intel-Server-System-R2208WT2YS
-
Memory Specifications
Memory Types  DDR4 ECC 1333, 1600, 1866, 2133
# of DIMMs  24
Max Memory Size (dependent on memory type)  3072 GB

That is a dual socket solution.

We can build a cluster on a pair of R1208JP4OC and one DataON DNS-1640 JBOD with (24) 300GB 10K SAS drives for a very reasonable price. This is our starting point for SMB. We here in Canada pay a HUGE premium over US. Australia is similar in the price penalty paid. This goes for everything from hardware to software.

Again, there is no third party product that I know of that can "optimize" what is already optimized by the hypervisor whether VMware or Hyper-V.

It's an unfortunate place to be caught in, but it is what it is.
0
 
LVL 5

Author Comment

by:Dawid Fusek
ID: 40540836
damm, nice server, I need 2 of them (full of ram of course), heeh, but JBOD with 20x 4TB SATA and 4x 480GB SSD please :P

strange thing is that here:
http://ark.intel.com/products/81061/Intel-Xeon-Processor-E5-2699-v3-45M-Cache-2_30-GHz
intel said that max memory for them most powerfull E5-2669 v3 CPU is 768GB... so how they wanna fit 3072GB if this is dual cup server...? Maybe they have some plans that we don't know yet... and 128GB dimm's are also hardcore :P (but available I know).

ok, ok, I understand that U all want to convert me that there is no any good reason to use memory compression for today's world servers full of ram...

hmm, ok, while I think about it little more, maybe U are right mates, ram is really cheap these days and there is no huge problem to add more ram if U have a free slots or just add another server if U don't.

about prices (hw, sw and all), here in EUrope we have such tax called VAT (Value Added Tax) which have different rates in different EUropean countries and it's added to almost every price of everything on the market (not only IT, tech), foods, houses, water, power, cars, everything... here in Poland/EU we have 23% of VAT, so all US prices must be added these 23% of vat (for food there is also 8% and 23% rate of course), and of course sometimes have to pay a duty (5-45%, depends of a product) and some licenses taxes for energetic resources or other stuff (like a additional 12% for a power), so we have really (not only in Poland, but in EUrope) a lot of different taxes and the prices here because of these taxes are much higher than in US, for example cars here in EUrope are 1.7-2.5 times more expensive than in US !!!!! Don't belive??? heeeh here is an example:
Infiniti QX70 base model
- US Price - 46k USD (it's now 147K PLN, when USD/PLN was normal on 3.2:, now it's temporary up to 3.6:1 but polish prices didn't move so now difference will be lower)
- PL/EU price - 278k PLN which is (was until "oil/russia crisis") mean 87k USD :P

so this is 1.89 times more (89% more) for the same car !!!!, sure now the difference is lower because of unnormal high dollar price and cars vendor's didn't change the prices (not sure why) but standard is something like 2x cheaper for same car in US than EU !!!!

heeh, thanks for good point mates !!

regards
NTShad0w
0
 
LVL 119
ID: 40540843
yep, just stuff them full of ram!

cheap!

I remember paying over £32,000 for 4GB in 2000!
0
 
LVL 5

Author Comment

by:Dawid Fusek
ID: 40540974
OMG :P

but as I remember I bought 8MB to my PC in 94'-95' for 860PLN which was then 345 USD :P, so yep, in 2000 4GB server memory may costs 32k GBP :L

ok, it's clear, memory are extreme cheap now... :P
0
 
LVL 62

Assisted Solution

by:gheist
gheist earned 100 total points
ID: 40541428
vmware does that all:
http://www.vmware.com/files/pdf/mem_mgmt_perf_vsphere5.pdf
Only that it does deduplication of memory while idle only unless it falls under memory pressure. Then it goes for more CPU-costly options.
0
 
LVL 5

Author Comment

by:Dawid Fusek
ID: 40541673
yes gheist,

"Only pages that would otherwise be swapped out to disk are chosen as candidates for memory compression. This means ESXi will not proactively compress guest pages when host swapping is not necessary. In other words, memory compression does not affect workload performance when host memory is undercommitted" - Understanding Memory Resource Management in VMware vSphere 5.0, page 11

As far as I remember (and observe) it works different way in ESX v3.x but evidently in ESX 5.x it working that way, that it uses any memory management technique only if starting to run out of memory (undercommitted).

Do I miss it (v. 3.x memory management priority)...? hmm, maybe little yes.... so maybe why I asked about memory compression software/hw, that do it all the time, not only in extreme low memory condition... heeh

kind regards
NTShad0w
0
 
LVL 62

Expert Comment

by:gheist
ID: 40541703
swapping to disk still is bad. so vmware tries to avoid that by compressing RAM, even not completely successful - less data will go to disk - there is some benefit over v3 as you see.
0
 
LVL 5

Author Comment

by:Dawid Fusek
ID: 40541711
swapping to disk is one of the worses thing that may happens to VI, I always warn every my customer and everyone that use Virtualization to avoid swapping for any costs.
Yes, there are lot of benefits between VMware ESX/ESXi v3.x and v5.x, but there are also some disadvantages, ESX v3.5 ware faster than ESXi 4.x and ESXi 5.x with local RAID controllers with SATA disks.

regards
NTShad0w
0
 
LVL 62

Expert Comment

by:gheist
ID: 40541716
Nowadays the "all costs" is called "stuff maximum possible RAM in system" (or half if cost-effective)
0
 
LVL 38

Expert Comment

by:Philip Elder
ID: 40542634
We set a manual swap file of 4192MB Min/Max on the system partition for our Hyper-V hosts. This covers the dump aspects if the server went full-stop. No Hyper-V server would ever use the swap file.
0
 
LVL 5

Author Comment

by:Dawid Fusek
ID: 40551648
I test ESXi v5.5.0 b2068190 memory management last days and what I may say, it start to use their all memory management technique almost only when close or more than 90% of RAM are used, and he do it until free up to 10-15% of memory I think, then stops.

Good or not, it depends, mostly "Sharing pages" but it's working.

regards
NTShad0w
0
 
LVL 62

Expert Comment

by:gheist
ID: 40551954
Sharing pages takes little resources, so that is the only process that runs unless memory grows full.
Once it approches the end it tries to inflate baloons insiside guests, if that does not help, it goes on heavier memory saving techniques.
0
 
LVL 5

Author Comment

by:Dawid Fusek
ID: 40551970
gheist,

yes, but from practice it (Paging Sharing) almost not working when you use only for example 30-60% of a memory, or working very slow and start to working much faster when close to 90% of RAM usage or more.

regards
NTShad0w
0
 
LVL 62

Expert Comment

by:gheist
ID: 40551983
In ESXi advanced settings you find about 60 options to configure behaviour of vmwares memory management.
I'd say it is way too complex to comprehend on the spot.
0
 
LVL 5

Author Comment

by:Dawid Fusek
ID: 40551995
"In ESXi advanced settings you find about 60 options to configure behaviour of vmwares memory management.
I'd say it is way too complex to comprehend on the spot."


I know mate, I know, test it 2-3 years ago, also tune it once for View/VDI environment, but in most cases, even in view it working ok (not vgood not so bad) on defaults, but it depends as always about the environment.

regards
NTShad0w
0
 
LVL 28

Accepted Solution

by:
asavener earned 200 total points
ID: 40552017
Transparent page sharing only kicks in, now, when there's contention for memory resources.  I think up to 4.1 it was always active, and then 5.0 or 5.1 it changed.
0
 
LVL 5

Author Comment

by:Dawid Fusek
ID: 40552022
"Transparent page sharing only kicks in, now, when there's contention for memory resources.  I think up to 4.1 it was always active, and then 5.0 or 5.1 it changed."

Yes, exactly that change I also observe, and it' hard me to say that it's better or not.

regards
NTShad0w
0
 
LVL 62

Expert Comment

by:gheist
ID: 40552025
It works same in 5.5 and never changed.
0
 
LVL 5

Author Comment

by:Dawid Fusek
ID: 40571967
I think we may finish this topic mates,

if anything more do it fast, I closing it.

thanks for discussion.

best regards
NTShad0w
0
 
LVL 5

Author Closing Comment

by:Dawid Fusek
ID: 40571980
thanks mates for good discussion,

kind regards
NTShad0w
0

Featured Post

Complete VMware vSphere® ESX(i) & Hyper-V Backup

Capture your entire system, including the host, with patented disk imaging integrated with VMware VADP / Microsoft VSS and RCT. RTOs is as low as 15 seconds with Acronis Active Restore™. You can enjoy unlimited P2V/V2V migrations from any source (even from a different hypervisor)

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article will show you how to create an ISO CD-ROM/DVD-ROM image (*.iso), and MD5 checksum signature, for use with VMware vSphere Hypervisor 6.5 (ESXi 6.5). It's a good idea to compare checksums, because many installations fail because of a corr…
In this article, I will show you HOW TO: Suppress Configuration Issues and Warnings Alert displayed in Summary status for ESXi 6.5 after enabling SSH or ESXi Shell.
Teach the user how to rename, unmount, delete and upgrade VMFS datastores. Open vSphere Web Client: Rename VMFS and NFS datastores: Upgrade VMFS-3 volume to VMFS-5: Unmount VMFS datastore: Delete a VMFS datastore:
This video shows you how easy it is to boot from ISO images for virtual machines with the ISO images stored on a local datastore on the ESXi host.

809 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question