


  1. Build server, running Team City
  2. Staging server
  3. SQL Server, running SQL Server 2005

I have some troubles with the setup in that the host monitor remains responsive at all times, even though the VM's are seemingly working at 100% cpu and are very sluggish and unresponsive. (I have asked a separate question about that.)

So the question here is: What is the best way to monitor how the physical CPU's are actually utilized? The reason I am asking is that I am being told that i cannot reliably use the task manager to monitor CPU usage in a VM.

  • 1
    @Bjørn: make sure you focus on more than processor. Disk I/O is a very likely bottleneck as well. – MattB Apr 16 '10 at 13:50



To summarize his post, you need to check three things to get an accurate picture of CPU utilization:

  1. View the CPU usage on each guest - this is available through Hyper-V Manager or Performance Monitor.

  2. CPU usage due to context switching - this is the perfmon counter called % Hypervisor Run Time under Hyper-V Hypervisor Virtual Processor

  3. Child partition worker process - vmwp.exe running on the parent partition (1 per child). This handles Hyper-V operations like saving state.


You can - just you have to be sure you put things into RELATION. I use The Resource Monitor myself. Just your case was 8 cores, 3 virtual CPU's, so 100% on all virtuals awas roughly 37.5% physical ;)

SCVMM (System Center Virtual Machine Manager) is a nice tool, together with SCOM (System Center Operations Manager), but they alone are more hardware than you currently have.


You can use Resource Monitor to view CPU and RAM usage for the VMs. As an alternative, you can use Hyper-V Manager.

Your Answer

