- System requirements
- Profiler architecture
- Running the profiler
- Profiler activation
- Start profiling
- IDE integration
- Profile .NET executable
- Profile ASP.NET application IIS
- Profile all .NET processes that will start
- Attach profiler to a running application
- Profile remote applications
- Profiling in Docker container
- Manually enable profiling of local applications
- Startup options
- Connect to profiled application
- Profiling troubleshooting
- Profiling overhead: how to reduce or avoid
- Capturing snapshots
- Solving performance problems
- CPU profiling
- Threads
- Memory profiling
- Garbage collection
- Exception profiling
- Probes: monitor higher level events
- Performance Charts
- Inspections: automatic recognition of typical problems
- Automatically trigger actions on event
- Summary, snapshot annotation, automatic deobfuscation
- Time measurement (CPU time, wall time)
- Filters
- Snapshot directory customization
- Export of profiling results to HTML, CSV, XML, plain text
- Profiler API
- Profiler HTTP API
- Command line tool to control profiling
- Settings
Connect to profiled application
Once the profiled application is running, you should connect to it to obtain and analyze profiling results.
All detected .NET applications are shown in the "Monitor Applications" list on Welcome screen. Connect to the application you want to profile by clicking on its name.

The colored circle indicates the profiler agent status in the CLR process. Green circle means the agent has been loaded, and connection will happen immediately. Orange circle means the agent has not been loaded yet, and the profiler will automatically attach the agent before connection.
Local applications are shown under the node with icon.
Applications running on the remote machines are shown under their own nodes with
icon.
To add a new remote machine click
.
See Profile remote applications to learn more.
Profiler hides development tools, such as IDEs, in the list by default.
This can be configured by clicking on the icon.
If you do not see your application it the list, please read profiling troubleshooting.
Profiling session
After a connection is established successfully, the profiling session tab opens. It displays the profiled application telemetry, and provides the toolbar to control profiling.

Toolbar Button | Description |
![]() |
Capture performance snapshot - save the profiling results to a file, for comprehensive analysis |
![]() ![]() ![]() |
CPU profiling controls |
![]() ![]() |
Thread stack telemetry control |
![]() |
Capture memory snapshot |
![]() ![]() ![]() |
Object allocation recording controls |
![]() |
Force garbage collection in the profiled application |
![]() ![]() ![]() |
Exception profiling controls |
![]() |
Triggers - configure actions automatically performed on events |
![]() |
Clear all telemetry charts |
![]() |
Pause - stop/start receiving data from profiled application |
![]() |
Refresh - immediately receive profiling data from the profiled application and update the views |
![]() |
Transfer snapshots during remote profiling |
You can close the profiling session tab by using File | Close Profiling Session.
You can connect to and disconnect from the profiled application as many times as you wish during its run time.