Skip to main content

Posts

Showing posts with the label Hyper-V

Interpreting Windows performance gathered from VMware and Hyper-V Guest Machines

In this blog entry, I want to step back and revisit a topic I have blogged about much earlier ( see  https://performancebydesign.blogspot.com/search/label/VMware . ) and discuss how guest machine performance counters are impacted by virtualization in general. Based on those impacts, we can assess which performance measurements guest machines produce remain viable for diagnosing performance problems and understanding capacity issues. Depending on the type of performance counter, the impact of the virtualization environment varies considerably. To begin, it is necessary to understand how both Hyper-V and the VMware ESX hypervisor affect the clocks and timers that are available on their guest machines. Essentially, Hyper-V intercepts all calls made from the guest OS to access hardware-based clock and timer services on the Host machine and substitutes a virtualized Time of Day clock value. The hypervisor takes pains to ensure that this virtual clock value sent to the guest is minimally

Understanding Guest Machine Performance under Hyper-V: Introduction

This is a continuation of a series of articles on Microsoft's Hyper-V virtualization technology. If you want to start at the beginning, click here . The last few posts in this series examined the Hyper-V Dynamic Memory feature, which, IMHO, is probably the most significant technical difference between Hyper-V and VMware ESX. Most of the guest machine performance considerations that are discussed beginning in this post are common to every virtualization technology I have worked with, including VMware and Hyper-V. Here goes... Understanding Guest Machine Performance under Hyper-V Virtualization technology requires the execution of several additional layers of systems software that adds overhead to many functional areas of a guest Windows machine, including processor scheduling, intercepting and emulating certain guest machine instructions that could violate the integrity of the virtualization scheme,  machine memory management, initiating and completing IO operations, a

Hyper-V Dynamic Memory: a Case Study

Let’s look at an example of what happens when Hyper-V machine memory is over-committed and the Dynamic Memory Balancer attempts to adjust to that condition. The scenario begins with five Windows guest machines running with the following dynamic memory settings: Minimum Maximum WIN81TEST1 2 GB 6 GB WIN81TEST2 2 GB 6 GB WIN81TEST3 512 MB 6 GB WIN81TEST4 512 MB 6 GB WIN81TEST5 512 MB 8 GB In the scenario, four of the five guest machines are doing actual work. Only guest machine 5 is active, as illustrated in the screen shot of the Hyper-V Manager console, shown in Figure 17. The Hyper-V Host used in the test contains 12 GB of RAM. The remaining guest machines are idle initially, which allows Hyper-V to reduce the amount of machine memory allocated to guests 3-4 to near their minimum values, using the ballooning technique we discussed.  Figure 17. The Hyper-V Man