1 / 45

Hyper-V and Dynamic Memory in Depth

VIR306. Hyper-V and Dynamic Memory in Depth. Bryon Surace Senior Program Manager Windows Server, Hyper-V Microsoft. Agenda. Memory & Virtualization Memory Optimization Techniques Hyper-V Dynamic Memory Architecture & Concepts Demo System Impact Q&A. Memory & Virtualization.

katriel
Télécharger la présentation

Hyper-V and Dynamic Memory in Depth

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. VIR306 Hyper-V and Dynamic Memory in Depth Bryon Surace Senior Program Manager Windows Server, Hyper-V Microsoft

  2. Agenda • Memory & Virtualization • Memory Optimization Techniques • Hyper-V Dynamic Memory • Architecture & Concepts • Demo • System Impact • Q&A

  3. Memory & Virtualization

  4. Virtualization & Memory • How much memory does a server actually need? • IIS Server? • Print server? • File server? • Branch Cache? • Direct Access? • How much will performance be affected if you halved the amount of memory in a VM?

  5. Customer: Not certain how to size “New virtual machines get 1GB of RAM [no matter what the VM is running]. I only give people more memory if they complain about performance” “All VMs get 4GB of RAM [I have no idea what is happening with that memory] and no one complains” “I take the minimum system requirements and add (insert one: 50%, 100%, 150%)” “A vendor tells me their app needs 4GB of RAM. I do not have the time to test this to find out if it is true or not”

  6. Virtualization & Memory • Memory • Key Factor to the number of running VMs • The most utilized asset in the system, but also a more expensive asset • Statistics on resource utilization of workloads • CPU 10% • Memory 40% • Network I/O <5% • Disk I/O <5% • Customer Requirements • Maximum density, without sacrificing performance • Maintain consistent performance • Don’t provide a feature that’s unsuitable for production use

  7. Memory Management & Optimization Techniques

  8. Ballooning • How it works: • Increasing the size of the balloon forces the guest to react to memory pressure by releasing unused pages • Decreasing the size makes more memory available to the guest VM VM VM Swap In Swap Out Memory Memory Memory Balloon Balloon Balloon Disk Ballloon Disk Disk Deflate Deflate Inflate Host Computer Host Computer Host Computer

  9. Page Sharing

  10. External Page Sharing • How it works: • Eliminate redundant copies of memory pages common to more than one virtual machine • Hash all memory and store it in a table… • Identify the common hashes and then… • Perform a bit by bit comparison • Problems • Page Sharing not dynamic • Can take hours to share pages • The largest benefit are zero pages • Doesn’t work with large pages

  11. Second Level Paging

  12. Second Level Paging • How it works: • Paging at the virtualization layer by swapping VMs memory out to disk • Many problems: • Swapping Guest Kernel Resources • Double Paging • Disks are slow • But it always works…

  13. Second Level Paging • Issue: Memory vs Disk Performance • Memory Access: • DDR3-1600 = 5 ns; DDR3-1333 = 6 ns • DDR3-1066 = 7.5 ns; DDR3-800 = 10 ns • Disk Seek Time: ~8 milliseconds • Formula for comparing DDR3-800 to disk: .008/.000000010 • DDR3-1600 memory is 1,600,000 times faster than disk • DDR3-1333 memory is 1,333,333 times faster than disk • DDR3-1066 memory is 1,066,666 times faster than disk • DDR3-800 memory is 800,000 times faster than disk

  14. Other Techniques • Guest directed page sharing • Memory compression • And on…

  15. Hyper-V R2 SP1Dynamic Memory Architecture & Concepts

  16. Dynamic Memory Goals • Higher VM consolidation ratios with minimal performance impact • Dependent on: • How much variation in memory utilization the workloads have • How good a job you did of sizing the systems in the first place • Work well for both server and desktop workloads • Add minimal overhead to the system • Pass the “that looks right” test

  17. Understanding philosophical differences • Host and Guest Collaborate • Understands what guest information to use • Trying to get the “best bang for buck” in virtual memory management • Host works in Isolation • Does not trust guest information • “black box” solution

  18. Dynamic Memory • Benefits • Enables higher consolidation ratios per host by addressing the greatest limiting factor to consolidation: Memory • A Production feature. • Overview • Memory is pooled and dynamically and securely distributed across VMs • Memory is dynamically added/removed based VM usage with no service interruption • Guest enlightened: guests & Hyper-V work TOGETHER

  19. Adding/Removing Memory • Adding Memory • Enlightened fashion • Synthetic Memory Driver (VSP/VSC Pair) • No hardware emulation • Light weight • Removing Memory • Ballooning is more efficient • Messes up task manager in the guest OS

  20. System Requirements • Parent Requirements: • Windows Server 2008 R2 SP1 • Microsoft Hyper-V Server 2008 R2 SP1 • Guest Requirements: • Windows Server 2003, 2008 & 2008 R2 • 32-bit & 64-bit versions • Windows Vista and Windows 7 • Enterprise and Ultimate Editions only • 32-bit & 64-bit versions

  21. Dynamic Memory

  22. Adding/Removing Memory • Active Memory addition • Memory is added immediately when VM needs it • Passive Memory reclamation • Memory is not removed when there is no immediate need • Unutilized memory is collected every 5 minutes

  23. Startup & Max • Startup: amount of memory to boot VM • BIOS does not know about DM • Guest OS may not know about DM • Default: 512MB • Max: don’t let the VM above this amount • Default: 64GB

  24. Memory Buffer & Priority • Buffer: How much “free” memory should we try and keep in the VM? • Allows for responsiveness to bursty workloads • Can be used for file cache • “I like to configure my virtual machines so that they have ~20% free memory” • Priority: which VM gets the memory first • 1-10,000: default is 5,000 • The higher the priority, the higher the availability

  25. Dynamic Memory in action demo

  26. Dynamic Memory APIs • Publicly Available • http://msdn.microsoft.com/en-us/library/cc136856(VS.85).aspx • WMI interfaces come from the DMTF

  27. Upgrading to R2 Service Pack 1Any other changes to accommodate dynamic memory?

  28. Three Steps… • Ensure Virtual Machines are ready for the update • Update the Host • Update the Guest Integration Services

  29. System Impact

  30. Changes to Root Reserve • Hyper-V has always had the concept of a reserve of memory that is kept for the parent partition • Host Reserve - Auto-calculated based on: • If the machine SLAT capability • Total size of host RAM • NUMA architecture Host Reserve VM Overhead Memory utilized by VMs VM Reserve

  31. Changes to Root Reserve • DM allows VMs to push up against the reserve consistently • New behavior to better protect the parent partition from rampaging virtual machines • New registry key in place • Allows you to reserve static memory for the parent partition • May result in less memory being available for VMs

  32. What is “NUMA”? A traditional computer: VM VM VM VM VM VM VM VM Computer Memory BUS CPU CPU CPU CPU

  33. What is “NUMA”? A NUMA computer: VM VM VM VM VM VM VM VM Computer Back Channel Memory Memory BUS BUS CPU CPU CPU CPU Node 1 Node 2

  34. Why do I care? VM memory should come from the “local NUMA node” VM VM VM VM VM VM VM VM Computer Good! Back Channel Memory Memory BUS BUS CPU CPU CPU CPU Node 1 Node 2

  35. Why do I care? Ideally VM memory should come from the “local NUMA node” VM VM VM VM VM VM VM VM Computer Bad Back Channel Memory Memory BUS BUS CPU CPU CPU CPU Node 1 Node 2

  36. How does this work today? • Hyper-V tries to get all memory for a virtual machine from a single NUMA node • When it cannot – the virtual machine “spans” NUMA nodes • Users can set preferred NUMA nodes for virtual machines in order to get the best distribution

  37. Changes to NUMA management • Dynamic memory can result in more virtual machines spanning NUMA nodes • A virtual machine might start all on one node – but added memory might come from another node • New option to disable NUMA node spanning

  38. Disabling NUMA Spanning Makes the system behave like multiple small computers VM VM VM VM VM VM VM VM Computer Back Channel Memory Memory BUS BUS CPU CPU CPU CPU Node 1 Node 2

  39. Download SP1 Today • Try Dynamic Memory out – for both server and desktop environments!

  40. Track Resources • Don’t forget to visit the Cloud Power area within the TLC (Blue Section) to see product demos and speak with experts about the Server & Cloud Platform solutions that help drive your business forward. • You can also find the latest information about our products at the following links: • Cloud Power - http://www.microsoft.com/cloud/ • Private Cloud - http://www.microsoft.com/privatecloud/ • Windows Server - http://www.microsoft.com/windowsserver/ • Windows Azure - http://www.microsoft.com/windowsazure/ • Microsoft System Center - http://www.microsoft.com/systemcenter/ • Microsoft Forefront - http://www.microsoft.com/forefront/

  41. Resources • Connect. Share. Discuss. http://northamerica.msteched.com Learning • Sessions On-Demand & Community • Microsoft Certification & Training Resources www.microsoft.com/teched www.microsoft.com/learning • Resources for IT Professionals • Resources for Developers http://microsoft.com/technet http://microsoft.com/msdn

  42. Complete an evaluation on CommNet and enter to win!

  43. © 2011 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

More Related