Profile .NET Core or .NET Application
Windows
Run dotMemory as a standalone application. The dotMemory Home window will open.
Add a run configuration – the configuration that tells dotMemory how to run the profiled application:
Under Choose what you want to profile, New Process Run, click Add run configuration.
In the New Run Configuration wizard, choose .NET and .NET Core and click Next.
Specify application options:
Path to the application executable (if it's a self-contained deployment) or to a library file (if it is a framework-dependent deployment).
Command-line Arguments for the executable (if required).
A full path to the application Working directory (by default, it's the same directory where the executable is located).
Set environment variables lets you run the profiled application with specific environment variables. Each variable must be specified on a new line.
Click Save.
Make sure the created run configuration is selected in the New Process Run list.
Under Choose how you want to profile it, specify profiling options:
Collect allocation data: choose between Sampled (approximate data on object size) and Full (accurate data on object count and size). Learn more about data collection
Optionally, if your application creates a number of processes, and you want to profile only specific ones, configure process filters.
If required, specify other profiling options.
Click Start. This will start the profiling session.
Go through a particular workflow in your application (if you want to check it on potential memory issues) or reproduce a particular memory issue. Collect memory snapshots using the Get Snapshot button. Learn more about how to control the profiling session
After you collect the data, either close the profiled application or detach the profiler using the Detach button.
Download dotMemory command-line profiler.
Unzip the archive and open the profiler directory.
Use the command-line profiler to start the profiling session and get memory snapshots. For example, to instantly get a snapshot of a running application:
dotMemory.exe get-snapshot MyApp --with-max-memTo start MyApp and take snapshots periodically:
dotMemory.exe start --trigger-timer=30s c:\MyApp\MyApp my-app-arg1
Linux and macOS
Run dotMemory as a standalone application. The dotMemory Home window will open.
Add a run configuration – the configuration that tells dotMemory how to run the profiled application:
Under Choose what you want to profile, New Process Run, click Add run configuration.
In the New Run Configuration wizard, choose .NET and .NET Core and click Next.
Specify application options:
Path to the application executable (if it's a self-contained deployment) or to a library file (if it's a framework-dependent deployment).
Command-line Arguments for the executable (if required).
A full path to the application Working directory (by default, it is the same directory where the executable is located).
Set environment variables lets you run the profiled application with specific environment variables. Each variable must be specified on a new line.
If you profile a web application and want its URL to be opened once the profiling starts, select Open URL and specify the URL. The in browser parameter lets you select a browser for opening the URL.
Click Save.
Make sure the created run configuration is selected in the New Process Run list.
Under Choose how you want to profile it, specify profiling options:
Collect allocation data: choose between Sampled (approximate data on object size) and Full (accurate data on object count and size). Learn more about data collection
Optionally, if your application creates a number of processes, and you want to profile only specific ones, configure process filters.
If required, specify other profiling options.
Click Start. This will start the profiling session.
Go through a particular workflow in your application (if you want to check it on potential memory issues) or reproduce a particular memory issue. Collect memory snapshots using the Get Snapshot button. Learn more about how to control the profiling session
After you collect the data, either close the profiled application or detach the profiler using the Detach button.
Download dotMemory command-line profiler.
Unzip the archive and open the profiler directory.
Use the command-line profiler to start the profiling session and get memory snapshots. For example, to instantly get a snapshot of a running application:
./dotMemory.sh get-snapshot MyApp --with-max-memTo start MyApp and take snapshots periodically:
./dotMemory.sh start --trigger-timer=30s ~/MyApp/MyApp my-app-arg1