Thursday, June 17, 2010

Dynamic Memory and RemoteFX in Windows Server 2008 R2 SP1

When I was at TechEd in New Orleans I got a chance to talk with Vijay Tewari, Principal Program Manager for the Microsoft Virtualization Team, about Dynamic Memory in the upcoming Service Pack 1 for Windows Server 2008 R2. 

In case you're not familiar with Dynamic Memory, this allows you to specify a minimum and maximum amount of RAM that a Hyper-V guest can use.  The VM will start with the minimum amount of RAM you sepcify and the host server will automatically reallocate additional RAM to the VM as needed, up to the maximum amount you have specified.  Dynamic Memory will also automatically reduce the RAM allocated when it is no longer needed.  Pretty sweet!  This provides higher density of VMs on a Hyper-V host since memory can be oversubscribed.  Keep in mind that if the VM's are using more memory than can be provided to them even after movng the memory amongst them, the OS inside the VM will start to page. This will obviously have an adverse performance impact in that VM.  Still, oversubscribing memory has big advantages especially for VDI deployments.  The good news is that now there are other ways to pool and allocate memory and Hyper-V Dynamic Memory is a good solution for desktop and server operating systems.

The other "big thing" in Windows Server 2008 R2 SP1 is RemoteFX.  This technology came into being when Microsoft purchased Calista Technologies in 2008.  RemoteFX allows the VMs on a Hyper-V host to access the host's Graphics Processor Unit (GPU) for superior video output in the guest. This allows remote workers to enjoy the same rich user experience over a network as with a locally executing desktop.  Remote clients only need to support the color depth required to view the output, so you can provide advanced GPU capabilities to all your remote clients using a GPU on the Hyper-V host.  RemoteFX can also use multiple GPUs in the host server to provide scale out.

RemoteFX is a feature that you enable on the Hyper-V host, not the VMs.  Once the RemoteFX feature has been installed a new option to enable the 3D graphics adapter is available within the settings of the guest VM.  This means that even though you've enabled RemoteFX on the host, resources are only allocated for the guests you choose. 

RemoteFX will require new Integration Components in the VM and will also require a new RDP client that supports the new capabilities, which should be available in the same release timeframe.  RemoteFX will also work with Remote Desktop Gateway deployments.  Microsoft recommends 200MB of graphics RAM per VM that uses RemoteFX.

The public beta for Windows Server 2008 R2 SP1 is expected to be released by the end of July 2010.  The same service pack is used for both Windows Server 2008 R2 and Windows 7, simplifying deployment. 10:52 AM