Thankfully, we have a few weeks before the app goes into production. After serving four pages, the .NET Memory Profiler (we purchased the standard edition), indicates that there are over 23,000 live objects and only 143 objects that have been GC'd. System.String and System.Int32 are the top 2 offenders.
The glut of information provided by the tool is a little overwhelming. How can I find out why these objects are not being collected? Any advice on how to proceed is much appreciated.
To minimize the amount of new instances it is also recommended that you do as little as possible between the snapshots. For instance, try to only request a single page between the snapshots. If you still have new instances, you might have fewer classes to investigate. If not, try to request another page and see if that creates new instances.
One obstacle when profiling ASP.NET applications is caching and session state. In order to minimize the impact caused by this, try to lower the timeouts for the cache and session, and wait for the timeout to elapse before collecting the next snapshot.
If you need help analysing a profiler session, please contact us at email@example.com and we will give you information on how to upload the session file to us.
SciTech Software AB
Check this out: http://blogs.msdn.com/tess/archive/2006 ... 32804.aspx
Users browsing this forum: No registered users and 29 guests