SlideShare a Scribd company logo
1 of 42
Download to read offline
Hyper-V and Dynamic Memory in Depth
Dr. Eduardo Castro Martínez
Microsoft MVP
ecastro@mswindowscr.org

http://comunidadwindows.org
http://ecastrom.blogspot.com
Agenda

• Windows 2008 R2 SP1 Overview
• Users, Memory & Virtualization
• Dynamic Memory
   – Architecture & Concepts
   – System Impact
• Memory Techniques / Competition
Windows 2008 R2 SP1 Overview

• New capabilities that will enhance both virtualized server
  and virtualized desktop deployments
   – Remote FX: With Microsoft RemoteFX, users will be
     able to work remotely in a Windows Aero desktop
     environment, watch full-motion video, enjoy
     Silverlight animations, and run 3D applications within
     a Hyper-V VM – all with the fidelity of a local-like
     performance.
   – Hyper-V Dynamic Memory: With Hyper-V Dynamic
     Memory, Hyper-V will enable greater virtual machine
     density suitable for servers and VDI deployments.
Users, Memory & Virtualization
No one can size VMs

•   How much memory does an IIS server actually need?
•   SQL 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?
No one wants to size VMs

“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”
Virtualization and memory

• Use physical memory as efficiently and dynamically
  as possible with minimal performance impact.
   – Customers investing in virtualization hosts are
     purchasing systems with larger memory
     configurations (32 GB, 64 GB, 128 GB and more) and
     want to fully utilize this system asset.
   – At the same time, they’re purchasing this memory to
     provide superior performance and to avoid paging.
• Provide consistent performance and scalability.
   – One frequent comment from virtualization users is
     that they don’t want a feature with a performance cliff
     or inconsistent, variable performance.
Virtualization & Memory

• Memory
   – Key factor to the number of running VMs
   – Possibly most expensive asset in system
• Customer Requirements
   – Maximum density, without sacrificing performance
   – Maintain consistent performance
   – Don’t provide a feature that’s unsuitable for
     production use
Virtual Machine Performance & Density




 • Hyper-V Dynamic Memory is a memory management
   enhancement for Hyper-V designed for production use
   that enables customers to achieve higher
   consolidation/VM density ratios
Hyper-V R2 SP1
Dynamic Memory
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
Adding/Removing Memory

• Adding Memory
   – Enlightened fashion
      • Synthetic Memory Driver (VSP/VSC Pair)
   – No hardware emulation
   – Light weight
• Removing Memory
   – Wanted to remove memory
   – Ballooning is more efficient
      • Messes up task manager in the guest OS
System Requirements

• Parent Requirements:
   – Windows Server 2008 R2 SP1
   – Microsoft Hyper-V Server 2008 R2 SP1
• 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
Dynamic Memory Architecture &
Concepts
Provided by:


Dynamic Memory Architecture                                                          OS
                                                                              Microsoft Hyper-V
                                                                         Dynamic Memory Components




                                                Guest Applications
                          VMWP

            Memory
            Balancer
                                     DM
                                   VDEV/VSP
                                                                                    User
  VMMS      Interface
                                                                                    Mode
 Memory
                          GMO
 Balancer
                         Memory
                         Manager




Windows                                                        Windows              Kernel
                                                                                    Mode
 Kernel                                                         Kernel

                                                 DM VSC
                           VID


                        VMBus                         VMBus



                                   Hypervisor
Example
0                         512 MB                              1024MB



                                          Hot-add



              VM Memory
                             Ballooned Memory

                                                    VM Memory



    Parent Memory          Second VM Memory         Hot-add
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
Availability & Priority

• Availability is a concept
   – How much memory does the VM have?
   – How much memory does the VM want?
   – The difference is the availability
• Priority: which VM gets the memory first
   – 1-10,000: default is 5,000
   – The higher the priority, the higher the availability
Memory 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”
Dynamic Memory




   • DEMO
System Impact
Changes to Root Reserve

• Hyper-V has always had the concept of a reserve of
  memory that is kept for the parent partition
• 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
Changes to NUMA management…

• Wait – what is NUMA?
• Why do I care?
• How does this work today?
What is “NUMA”?

• A traditional computer:
What is “NUMA”?

• A NUMA computer:
Why do I care?

• VM memory should come from the “local NUMA node”
Why do I care?

• VM memory should come from the “local NUMA node”
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
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
Disabling NUMA Spanning

• Makes the system behave like multiple small computers
Memory Techniques / Competition
Understanding philosophical differences

• Microsoft
  – Understands what guest information to use
      • Building on top of guest OS knowledge
   – Trying to get the “best bang for buck” in virtual
     memory management
• VMware
   – Does not trust guest information
      • Building a “black box” solution
   – Started with memory swapping, and digging out of
     the hole
Dynamic Memory, not Overcommit

• Overloaded Term
   – Page Sharing
   – Second Level Paging
   – Balloon Type Mechanisms
