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 application

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 application 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.x

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 application without slowing down all of its other areas.

New inspection: String duplicates

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

Dominators sunburst chart

dotMemory 4.3 introduces Sunburst diagram. Just a quick look at the chart allows you to find out what objects are crucial for your application and evaluate the largest structures: The more memory a dominator retains, the larger the central angle.


ReSharper Ultimate: all individual .NET tools
and ReSharper C++ in one license

ReSharper Ultimate is a license that combines all individual JetBrains .NET tools, as well as ReSharper C++. Each ReSharper Ultimate license allows a single developer to use ReSharper, ReSharper C++, dotCover, dotTrace and dotMemory.


ReSharper

Productivity extension to Visual Studio for .NET devs

new

ReSharper C++

A fork of ReSharper that only supports C++

dotTrace

.NET performance profiler

dotCover

.NET unit test runner
and code coverage tool

dotMemory

.NET memory profiler

dotPeek

.NET decompiler & assembly browser (it's free anyway)

Use .NET languages and C++

If a single developer uses Visual Studio to code both in C# (or VB.NET, or TypeScript, or other languages supported by mainline ReSharper) and in C++, they would probably want to have ReSharper help them out in both worlds.

Have profilers readily at hand

Having familiar tools at hand helps confidently solve performance and memory consumption problems as they arise. ReSharper Ultimate includes both dotTrace and dotMemory, making them readily available when it comes to the crunch.

Enjoy uniform maintenance

ReSharper Ultimate always includes a 1-year free upgrade subscription that is aligned across all included products. Upgrade to any new releases for free within a year after purchase, and optionally renew your upgrade subscription in one step.



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

Download dotMemory

Free trial for 5 days of actual use