I'm trying to find the root of why my site isn't releasing memory, I'm getting a very large amount of undisposed System.ComponentModel.Design.ServiceContainer's which, I believe, is to do with the Dynamic control loading I'm doing.
However, in the native memory tab, I click on Physical -> Private -> OtherData and I've a very large amount of memory marked as <other>, and it accounts for the majority of RAM usage for the app domain, from what I can tell.
Can anyone enlighten me as to what this memory is or if theres a way to see it somehow ?
The "Other data -> <Other>" node represents memory that the profiler has failed to identify. This can be memory used by unmanaged resources or internal memory used by the runtime. The current version of the profiler does not provide any additional information about this memory, but if you have purchased a license of .NET Memory Profiler 2.x, you can download the preview of .NET Memory Profiler 3.0 (from http://memprofiler.com/preview). This preview contains an unmanaged resources tracker that might help you identify the "other data" memory.
If you unload classes from your application (e.g. by working with dynamic AppDomains), it is possible that some memory associated with the classes doesn't get released when running under the profiler. E.g. there is no possibility for the profiler to release memory allocated by the Dispose tracker, and this memory will show up as <Other>. The attach to feature of .NET Memory Profiler 3.0 can be used to get more accurate native memory information, since attaching to a process does not affect the memory usage of the process at all.
SciTech Software AB
Users browsing this forum: No registered users and 15 guests