New Webinar: Modernising Without Destabilising: How Bread Financial Is Building Confidence Through Change

Learn more

New webinar with Bread Financial

Learn more
Contact us

Blogs

Tools for creating and analysing .NET application memory dumps

<span id="hs_cos_wrapper_name" class="hs_cos_wrapper hs_cos_wrapper_meta_field hs_cos_wrapper_type_text" style="" data-hs-cos-general-type="meta_field" data-hs-cos-type="text" >Tools for creating and analysing .NET application memory dumps</span>

Date 29 June 2026

Author Team Capacitas

Very often while running performance tests, you might notice issues around memory which could impact various areas of the system under test and also impact the end user. In a .Net environment memory leaks are a very common issue seen while developing and testing software.  When working in a managed environment, memory leaks are less common because the Garbage Collector usually takes care of the memory.  Memory leaks are more likely to happen when unmanaged code is used as it is outside the CLR.

This article shows how to use free tools available to generate a memory dump and analyse it.  Please note that this example is from a Windows 2003 server; in later versions of windows, memory dumps can be generated simply by selecting the process from Windows Task Manager and selecting the ‘Create Dump File’ option.

Creating Memory Dumps

  1. Download procdump from http://technet.microsoft.com/en-gb/sysinternals/dd996900.aspx
  2. Extract contents of the Zip file and you will find an executable called ‘procdump.exe’
  3. Find the process ID of the process from which you want to take the memory dump
    • This can be done by opening windows task manager; for example from the screenshot below we want to create a memory dump of the w3wp process which has 4224 as the process IDtask manager
  4. Open a command prompt window and navigate to the directory where you extracted procdump and type the following command:
    • procdump –ma ProcessID MemoryDumpName
      • Example: procdump –ma 4224 w3wpmemorydump
    • If the capture of the memory dump was successful, you should see a file called w3wpmemorydump.dmp created in the folder where you have the procdump executable
    • The output screen on command prompt should look like this:procmon

Analysing Memory Dumps

  1. Download and Install Debug Diagnostic Tool from here http://www.microsoft.com/en-gb/download/details.aspx?id=26798
  2. From the Debug Diagnostic Tool installation folder or the start menu, open ‘Debug Diagnostic Tool (Analysis Only)’ and click on ‘Add Data Files’ from the open windowdebug diagnostic tool
  3. Navigate to the folder where you have memory dump saved and open it.  It will then add it in the Data Files list.
  4. There are different types of analysis that can now be performed on this memory dump.  For example: Crash/Hang Analysis, Memory Pressure Analyzers, etc..
  5. As an example we will try to analyse the DotNetMemory, select the 2nd line from the analysis scripts window and click on ‘Start Analysis’
  6. After a few seconds a new tab will appear in your internet browser that will look like the screenshots below.  You can browse through the page to view memory contents, objects stored in memory and various other metrics that will help in troubleshooting performance issues.


analysis summary

CLR Information

Team Capacitas
About the author

Team Capacitas

Capacitas is a cloud and AI value partner. We translate rapid technological change into enduring commercial advantage by converting every unit of compute into enterprise value.

FinOps and AI: Building the Financial Discipline for the Next Wave of Enterprise Intelligence

AI FinOps represents an evolution rather than a replacement of traditional FinOps. It extends the model into a domain where financial, technical, and product decisions are tightly interconnected.

Read insight

Confidence Under Load: How We Verified AKS Readiness for Peak

How Capacitas verified AKS readiness for peak demand by validating workload performance, autoscaling, cluster capacity, monitoring, and incident response.

Read insight

Building Cloud Resilience: Lessons from the AWS Outage

Learning from the Latest Outage. Events like this week’s AWS disruption highlight one clear truth: resilience must be designed, not assumed.

Read insight

Bringing Order to Chaos: A Practical Guide to Chaos Testing in the Cloud

In today’s cloud-native environments, resilience is not optional—it’s critical. Chaos testing has emerged as a key practice for validating system behaviour under failure conditions.

Read insight