• No one wants to overcommit their resource
   – You don’t overcommit other resources (really – you do
     not)
   – VMware does not want you to overcommit memory
     (really)
• DM treats memory like we treat CPU resources
   – Dynamically schedulable resource
External Page Sharing

• How it works:
   1. Hash all memory and store it in a table…
   2. Identify the common hashes and then…
   3. Perform a bit by bit comparison

• What VMware doesn’t tell you…
  – Page Sharing not dynamic
  – Can take hours to share pages
  – The largest benefit are zero pages
  – Doesn’t work with large pages
Second Level Paging

• Many problems:
   – Swapping Guest Kernel Resources
   – Double Paging
   – Disks are slow
• But it always works…
Other Techniques

• Guest directed page sharing
• Memory compression
• And on…

• We will continue to invest here and work on identifying
  the best techniques for customer work loads
What next?
Test the beta – and talk to us!

• Try Dynamic Memory out – for both server and desktop
  environments
   – Let us know how DM is working for you
   – Let us know if you think we have something wrong
More Resources

  Virtualization @ Microsoft:
  http://www.microsoft.com/virtualization
  Hyper-V on TechNet:
  http://technet.microsoft.com/library/cc753637(WS.10).aspx
  Virtualization Team Blog:
  http://blogs.technet.com/b/virtualization/
  http://blogs.msdn.com/b/virtual_pc_guy
Source Info




   www.microsoft.com/teched      www.microsoft.com/learning




  http://microsoft.com/technet   http://microsoft.com/msdn
Hyper-V and Dynamic Memory in Depth
Dr. Eduardo Castro Martínez
Microsoft MVP
ecastro@mswindowscr.org

http://comunidadwindows.org
http://ecastrom.blogspot.com
© 2008 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 Content

What's hot

Scheduler Support for Video-oriented Multimedia on Client-side Virtualization
Scheduler Support for Video-oriented Multimedia on Client-side VirtualizationScheduler Support for Video-oriented Multimedia on Client-side Virtualization
Scheduler Support for Video-oriented Multimedia on Client-side VirtualizationHwanju Kim
 
Hyper-V Best Practices & Tips and Tricks
Hyper-V Best Practices & Tips and TricksHyper-V Best Practices & Tips and Tricks
Hyper-V Best Practices & Tips and TricksAmit Gatenyo
 
5. IO virtualization
5. IO virtualization5. IO virtualization
5. IO virtualizationHwanju Kim
 
XS Oracle 2009 Transcendent Memory
XS Oracle 2009 Transcendent MemoryXS Oracle 2009 Transcendent Memory
XS Oracle 2009 Transcendent MemoryThe Linux Foundation
 
How to Optimize Microsoft Hyper-V Failover Cluster and Double Performance
How to Optimize Microsoft Hyper-V Failover Cluster and Double PerformanceHow to Optimize Microsoft Hyper-V Failover Cluster and Double Performance
How to Optimize Microsoft Hyper-V Failover Cluster and Double PerformanceStarWind Software
 
Advancedtroubleshooting 101208145718-phpapp01
Advancedtroubleshooting 101208145718-phpapp01Advancedtroubleshooting 101208145718-phpapp01
Advancedtroubleshooting 101208145718-phpapp01Suresh Kumar
 
Transcendent memoryupdate xensummit2010-final
Transcendent memoryupdate xensummit2010-finalTranscendent memoryupdate xensummit2010-final
Transcendent memoryupdate xensummit2010-finalThe Linux Foundation
 
Master VMware Performance and Capacity Management
Master VMware Performance and Capacity ManagementMaster VMware Performance and Capacity Management
Master VMware Performance and Capacity ManagementIwan Rahabok
 
Vmware vsphere taking_a_trip_down_memory_lane
Vmware vsphere taking_a_trip_down_memory_laneVmware vsphere taking_a_trip_down_memory_lane
Vmware vsphere taking_a_trip_down_memory_laneMetron
 
5 scalability Cloudstack Developer Day
5  scalability Cloudstack Developer Day5  scalability Cloudstack Developer Day
5 scalability Cloudstack Developer DayKimihiko Kitase
 
Vsphere esxi-vcenter-server-55-troubleshooting-guide
Vsphere esxi-vcenter-server-55-troubleshooting-guideVsphere esxi-vcenter-server-55-troubleshooting-guide
Vsphere esxi-vcenter-server-55-troubleshooting-guideSree Harsha Boyapati
 
Hyper-V vs. vSphere: Understanding the Differences
Hyper-V vs. vSphere: Understanding the DifferencesHyper-V vs. vSphere: Understanding the Differences
Hyper-V vs. vSphere: Understanding the DifferencesSolarWinds
 
Hyper-V: Best Practices
Hyper-V: Best PracticesHyper-V: Best Practices
Hyper-V: Best PracticesTomica Kaniski
 

What's hot (20)

Memory Virtualization
Memory VirtualizationMemory Virtualization
Memory Virtualization
 
