Ask a questionAsk a question
 

AnswerAffinitizing VM (Out of Memory)

  • Friday, February 05, 2010 5:00 PMMULTISY Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    Does a utilily exist to show which processes occupy specific NUMA nodes, the issue is related to restarting a VM which has been assigned a specific node which no longer has enough memory to start VM.

    The workaround would be to shutdown HOST to clear memory from all nodes, and start VM right after re-boot, and is the only time enough memory will be available to start VM for sure.

    This is a problem only an after VM has been turned off for an extended period of time, but will not permit restarting VM, it sure would be nice to be able to move or stop thoose processes consuming this assigned memory; without restart the entire HOST machine.

    Any workarounds?

Answers

All Replies

  • Friday, February 05, 2010 5:34 PMSerdar Sutay [MSFT]OwnerUsers MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    I believe there are certain APIs to get this information as well with a small program. One tool can be used with some manual effort for this puspose is procexp tool from Windows Sysinternals. You can see the affinitization of processes by right clicking on the process and choosing "Set Affinity".

    I am curious of your scenario here. Why do you need to affinitize your VM on a given CPU. If you want to make sure your VM gets certain amount of CPU scheduling, correct way of doing this is to set reservation on your virtual CPUs.

    Hope this helps,
    Serdar Sutay [MSFT] Program Manager, Hyper-V This posting is provided "AS IS" with no warranties, and confers no rights.
  • Friday, February 05, 2010 6:04 PMMULTISY Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    The Hosting machine is an 8-way (Quad), so 32-cores are avaiable, but each CPU (4-cores) has local access to 16GB of memory, by setting the VM to specific node it is easier to manage memory so that no Remote Physical Pages are used.

    I am also trying to not over-subscribe core usage for certain VMs while allowing multiple VMs to run on single CPU; but unsure if it is even possible to assign two VMs (/w 4 logical CPUs) to the same Node and over-subscribe the CPU's cores to run multiple VMs?  If this is possible then unutilized VMs can share a single CPU cores.

    Thanks for the reply.
  • Saturday, February 06, 2010 1:17 PMMULTISY Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    From all appearances it is possible to over-subscribe the Logical CPUs to cores on a specific CPU.  By setting 4 VMs to the same Affinity (without exceeding memory on that node) using 8 logical CPUs, this setting is a great way to control resources.  If this is not done, then these VMs will be scathered and may result in using memory pages outside the NUMA node.  It also important to note these VMs seldom ever exceed 10% CPU load.

    Hoping this is true, and not a virtual illusion.
  • Monday, February 08, 2010 12:02 PMMervyn ZhangMSFT, ModeratorUsers MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     Answer

    Hi,

    By default, all process will be set to use all processors.

    You may have to use WinDebug to find out which process occupies memory on specific NUMA node. After that, you can use Task Manager or other tools to set its affinity. For your reference:

    Help! My Application only runs on a Single Processor system!
    http://blogs.technet.com/askperf/archive/2009/02/03/help-my-application-only-runs-on-a-single-processor-system.aspx

    If you would like, it’s suggested to contact Microsoft Customer Support Services (CSS) so that a dedicated Support Professional can assist with this request. Thank you for your understanding.

    To obtain the phone numbers for specific technology request please take a look at the web site listed below.
    http://support.microsoft.com/default.aspx?scid=fh;EN-US;PHONENUMBERS

    If you are outside the US please see http://support.microsoft.com for regional support phone numbers.

    Thanks.


    This posting is provided "AS IS" with no warranties, and confers no rights.