There are a couple of performance counter sets in Hyper-V that show memory usage.  These counters tend to show memory used by one component of the system and the "Hyper-V VM Vid Numa Node" counter set is no different. 

This counter set is intended to show memory used by the Virtual Infrastructure Driver (Vid).  The good news is this counter set shows "guest physical memory".  This memory includes the allocation you specify when creating the VM and some other support memory like video memory.  It is the majority of the memory used by the Virtual Machine (VM).

Hyper-V VM Vid Numa Node shows memory on a per node basis.  If you have an AMD machine you will likely see a Non-uniform Memory Access (NUMA) node for each processor.  If you have an Intel based machine you will see anywhere from one to many nodes depending on the architecture.

The following are the performance counters in the counter set;

  • PageCount                   - Number of 4K pages that the node contains.  To find the total physical memory on the system you would add PageCount from each NUMA node and multiply by 4Kbytes.
  • PagesInUse                  - Number of pages in use by the Vid on this node.  Keep in mind this is most but now all memory supporting a VM.
  • ProcessorCount           - Number of logical processors this node contains.  Logical process are equal to the number of processor (sockets) * number of cores per processor * 2 if you have HyperThreading (HT) or now called Symmetric Multithreading (SMT)

  Enjoy,

  Anthony F. Voellm (aka Tony)