Scheduler Support for Video-oriented Multimedia on Client-side Virtualization
Scheduler Support for Video-oriented Multimedia on Client-side VirtualizationScheduler Support for Video-oriented Multimedia on Client-side Virtualization
Scheduler Support for Video-oriented Multimedia on Client-side Virtualization
 
Hyper-V Best Practices & Tips and Tricks
Hyper-V Best Practices & Tips and TricksHyper-V Best Practices & Tips and Tricks
Hyper-V Best Practices & Tips and Tricks
 
5. IO virtualization
5. IO virtualization5. IO virtualization
5. IO virtualization
 
XS Oracle 2009 Transcendent Memory
XS Oracle 2009 Transcendent MemoryXS Oracle 2009 Transcendent Memory
XS Oracle 2009 Transcendent Memory
 
How to Optimize Microsoft Hyper-V Failover Cluster and Double Performance
How to Optimize Microsoft Hyper-V Failover Cluster and Double PerformanceHow to Optimize Microsoft Hyper-V Failover Cluster and Double Performance
How to Optimize Microsoft Hyper-V Failover Cluster and Double Performance
 
Advancedtroubleshooting 101208145718-phpapp01
Advancedtroubleshooting 101208145718-phpapp01Advancedtroubleshooting 101208145718-phpapp01
Advancedtroubleshooting 101208145718-phpapp01
 
Transcendent memoryupdate xensummit2010-final
Transcendent memoryupdate xensummit2010-finalTranscendent memoryupdate xensummit2010-final
Transcendent memoryupdate xensummit2010-final
 
XS Oracle 2009 Vm Snapshots
XS Oracle 2009 Vm SnapshotsXS Oracle 2009 Vm Snapshots
XS Oracle 2009 Vm Snapshots
 
Master VMware Performance and Capacity Management
Master VMware Performance and Capacity ManagementMaster VMware Performance and Capacity Management
Master VMware Performance and Capacity Management
 
Vmware vsphere taking_a_trip_down_memory_lane
Vmware vsphere taking_a_trip_down_memory_laneVmware vsphere taking_a_trip_down_memory_lane
Vmware vsphere taking_a_trip_down_memory_lane
 
XS Boston 2008 Fault Tolerance
XS Boston 2008 Fault ToleranceXS Boston 2008 Fault Tolerance
XS Boston 2008 Fault Tolerance
 
5 scalability Cloudstack Developer Day
5  scalability Cloudstack Developer Day5  scalability Cloudstack Developer Day
5 scalability Cloudstack Developer Day
 
XS Boston 2008 Memory Overcommit
XS Boston 2008 Memory OvercommitXS Boston 2008 Memory Overcommit
XS Boston 2008 Memory Overcommit
 
Ian Pratt Usenix 08 Keynote
Ian Pratt Usenix 08 KeynoteIan Pratt Usenix 08 Keynote
Ian Pratt Usenix 08 Keynote
 
Nakajima numa-final
Nakajima numa-finalNakajima numa-final
Nakajima numa-final
 
Vsphere esxi-vcenter-server-55-troubleshooting-guide
Vsphere esxi-vcenter-server-55-troubleshooting-guideVsphere esxi-vcenter-server-55-troubleshooting-guide
Vsphere esxi-vcenter-server-55-troubleshooting-guide
 
Hyper-V vs. vSphere: Understanding the Differences
Hyper-V vs. vSphere: Understanding the DifferencesHyper-V vs. vSphere: Understanding the Differences
Hyper-V vs. vSphere: Understanding the Differences
 
XS Japan 2008 Ganeti English
XS Japan 2008 Ganeti EnglishXS Japan 2008 Ganeti English
XS Japan 2008 Ganeti English
 
Hyper-V: Best Practices
Hyper-V: Best PracticesHyper-V: Best Practices
Hyper-V: Best Practices
 

Viewers also liked

Aksis application form
Aksis application formAksis application form
Aksis application formserenethunder
 
The Case for Seeding Europe - Keynote #FundraiseIT 2014 #Belgrade @ceedvc
The Case for Seeding Europe - Keynote #FundraiseIT 2014 #Belgrade @ceedvcThe Case for Seeding Europe - Keynote #FundraiseIT 2014 #Belgrade @ceedvc
The Case for Seeding Europe - Keynote #FundraiseIT 2014 #Belgrade @ceedvcVitaly Golomb
 
The English Reformation
The English ReformationThe English Reformation
The English ReformationTom Richey
 
Design Driven Development (Bitspiration - Krakow, Poland - June 24th, 2013)
Design Driven Development (Bitspiration - Krakow, Poland - June 24th, 2013)Design Driven Development (Bitspiration - Krakow, Poland - June 24th, 2013)
Design Driven Development (Bitspiration - Krakow, Poland - June 24th, 2013)Vitaly Golomb
 
Introduction to Hyper-V
Introduction to Hyper-VIntroduction to Hyper-V
Introduction to Hyper-VMark Wilson
 
