You can monitor processor performance by using Performance Monitor.
Three (3) performance counter is available to monitor the processor performance
a) \Hyper-V HyperVisor Logical Processor (_Total)\%Total Run Time (LPTR)
- indicate how busy the logical processor in the host
b)\Hyper-V Hypervisor Virtual Processor (_Total)\%Total Run Time (VPTR)
-indicate how busy the virtual processor in the host
c)\Hyper-V Hypervisor Virtual Processor (_Total)\%Guest Run Time (VPGRT)
-indicate how busy the virtual processor in the guest
Here is some threshold which recommended by Microsoft to evaluate the performance monitor counter
- less than 60% consumed = healthy
- 60 to 89% consumed = Monitor or Caution
- 90% to 100% consumed - Critical, performance affected.
a) If VPTR is high on the host,but LPTR is low
There are virtual machines that do not have enough processing power allocated.
Use VPGRT counter in each VM to determine which VM is running at high processor utilization. In order to fix this case, you need add an additional virtual processor to that VM.
If max virtual processor has exceeded according to the guest VM limitation (pls refer to http://www.microsoft.com/windowsserver2008/en/us/hyperv-supported-guest-os.aspx ),then scale out the application by adding an additional virtual machine and balancing the workload between VM.
b) If LPTR is high and VPTR is low
Many virtual machine running lights loads.Verify that there are not more processors allocated to virtual machines than are physically available on the physical computer.
Use the VPGRT counters to determine which virtual Processors are consuming CPU and de-allocate virtual processors from virtual machines as appropriate to configure a one to one mapping of virtual processors to logical processors.
c) If VPTR and LPTR are high
Hyper V Server processor are oversubscribed
Add an additional Hyper V server processor and balance the existing VM between the servers