It’s now possible to profile native applications on Windows. When starting a profiling session, you have the option to download native source symbol files from remote servers. Native profiling is only available for the Timeline profiling type.
You can now profile .NET Core and .NET applications on macOS and Linux using the Timeline profiling type.
We’ve completely reworked the dotTrace Home screen. It’s much easier to configure and start new profiling sessions, work with snapshots, and perform other basic operations.
You can install and use the dotTrace command-line profiler as a
dotnet global tool:
dotnet tool install --global JetBrains.dotTrace.GlobalTools --version 2021.1.0
dotTrace now lets you profile .NET 5 applications on Windows, macOS, and Linux. Note that to profile applications on Linux and macOS, you should use either JetBrains Rider or dotTrace command-line profiler.
In Rider, you can switch the call tree to the flame graph mode. The graph helps you quickly identify the slowest methods in the current scope.
dotTrace for Rider gets the call tree folding feature (earlier it was available only in the standalone version of dotTrace). It helps simplify call tree analysis by folding chains of calls that do not belong to user modules and assemblies.
Both standalone dotTrace and dotTrace in Rider can profile the native part of Mono/Unity applications on Windows. Start a session with the ‘Enable native profiling’ option selected, and you’ll see both native and managed call stacks in the performance snapshots.
The dotTrace command-line profiler for Linux (any distribution with GLIBC_2.23 or later) lets you profile applications on ARM64 systems.
Now, you can navigate through Call Tree using the Next Important Call action. Press Ctrl+Shift+Right and dotTrace will navigate you to a node that is most relevant for further analysis (for example, a node with high own execution time).
The feature is available in dotTrace Standalone (both Performance Viewer and Timeline Viewer), in Visual Studio, and JetBrains Rider.
dotTrace 2019.3 supports sampling profiling of .NET Core projects on Linux and macOS. Note that only projects targeting .NET Core 3.1 are fully supported. Because of some .NET Core limitations, profiling of projects targeting .NET Core 3.0 or earlier may have some issues: in rare cases, the profiled application may hang or crash.
The command-line profiler finally comes to macOS and Linux.
dotTrace.sh has the same functionality as its Windows counterpart and is
distributed as a .tar.gz archive and as a NuGet package.
Find slowest methods in just a glance with the call tree flame graph. Note that the graph is available only in the Timeline Viewer.
dotTrace in Rider gets the full set of Timeline filters making it easier to analyze Timeline profiling snapshots in place.
If you use JetBrains Rider, you can run dotTrace on macOS and Linux to profile Mono and Unity applications.
Free 30-day trial