Hyper V in Windows Server 2012
Hyper V in Windows Server 2012Hyper V in Windows Server 2012
Hyper V in Windows Server 2012Lai Yoong Seng
 
What's New in Hyper-V 2016 - Thomas Maurer
What's New in Hyper-V 2016 - Thomas MaurerWhat's New in Hyper-V 2016 - Thomas Maurer
What's New in Hyper-V 2016 - Thomas MaurerITCamp
 
Fullscreen Digital - Retail business optimization solutions
Fullscreen Digital - Retail business optimization solutionsFullscreen Digital - Retail business optimization solutions
Fullscreen Digital - Retail business optimization solutionsFullscreen Digital
 

Viewers also liked (11)

Windows 7 For Itpro
Windows 7 For ItproWindows 7 For Itpro
Windows 7 For Itpro
 
Aksis application form
Aksis application formAksis application form
Aksis application form
 
The Case for Seeding Europe - Keynote #FundraiseIT 2014 #Belgrade @ceedvc
The Case for Seeding Europe - Keynote #FundraiseIT 2014 #Belgrade @ceedvcThe Case for Seeding Europe - Keynote #FundraiseIT 2014 #Belgrade @ceedvc
The Case for Seeding Europe - Keynote #FundraiseIT 2014 #Belgrade @ceedvc
 
The English Reformation
The English ReformationThe English Reformation
The English Reformation
 
Design Driven Development (Bitspiration - Krakow, Poland - June 24th, 2013)
Design Driven Development (Bitspiration - Krakow, Poland - June 24th, 2013)Design Driven Development (Bitspiration - Krakow, Poland - June 24th, 2013)
Design Driven Development (Bitspiration - Krakow, Poland - June 24th, 2013)
 
Technology What
Technology WhatTechnology What
Technology What
 
Introduction to Hyper-V
Introduction to Hyper-VIntroduction to Hyper-V
Introduction to Hyper-V
 
Hyper V in Windows Server 2012
Hyper V in Windows Server 2012Hyper V in Windows Server 2012
Hyper V in Windows Server 2012
 
What's New in Hyper-V 2016 - Thomas Maurer
What's New in Hyper-V 2016 - Thomas MaurerWhat's New in Hyper-V 2016 - Thomas Maurer
What's New in Hyper-V 2016 - Thomas Maurer
 
Certificate_HyperV
Certificate_HyperVCertificate_HyperV
Certificate_HyperV
 
Fullscreen Digital - Retail business optimization solutions
Fullscreen Digital - Retail business optimization solutionsFullscreen Digital - Retail business optimization solutions
Fullscreen Digital - Retail business optimization solutions
 

Similar to Dynamic Memory Management Hyperv 2008 R2 S

Virtualization Technology Overview
Virtualization Technology OverviewVirtualization Technology Overview
Virtualization Technology OverviewOpenCity Community
 
vSphere APIs for performance monitoring
vSphere APIs for performance monitoringvSphere APIs for performance monitoring
vSphere APIs for performance monitoringAlan Renouf
 
Virtualization Manager 5.0 – Now with Hyper-V Support!
Virtualization Manager 5.0 – Now with Hyper-V Support!Virtualization Manager 5.0 – Now with Hyper-V Support!
Virtualization Manager 5.0 – Now with Hyper-V Support!SolarWinds
 
Virtualization: Hyper-V, VMM, App-V and MED-V.
Virtualization: Hyper-V, VMM, App-V and MED-V.Virtualization: Hyper-V, VMM, App-V and MED-V.
Virtualization: Hyper-V, VMM, App-V and MED-V.Microsoft Iceland
 
Varrow madness 2013 virtualizing sql presentation
Varrow madness 2013 virtualizing sql presentationVarrow madness 2013 virtualizing sql presentation
Varrow madness 2013 virtualizing sql presentationpittmantony
 
Get Your GeekOn with Ron - Session One: Designing your VDI Servers
Get Your GeekOn with Ron - Session One: Designing your VDI ServersGet Your GeekOn with Ron - Session One: Designing your VDI Servers
Get Your GeekOn with Ron - Session One: Designing your VDI ServersUnidesk Corporation
 
Virtualization and how it leads to cloud
Virtualization and how it leads to cloudVirtualization and how it leads to cloud
Virtualization and how it leads to cloudHuzefa Husain
 
Advancedperformancetroubleshootingusingesxtop 101110131727-phpapp02
Advancedperformancetroubleshootingusingesxtop 101110131727-phpapp02Advancedperformancetroubleshootingusingesxtop 101110131727-phpapp02
Advancedperformancetroubleshootingusingesxtop 101110131727-phpapp02Suresh Kumar
 
Deep Dive Into Windows Server 2012 Hyper-V
Deep Dive Into Windows Server 2012 Hyper-VDeep Dive Into Windows Server 2012 Hyper-V
Deep Dive Into Windows Server 2012 Hyper-VLai Yoong Seng
 
