Solved

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

Posted on 2015-01-09
32
296 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 117

Expert Comment

by:Andrew Hancock (VMware vExpert / EE MVE)
Comment Utility
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
Comment Utility
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
Comment Utility
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
 
LVL 117

Assisted Solution

by:Andrew Hancock (VMware vExpert / EE MVE)
Andrew Hancock (VMware vExpert / EE MVE) earned 100 total points
Comment Utility
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
Comment Utility
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
Comment Utility
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
Comment Utility
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
Comment Utility
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
Comment Utility
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
Comment Utility
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
Comment Utility
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
Comment Utility
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
Comment Utility
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
Comment Utility
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 117

Expert Comment

by:Andrew Hancock (VMware vExpert / EE MVE)
Comment Utility
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
Comment Utility
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
Do You Know the 4 Main Threat Actor Types?

Do you know the main threat actor types? Most attackers fall into one of four categories, each with their own favored tactics, techniques, and procedures.

 
LVL 61

Assisted Solution

by:gheist
gheist earned 100 total points
Comment Utility
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
Comment Utility
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 61

Expert Comment

by:gheist
Comment Utility
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
Comment Utility
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 61

Expert Comment

by:gheist
Comment Utility
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
Comment Utility
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
Comment Utility
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 61

Expert Comment

by:gheist
Comment Utility
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
Comment Utility
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 61

Expert Comment

by:gheist
Comment Utility
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
Comment Utility
"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
Comment Utility
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
Comment Utility
"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 61

Expert Comment

by:gheist
Comment Utility
It works same in 5.5 and never changed.
0
 
LVL 5

Author Comment

by:Dawid Fusek
Comment Utility
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
Comment Utility
thanks mates for good discussion,

kind regards
NTShad0w
0

Featured Post

Free Gift Card with Acronis Backup Purchase!

Backup any data in any location: local and remote systems, physical and virtual servers, private and public clouds, Macs and PCs, tablets and mobile devices, & more! For limited time only, buy any Acronis backup products and get a FREE Amazon/Best Buy gift card worth up to $200!

Join & Write a Comment

This article is an update and follow-up of my previous article:   Storage 101: common concepts in the IT enterprise storage This time, I expand on more frequently used storage concepts.
Veeam Backup & Replication has added a new integration – Veeam Backup for Microsoft Office 365.  In this blog, we will discuss how you can benefit from Office 365 email backup with the Veeam’s new product and try to shed some light on the needs and …
This Micro Tutorial walks you through using a remote console to access a server and install ESXi 5.1. This example is showing remote access and installation using a Dell server. The hypervisor is the very first component of your virtual infrastructu…
This video shows you how to use a vSphere client to connect to your ESX host as the root user. Demonstrates the basic connection of bypassing certification set up. Demonstrates how to access the traditional view to begin managing your virtual mac…

744 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

Need Help in Real-Time?

Connect with top rated Experts

17 Experts available now in Live!

Get 1:1 Help Now