How to get Memory Committed Bytes per process? RRS feed

  • Question

  • You can get the total committed bytes of the server via win32_perfrawdata_perfos_memory.  However i would like to see the contribution of each individual process.   Using get process, I have a number of "memory" metrics.  I thought the private memory would equate to the committed but the numbers don't match up.  Also this is a 64 bit OS, and seeing the issue where the 32-bit value may be negative or a huge number, but I'm summing the 64-bit value.

    The underlying issue here is we get frequent virtual memory low warnings on a specific server.  The commit is always nearing or hitting the limit.  The commit typically hovers at only 10-20% of the limit, but some process quickly bursts this to the limit or higher and we are trying to capture exactly which process is the culprit.

    Please advise; thanks.

    Monday, November 21, 2016 3:57 PM

All replies

  • Virt Mem low means your page file is nearly full.  Increase the size of the page file.


    Monday, November 21, 2016 8:02 PM
  • jrv - we have already increased the page file size.  

    We have a few hundred application servers more of less of the same build.  This is the only one where the virtual memory blows up; and that is also after bumping the virtual memory size up a few times.  It is under control now, but we still want to figure out what process is consuming all the virtual, as we don't really know if the current page file size is above the potential ceiling.  The page file is static rather than system managed.

    Monday, November 21, 2016 9:27 PM
  • The best way to detect hungry processes is to use perfmon and run it continuously.  Monitor only pg file usage per process and set teh scan time to 60 seconds or longer.  You will then see what processes are using large amounts of memory.

    You can also use Get-Process to return the largest usage numbers.

    get-process | sort PeakPagedMemorySize64 -desc | select Name, PeakPagedMemorySize64 -First 10


    Monday, November 21, 2016 9:34 PM