Virtualizing Sharepoint for Performance and Availability
Virtualizing Sharepoint for Performance and AvailabilityVirtualizing Sharepoint for Performance and Availability
Virtualizing Sharepoint for Performance and AvailabilityDamir Bersinic
 
Vmwareperformancetroubleshooting 100224104321-phpapp02 (1)
Vmwareperformancetroubleshooting 100224104321-phpapp02 (1)Vmwareperformancetroubleshooting 100224104321-phpapp02 (1)
Vmwareperformancetroubleshooting 100224104321-phpapp02 (1)Suresh Kumar
 
Vmwareperformancetroubleshooting 100224104321-phpapp02
Vmwareperformancetroubleshooting 100224104321-phpapp02Vmwareperformancetroubleshooting 100224104321-phpapp02
Vmwareperformancetroubleshooting 100224104321-phpapp02Suresh Kumar
 
The Next Generation of Microsoft Virtualization With Windows Server 2012
The Next Generation of Microsoft Virtualization With Windows Server 2012The Next Generation of Microsoft Virtualization With Windows Server 2012
The Next Generation of Microsoft Virtualization With Windows Server 2012Lai Yoong Seng
 
What's new in System Center 2012 R2: Virtual Machine Manager
What's new in System Center 2012 R2: Virtual Machine ManagerWhat's new in System Center 2012 R2: Virtual Machine Manager
What's new in System Center 2012 R2: Virtual Machine ManagerTomica Kaniski
 
Membase Meetup Chicago - january 2011
Membase Meetup Chicago - january 2011Membase Meetup Chicago - january 2011
Membase Meetup Chicago - january 2011Membase
 
VMworld 2013: Successfully Virtualize Microsoft Exchange Server
VMworld 2013: Successfully Virtualize Microsoft Exchange Server VMworld 2013: Successfully Virtualize Microsoft Exchange Server
VMworld 2013: Successfully Virtualize Microsoft Exchange Server VMworld
 

Similar to Dynamic Memory Management Hyperv 2008 R2 S (20)

Hyper-V Dynamic Memory in Depth
Hyper-V Dynamic Memory in Depth Hyper-V Dynamic Memory in Depth
Hyper-V Dynamic Memory in Depth
 
Virtualization Technology Overview
Virtualization Technology OverviewVirtualization Technology Overview
Virtualization Technology Overview
 
vSphere APIs for performance monitoring
vSphere APIs for performance monitoringvSphere APIs for performance monitoring
vSphere APIs for performance monitoring
 
Virtualization Manager 5.0 – Now with Hyper-V Support!
Virtualization Manager 5.0 – Now with Hyper-V Support!Virtualization Manager 5.0 – Now with Hyper-V Support!
Virtualization Manager 5.0 – Now with Hyper-V Support!
 
Virtualization: Hyper-V, VMM, App-V and MED-V.
Virtualization: Hyper-V, VMM, App-V and MED-V.Virtualization: Hyper-V, VMM, App-V and MED-V.
Virtualization: Hyper-V, VMM, App-V and MED-V.
 
virtual machine.ppt
virtual machine.pptvirtual machine.ppt
virtual machine.ppt
 
Varrow madness 2013 virtualizing sql presentation
Varrow madness 2013 virtualizing sql presentationVarrow madness 2013 virtualizing sql presentation
Varrow madness 2013 virtualizing sql presentation
 
Get Your GeekOn with Ron - Session One: Designing your VDI Servers
Get Your GeekOn with Ron - Session One: Designing your VDI ServersGet Your GeekOn with Ron - Session One: Designing your VDI Servers
Get Your GeekOn with Ron - Session One: Designing your VDI Servers
 
Virtualization and how it leads to cloud
Virtualization and how it leads to cloudVirtualization and how it leads to cloud
Virtualization and how it leads to cloud
 
Advancedperformancetroubleshootingusingesxtop 101110131727-phpapp02
Advancedperformancetroubleshootingusingesxtop 101110131727-phpapp02Advancedperformancetroubleshootingusingesxtop 101110131727-phpapp02
Advancedperformancetroubleshootingusingesxtop 101110131727-phpapp02
 
Deep Dive Into Windows Server 2012 Hyper-V
Deep Dive Into Windows Server 2012 Hyper-VDeep Dive Into Windows Server 2012 Hyper-V
Deep Dive Into Windows Server 2012 Hyper-V
 
Virtualizing Sharepoint for Performance and Availability
Virtualizing Sharepoint for Performance and AvailabilityVirtualizing Sharepoint for Performance and Availability
Virtualizing Sharepoint for Performance and Availability
 
Virtualization Smackdown
Virtualization SmackdownVirtualization Smackdown
Virtualization Smackdown
 
Vmwareperformancetroubleshooting 100224104321-phpapp02 (1)
Vmwareperformancetroubleshooting 100224104321-phpapp02 (1)Vmwareperformancetroubleshooting 100224104321-phpapp02 (1)
Vmwareperformancetroubleshooting 100224104321-phpapp02 (1)
 
Vmwareperformancetroubleshooting 100224104321-phpapp02
Vmwareperformancetroubleshooting 100224104321-phpapp02Vmwareperformancetroubleshooting 100224104321-phpapp02
Vmwareperformancetroubleshooting 100224104321-phpapp02
 
The Next Generation of Microsoft Virtualization With Windows Server 2012
The Next Generation of Microsoft Virtualization With Windows Server 2012The Next Generation of Microsoft Virtualization With Windows Server 2012
The Next Generation of Microsoft Virtualization With Windows Server 2012
 
What's new in System Center 2012 R2: Virtual Machine Manager
What's new in System Center 2012 R2: Virtual Machine ManagerWhat's new in System Center 2012 R2: Virtual Machine Manager
What's new in System Center 2012 R2: Virtual Machine Manager
 
Membase Meetup Chicago - january 2011
Membase Meetup Chicago - january 2011Membase Meetup Chicago - january 2011
Membase Meetup Chicago - january 2011
 
VMworld 2013: Successfully Virtualize Microsoft Exchange Server
VMworld 2013: Successfully Virtualize Microsoft Exchange Server VMworld 2013: Successfully Virtualize Microsoft Exchange Server
VMworld 2013: Successfully Virtualize Microsoft Exchange Server
 
VDI Design Guide
VDI Design GuideVDI Design Guide
VDI Design Guide
 

More from Eduardo Castro

Introducción a polybase en SQL Server
Introducción a polybase en SQL ServerIntroducción a polybase en SQL Server
Introducción a polybase en SQL ServerEduardo Castro
 
Creando tu primer ambiente de AI en Azure ML y SQL Server
Creando tu primer ambiente de AI en Azure ML y SQL ServerCreando tu primer ambiente de AI en Azure ML y SQL Server
Creando tu primer ambiente de AI en Azure ML y SQL ServerEduardo Castro
 
Seguridad en SQL Azure
Seguridad en SQL AzureSeguridad en SQL Azure
Seguridad en SQL AzureEduardo Castro
 
Azure Synapse Analytics MLflow
Azure Synapse Analytics MLflowAzure Synapse Analytics MLflow
Azure Synapse Analytics MLflowEduardo Castro
 
SQL Server 2019 con Windows Server 2022
SQL Server 2019 con Windows Server 2022SQL Server 2019 con Windows Server 2022
SQL Server 2019 con Windows Server 2022Eduardo Castro
 
Novedades en SQL Server 2022
Novedades en SQL Server 2022Novedades en SQL Server 2022
Novedades en SQL Server 2022Eduardo Castro
 
Introduccion a SQL Server 2022
Introduccion a SQL Server 2022Introduccion a SQL Server 2022
Introduccion a SQL Server 2022Eduardo Castro
 
Machine Learning con Azure Managed Instance
Machine Learning con Azure Managed InstanceMachine Learning con Azure Managed Instance
Machine Learning con Azure Managed InstanceEduardo Castro
 
Novedades en sql server 2022
Novedades en sql server 2022Novedades en sql server 2022
Novedades en sql server 2022Eduardo Castro
 
Sql server 2019 con windows server 2022
Sql server 2019 con windows server 2022Sql server 2019 con windows server 2022
Sql server 2019 con windows server 2022Eduardo Castro
 
Introduccion a databricks
Introduccion a databricksIntroduccion a databricks
Introduccion a databricksEduardo Castro
 
Pronosticos con sql server
Pronosticos con sql serverPronosticos con sql server
Pronosticos con sql serverEduardo Castro
 
Data warehouse con azure synapse analytics
Data warehouse con azure synapse analyticsData warehouse con azure synapse analytics
Data warehouse con azure synapse analyticsEduardo Castro
 
Que hay de nuevo en el Azure Data Lake Storage Gen2
Que hay de nuevo en el Azure Data Lake Storage Gen2Que hay de nuevo en el Azure Data Lake Storage Gen2
Que hay de nuevo en el Azure Data Lake Storage Gen2Eduardo Castro
 
Introduccion a Azure Synapse Analytics
Introduccion a Azure Synapse AnalyticsIntroduccion a Azure Synapse Analytics
Introduccion a Azure Synapse AnalyticsEduardo Castro
 
Seguridad de SQL Database en Azure
Seguridad de SQL Database en AzureSeguridad de SQL Database en Azure
Seguridad de SQL Database en AzureEduardo Castro
 
Python dentro de SQL Server
Python dentro de SQL ServerPython dentro de SQL Server
Python dentro de SQL ServerEduardo Castro
 
Servicios Cognitivos de de Microsoft
Servicios Cognitivos de de Microsoft Servicios Cognitivos de de Microsoft
Servicios Cognitivos de de Microsoft Eduardo Castro
 
Script de paso a paso de configuración de Secure Enclaves
Script de paso a paso de configuración de Secure EnclavesScript de paso a paso de configuración de Secure Enclaves
Script de paso a paso de configuración de Secure EnclavesEduardo Castro
 
