Microsoft Management Summit 2011 took place last week in Las Vegas; it was another great opportunity for the Hyper-V team to extol the virtues of Dynamic Memory. But when it came time for the demo, I could hardly believe my eyes…
In breakout session BD12: Hyper-V and Dynamic Memory in Depth, a demo environment was presented with a dozen virtual machines allegedly configured to use Dynamic Memory, with the Hyper-V Manager interface boldly displaying “Dynamic Memory” as part of each VM name.
One small detail was omitted from the demonstration, however: Most of these virtual machines — both the “Dynamic” as well as the “Static” variants — are empty shells with no operating systems installed, as shown this thumbnail:
Hyper-V Dynamic Memory requires cooperation with guest integration services. Without those services, VMs will fall back to good, old-fashioned Static Memory.
The Great Fake Dynamic Memory Demo of 2011
The “demonstration” went on to show how Dynamic Memory responds when memory is consumed inside one of the virtual machines. The only VM that appears to have an OS installed is the first one. The other 11 VMs are powered on but never generate load on the CPU and never report memory demand back to Hyper-V — a sign that the guest integration services are not running:
In reality, when a Windows 7 SP1 VM is started up on Hyper-V it almost immediately demands more than the meager 384MB recommended in the breakout session. In fact, a dozen Windows 7 SP1 VMs– running in my own lab — looks like this:
It’s easy to see that Dynamic Memory is actually enabled and working here, as the assigned memory for each VM has increased based on the demands of a running operating system.
Why Fake the Demo?
Clearly the Dynamic Memory demo at MMS 2011 was misleading, but why? Could Hyper-V Dynamic Memory have accommodated that same VM density if operating systems were actually running?