Hyper-V Performance Counters – Part one of many - The overview

[[ ***IF YOU HAVE SPECIFIC QUESTIONS ON PERFORMANCE COUNTERS YOU WANT ANSWERED PLEASE POST A REPLY WITH THE QUESTION***]]

In the next few posts I’ll be covering Hyper-V performance counters. There have been a lot of changes from Beta -> RC -> post RC.

In Beta the counters sets for Hyper-V were not grouped under a common namespace. This made them hard to find. In RC the counters are grouped under the “Hyper-V” namespace. That is each counter set starts with “Hyper-V.” For example “Hypervisor Logical Processors” are now “Hyper-V Hypervisor Logical Processors.” The prefix causes all the Hyper-V counters to be grouped together.

Post RC you will see some counter sets get renamed and a few like “Hyper-V VMMS Task Manager Summary" have been removed because they did not provide a lot of value. The most notable renaming was “Hyper-V Hypervisor …” rate counters where “/ sec” has been appended to to make it clear they are a rate. You will also see some counters have been removed.

The goal of the changes has been to simplify the counters and provide a very useful core that are easy to find. Improvements have also been made to make the counters more accurate.

 The “Performance Counter” blog entries will focus on what you will see post RC but it should not be too hard to apply what is discussed to RC or Beta.

Hyper-V will RTM with 24 counter sets which are listed below by expected target audience;

Admin / Dev / Product Support (but not all counters in the counter set are for everyone)

· Hyper-V Hypervisor - Overall hypervisor & machine state

· Hyper-V Hypervisor Logical Processor - Details on what logical processors are doing

· Hyper-V Hypervisor Partition - Each guest runs in a partition. This has details on what the partition memory and processors

· Hyper-V Hypervisor Root Partition - Details on the root partition memory and processors.

· Hyper-V Hypervisor Root Virtual Processor - Details on what the root Virtual Processors are doing. There is one root VP for every Logical Processor (LP). Think of LP as cores on a processor.

· Hyper-V Hypervisor Virtual Processor - Details on guest VP’s

· Hyper-V Legacy Network Adapter - Emulated network controller statistics and rates of flows.

· Hyper-V Virtual Network Adapter - Virtualized network controller statistics. This is the faster networking device.

· Hyper-V Virtual Switch - A virtual switch can attached to one and only one physical NIC. Each Virtual / Legacy NIC plugs into a virtual switch. This counter set gives details on what the switch is doing and flows of sends / receives.

· Hyper-V Virtual Switch Port - Similar to the virtual switch stats but details just a single “port” aka attached virtual NIC.

· Hyper-V Virtual IDE Controller - Details on disk commands and rates.

· Hyper-V Virtual Storage Device - Details on virtual storage reads / writes like SCSI disks.

· Hyper-V Virtual Machine Health Summary - Toggle on Health Critical & Health OK

· Hyper-V Virtual Machine Summary - State information on the number of VM’s starting, stopping, resuming, … Gives good insight into what system wide control functions are running.

 

Developers / Product Support – ADVANCED

Think of VM below as Virtual Motherboard. This is not quite true but it will help you understand what much of the functionality is targeting.

· Hyper-V Task Manager Detail - Gives detail and timing on changes to virtual machines like import, export, …

· Hyper-V Virtual Machine Bus - Interrupt rates, … on VMBUS

· Hyper-V VM IO APIC - Details on the Virtual IO APIC

· Hyper-V VM Vid Driver - The VID control memory dedicated to VM’s. This give lots of details on the types of memory used, …

· Hyper-V VM Vid Message Queue - More internal details on the VID

· Hyper-V VM Vid Numa Node - Details on how the VID is managing NUMA memory

· Hyper-V VM Vid Partition - Similar to the “Hyper-V Hypervisor Partition States” but relative to the root’s view on the partitions.

Present but non-functioning counter sets – these make be removed in the future;

· Hyper-V VM Remoting - Tracks the number of pixels written to the virtual frame buffer, …

· Hyper-V VM Save, Snapshot, and Restore - Timing on how long save, restore, … take

· Hyper-V VM Worker Process Memory Management - Details on the worker processes view on memory. The worker process is where emulation for emulated devices happen, save / restore, …

The next post will cover the most useful set of counters to monitor.

[[ ***IF YOU HAVE SPECIFIC QUESTIONS ON PERFORMANCE COUNTERS YOU WANT ANSWERED PLEASE POST A REPLY WITH THE QUESTION***]]

- Tony Voellm