Introducción a conceptos de SQL Server Secure Enclaves
Introducción a conceptos de SQL Server Secure EnclavesIntroducción a conceptos de SQL Server Secure Enclaves
Introducción a conceptos de SQL Server Secure EnclavesEduardo Castro
 

More from Eduardo Castro (20)

Introducción a polybase en SQL Server
Introducción a polybase en SQL ServerIntroducción a polybase en SQL Server
Introducción a polybase en SQL Server
 
Creando tu primer ambiente de AI en Azure ML y SQL Server
Creando tu primer ambiente de AI en Azure ML y SQL ServerCreando tu primer ambiente de AI en Azure ML y SQL Server
Creando tu primer ambiente de AI en Azure ML y SQL Server
 
Seguridad en SQL Azure
Seguridad en SQL AzureSeguridad en SQL Azure
Seguridad en SQL Azure
 
Azure Synapse Analytics MLflow
Azure Synapse Analytics MLflowAzure Synapse Analytics MLflow
Azure Synapse Analytics MLflow
 
SQL Server 2019 con Windows Server 2022
SQL Server 2019 con Windows Server 2022SQL Server 2019 con Windows Server 2022
SQL Server 2019 con Windows Server 2022
 
Novedades en SQL Server 2022
Novedades en SQL Server 2022Novedades en SQL Server 2022
Novedades en SQL Server 2022
 
Introduccion a SQL Server 2022
Introduccion a SQL Server 2022Introduccion a SQL Server 2022
Introduccion a SQL Server 2022
 
Machine Learning con Azure Managed Instance
Machine Learning con Azure Managed InstanceMachine Learning con Azure Managed Instance
Machine Learning con Azure Managed Instance
 
Novedades en sql server 2022
Novedades en sql server 2022Novedades en sql server 2022
Novedades en sql server 2022
 
Sql server 2019 con windows server 2022
Sql server 2019 con windows server 2022Sql server 2019 con windows server 2022
Sql server 2019 con windows server 2022
 
Introduccion a databricks
Introduccion a databricksIntroduccion a databricks
Introduccion a databricks
 
Pronosticos con sql server
Pronosticos con sql serverPronosticos con sql server
Pronosticos con sql server
 
Data warehouse con azure synapse analytics
Data warehouse con azure synapse analyticsData warehouse con azure synapse analytics
Data warehouse con azure synapse analytics
 
Que hay de nuevo en el Azure Data Lake Storage Gen2
Que hay de nuevo en el Azure Data Lake Storage Gen2Que hay de nuevo en el Azure Data Lake Storage Gen2
Que hay de nuevo en el Azure Data Lake Storage Gen2
 
Introduccion a Azure Synapse Analytics
Introduccion a Azure Synapse AnalyticsIntroduccion a Azure Synapse Analytics
Introduccion a Azure Synapse Analytics
 
Seguridad de SQL Database en Azure
Seguridad de SQL Database en AzureSeguridad de SQL Database en Azure
Seguridad de SQL Database en Azure
 
Python dentro de SQL Server
Python dentro de SQL ServerPython dentro de SQL Server
Python dentro de SQL Server
 
Servicios Cognitivos de de Microsoft
Servicios Cognitivos de de Microsoft Servicios Cognitivos de de Microsoft
Servicios Cognitivos de de Microsoft
 
Script de paso a paso de configuración de Secure Enclaves
Script de paso a paso de configuración de Secure EnclavesScript de paso a paso de configuración de Secure Enclaves
Script de paso a paso de configuración de Secure Enclaves
 
Introducción a conceptos de SQL Server Secure Enclaves
Introducción a conceptos de SQL Server Secure EnclavesIntroducción a conceptos de SQL Server Secure Enclaves
Introducción a conceptos de SQL Server Secure Enclaves
 

