0

I am trying to understand the RAM utilization of my application and confused with below observations.

  • VMMap shows that managed heap size of my application is around 110 MB and almost all of it is in Private Working Set (Private WS)

http://www.imageno.com/6c7tcszsgw86pic.html

If I review a full memory dump using windbg or debugdiag then total GC heap size is only 16 MB or so.

How do I interpret this data? Why would the process has so large PrivateWS in managed heap which can not be tracked in memory dump?

Is it due to Memory hoarding feature of ASP.NET? Is there a way to confirm this in memory dump of the process?

As per VMMap, Private WS is The amount of physical memory assigned to the type or region that cannot be shared with other processes.

Any suggestions on how to claim the unused RAM back?

magicandre1981
  • 27,895
  • 5
  • 86
  • 127
  • How do you measure the GC heap size in WinDbg? Can we have the output of the command please? – Thomas Weller Aug 18 '16 at 11:29
  • A dump file can't have a working set any more. As you said, working set is physical memory. A crash dump of an application is virtual memory, so you can't really compare these two. However, in your screenshot, the committed size and private size roughly match the working set, and you should be able to find those. – Thomas Weller Aug 18 '16 at 11:32
  • I am using EEheap -gc for calculating GC heap size. I have confirmed objects on managed heap multiple times using windbg and debugdiag but they hardly account for 16 MB in total. As you correctly mentioned, managed heap committed as well as private working set size is almost same I was expecting it to show up in captured memory dumps. – EverythingDotNet Aug 18 '16 at 16:29
  • I think the private working set for managed heap is approximately equal to total segment size of my gc heaps which seems very inefficient memory management as around 100MB of these segments is not used and that is leading to 100 MB additional usage of RAM. Am I reading this incorrectly? – EverythingDotNet Aug 18 '16 at 16:32
  • What does `!dumpheap -stat` say regarding `Free` objects? – Thomas Weller Aug 18 '16 at 16:34
  • around 2 MB free objects – EverythingDotNet Aug 18 '16 at 17:22

0 Answers0