dotMemory 2022.2 Help

Introduction

dotMemory is a memory profiling tool that allows you to analyze memory usage of any .NET-based application. This includes standalone applications (for example, written in C# or VB.NET), ASP.NET web applications, arbitrary .NET processes, and others.

For the information about dotMemory system requirements, refer to this page.

How does it work and why do I need it

dotMemory collects memory usage data of a running .NET process. The data is then presented to you in a number of views which provide different perspectives on objects in memory.

dotMemory allows you to answer many questions related to the memory usage of your app:

  • Why is this object still in memory (what causes a memory leak)?

  • What takes so much memory?

  • How does garbage collection affect application performance (for example, high memory traffic)?

  • Are there any memory allocation/distribution patterns violated?

Nevertheless, emergency cases (when you already have memory issues) is not the only reason for memory profiling. dotMemory is a great tool for a daily base use as well. For example, run dotMemory after applying changes to the code or introducing a new algorithm. dotMemory will immediately show you how the things are going – is it getting better or worse. Making the usage of dotMemory one of your obligatory routines will help you to improve your code on-the-fly.

Supported CPU architectures

CPU

Details

x86, x64

  • Windows, Linux, macOS: See details.

  • Linux (musl-based): .NET Core 3.1 and .NET 5.0–6.0 on x64 only. Only Alpine 3.13-3.15 is supported.

arm64

  • Linux (glibc-based): GLIBC_2.23 or later.

  • Linux (musl-based): .NET 5.0–6.0. Only Alpine 3.13-3.15 is supported.

Supported operating systems and frameworks

Windows

macOS | Linux

.NET Framework 1.0 – 4.8

Supported

Available in: standalone, console tool, Visual Studio

Notes:

  • You can attach only to .NET Framework 4.0 or later processes.

Not available

.NET Core 1.0 – 3.1

.NET 5 – 6

Supported

Available in: standalone, console tool, Visual Studio

Notes:

  • You can attach only to .NET Core 3.0 or later processes.

Supported

Available in: console tool

Notes:

  • Attaching to running .NET Core processes is possible:

    • On Linux: only for .NET Core 3.0 or later.

    • On macOS: only for .NET 5 or later.

Snapshot compatibility

Save in version

Open in version

2018.1 – 2019.1

2019.2 – 2019.3

2020.1 – 2022.2

2018.1 – 2019.1

+

-

-

2019.2 – 2019.3

-

+

-

2020.1 – 2022.2

-

-

+

Last modified: 01 August 2022