Dynamic Memory Management Hyperv 2008 R2 S

  • 1. Hyper-V and Dynamic Memory in Depth Dr. Eduardo Castro Martínez Microsoft MVP ecastro@mswindowscr.org http://comunidadwindows.org http://ecastrom.blogspot.com
  • 2. Agenda • Windows 2008 R2 SP1 Overview • Users, Memory & Virtualization • Dynamic Memory – Architecture & Concepts – System Impact • Memory Techniques / Competition
  • 3. Windows 2008 R2 SP1 Overview • New capabilities that will enhance both virtualized server and virtualized desktop deployments – Remote FX: With Microsoft RemoteFX, users will be able to work remotely in a Windows Aero desktop environment, watch full-motion video, enjoy Silverlight animations, and run 3D applications within a Hyper-V VM – all with the fidelity of a local-like performance. – Hyper-V Dynamic Memory: With Hyper-V Dynamic Memory, Hyper-V will enable greater virtual machine density suitable for servers and VDI deployments.
  • 4. Users, Memory & Virtualization
  • 5. No one can size VMs • How much memory does an IIS server actually need? • SQL 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?
  • 6. No one wants to size VMs “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”
  • 7. Virtualization and memory • Use physical memory as efficiently and dynamically as possible with minimal performance impact. – Customers investing in virtualization hosts are purchasing systems with larger memory configurations (32 GB, 64 GB, 128 GB and more) and want to fully utilize this system asset. – At the same time, they’re purchasing this memory to provide superior performance and to avoid paging. • Provide consistent performance and scalability. – One frequent comment from virtualization users is that they don’t want a feature with a performance cliff or inconsistent, variable performance.
  • 8. Virtualization & Memory • Memory – Key factor to the number of running VMs – Possibly most expensive asset in system • Customer Requirements – Maximum density, without sacrificing performance – Maintain consistent performance – Don’t provide a feature that’s unsuitable for production use
  • 9. Virtual Machine Performance & Density • Hyper-V Dynamic Memory is a memory management enhancement for Hyper-V designed for production use that enables customers to achieve higher consolidation/VM density ratios
  • 11. 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
  • 12. Adding/Removing Memory • Adding Memory – Enlightened fashion • Synthetic Memory Driver (VSP/VSC Pair) – No hardware emulation – Light weight • Removing Memory – Wanted to remove memory – Ballooning is more efficient • Messes up task manager in the guest OS
  • 13. System Requirements • Parent Requirements: – Windows Server 2008 R2 SP1 – Microsoft Hyper-V Server 2008 R2 SP1 • 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
  • 15. Provided by: Dynamic Memory Architecture OS Microsoft Hyper-V Dynamic Memory Components Guest Applications VMWP Memory Balancer DM VDEV/VSP User VMMS Interface Mode Memory GMO Balancer Memory Manager Windows Windows Kernel Mode Kernel Kernel DM VSC VID VMBus VMBus Hypervisor
  • 16. Example 0 512 MB 1024MB Hot-add VM Memory Ballooned Memory VM Memory Parent Memory Second VM Memory Hot-add
  • 17. 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
  • 18. Availability & Priority • Availability is a concept – How much memory does the VM have? – How much memory does the VM want? – The difference is the availability • Priority: which VM gets the memory first – 1-10,000: default is 5,000 – The higher the priority, the higher the availability
  • 19. Memory 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”
  • 20. Dynamic Memory • DEMO
  • 22. Changes to Root Reserve • Hyper-V has always had the concept of a reserve of memory that is kept for the parent partition • 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
  • 23. Changes to NUMA management… • Wait – what is NUMA? • Why do I care? • How does this work today?
  • 24. What is “NUMA”? • A traditional computer:
  • 25. What is “NUMA”? • A NUMA computer:
  • 26. Why do I care? • VM memory should come from the “local NUMA node”
  • 27. Why do I care? • VM memory should come from the “local NUMA node”
  • 28. 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
  • 29. 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
  • 30. Disabling NUMA Spanning • Makes the system behave like multiple small computers
  • 31. Memory Techniques / Competition
  • 32. Understanding philosophical differences • Microsoft – Understands what guest information to use • Building on top of guest OS knowledge – Trying to get the “best bang for buck” in virtual memory management • VMware – Does not trust guest information • Building a “black box” solution – Started with memory swapping, and digging out of the hole
  • 33. Dynamic Memory, not Overcommit • Overloaded Term – Page Sharing – Second Level Paging – Balloon Type Mechanisms • No one wants to overcommit their resource – You don’t overcommit other resources (really – you do not) – VMware does not want you to overcommit memory (really) • DM treats memory like we treat CPU resources – Dynamically schedulable resource
  • 34. External Page Sharing • How it works: 1. Hash all memory and store it in a table… 2. Identify the common hashes and then… 3. Perform a bit by bit comparison • What VMware doesn’t tell you… – Page Sharing not dynamic – Can take hours to share pages – The largest benefit are zero pages – Doesn’t work with large pages
  • 35. Second Level Paging • Many problems: – Swapping Guest Kernel Resources – Double Paging – Disks are slow • But it always works…
  • 36. Other Techniques • Guest directed page sharing • Memory compression • And on… • We will continue to invest here and work on identifying the best techniques for customer work loads
  • 38. Test the beta – and talk to us! • Try Dynamic Memory out – for both server and desktop environments – Let us know how DM is working for you – Let us know if you think we have something wrong
  • 39. More Resources Virtualization @ Microsoft: http://www.microsoft.com/virtualization Hyper-V on TechNet: http://technet.microsoft.com/library/cc753637(WS.10).aspx Virtualization Team Blog: http://blogs.technet.com/b/virtualization/ http://blogs.msdn.com/b/virtual_pc_guy
  • 40. Source Info www.microsoft.com/teched www.microsoft.com/learning http://microsoft.com/technet http://microsoft.com/msdn
  • 41. Hyper-V and Dynamic Memory in Depth Dr. Eduardo Castro Martínez Microsoft MVP ecastro@mswindowscr.org http://comunidadwindows.org http://ecastrom.blogspot.com
  • 42. © 2008 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.