Hyper-V performance troubleshooting and investigation
The usual first step in evaluating Hyper-V performance problems is to collect the relevant Windows Performance counters. A good starting set is the following:
\Processor(_Total)\% Processor Time
\Hyper-V Hypervisor\*
\Hyper-V Hypervisor Logical Processor(*)\*
\Hyper-V Hypervisor Root Partition(*)\*
\Hyper-V Hypervisor Root Virtual Processor(*)\*
\Hyper-V Hypervisor Partition(*)\*
\Hyper-V Hypervisor Virtual Processor(*)\*
\Memory\*
\Network Interface(*)\*
\System\*
\PhysicalDisk(*)\*
Note: This list can be copy/pasted into a text file, and the file used as input to the logman command. For example, if the above list was in a file called CounterList.txt, you could do the following:
c:\>logman create counter myperfcounters -cf c:\users\mattp\CounterList.txt -si 00:00:01 -o myperfcounterslog
c:\>logman start myperfcounters
<<wait for some time period, e.g., 30 seconds>>
c:\>logman stop myperfcounters
c:\>logman delete myperfcounters <<this last step is optional, unless you want to rerun collection in the future>>
The output file myperfcounterslog_0000n.blg will contain the collected counters. It is important to set the sampling interval (specified via the -si option) to as low a value as possible, which happens to currently be 1s.
More info on performance counters: