dotMemory — Smart and reliable .NET memory profiler

Optimize memory usage in your .NET application.
Detect memory leaks. Fight all types of memory issues.

Download dotMemory

Free trial for 5 days of actual use

Profile various .NET application types

dotMemory allows you to analyze memory usage of various .NET applications based on .NET Framework 2.0 to 4.5.2: Standalone, ASP.NET web applications, IIS, IIS Express, Windows services, arbitrary .NET processes, and more.

Optimize memory usage in .NET apps

Easily control profiling process

Use timeline view to monitor memory consumed by your application in real time. On-demand allocations collection control

Easily control profiling process

Collect profiling data

Get snapshots with a single click without stopping your profiling session, add them to compare or browse memory traffic during a particular timeframe.

Get snapshot

Begin your analysis with automatic inspections

Thanks to multiple powerful built-in inspections, the most common memory issues are detected with a single click, no manual effort required. Just get a snapshot and find the next steps to optimizing memory usage.

Begin your analysis with automatic inspections

Dig deeper with multiple data views

For in-depth analysis, dotMemory offers many different criteria to apply to memory usage data, so you can view data from thousands of different angles, and drill-down, dice, slice or pivot as you wish.

Dig deeper with multiple data views

Understand memory traffic in your app

Analyse memory traffic during particular timeframe to know the cause of excessive allocations and garbage collections. Determine how objects were allocated and collected and what methods stay behind these allocations.

Understand memory traffic in your app

Why dotMemory?

Powerful automatic inspections

To ease your task, dotMemory automatically scans your snapshot for most common types of memory issues. These inspections can be a great starting point in analyzing a snapshot if you're not sure where to begin.

Analyzing memory traffic

Excessive allocations and garbage collections may imply significant memory management overhead. Use the traffic view to understand what objects are created/collected most intensively in your app and what functions are causing this memory traffic.

Multiple views on data

Examine objects in the heap from multiple views. Want to know how objects relate to each other? What objects do they reference and through what fields? Want to know which calls created these objects? No problem! dotMemory has a view for everything.

Comparing memory snapshots

Comparing two snapshots is the main way to find objects that are causing a memory leak. Use the comparison view to find out how many objects were created between snapshots and how many objects were collected.

What’s new in dotMemory 4.1 and 4.2

On-the-fly allocations control

Starting from dotMemory 4.1 you can disable/enable collection allocations on the fly right in timeline view, in order to profile a certain functionality of your app without slowing down all of its other areas.

Shared .NET tools platform

All JetBrains .NET tools are operate on a shared platform, which conserves resources when several products are running at the same time. By a single installer you simply choose which products you want to install and let the installer do the rest.

New inspection: String duplicates

Detect more common issues types in a single click, and get better insight into your app memory usage with less effort. Recently, we've added string duplicates and WPF-related inspections.

Make more sense of .NET memory usage.
Join our customers:

Download dotMemory

Free trial for 5 days of actual use