While vSphere has a number of features intended to maximize memory usage, Hyper-V has just two that are of importance. The first is known as Dynamic Memory and it works like this:
When an administrator installs the Hyper-V Integration Services inside a virtual machine, the installer adds a driver called the Dynamic Memory Virtual Service Consumer, which is basically a balloon driver. This driver watches RAM usage on the virtual machine and also tracks the actual needs of the virtual machine. The driver communicates this information to the host. The host can then decide, based on actual vs. necessary RAM, whether or not RAM can be borrowed from the virtual machine to serve other needs.
The second memory management technique in Hyper-V is new to Hyper-V 2012 and is called Smart Paging. For many workloads, RAM usage is actually lower when the virtual machine is running than it is at boot time. If the virtual machine could capture that unused RAM after boot, virtual machine density could be increased. That’s where Smart Paging comes in. On a reboot of a virtual machine, Smart Paging temporarily used storage as a memory cache to give the virtual machine sufficient RAM to boot. Once booted, everything goes back to its normal operating status and that excess RAM is able to be used for other things.