An advanced profiler for .NET Applications on Windows and macOS
C#
1,202
125 commits
updated Jul 28, 2026
Ultra is an advanced profiler for .NET Applications available on Windows and macOS (Apple Silicon).
📽️ Check this video for a quick tour of ultra! 📽️
.NET, .NET JIT, .NET GC, .NET CLR, Native, KernelGC Allocation Ticks: Details about allocations.GCHeapStats: Statistics about the GCGCSuspendEE, GCRestartEE, GC Start, GC Stop eventsnet8.0+ via dotnet global tool| Screenshot of a trace generated by ultra visualized with https://profiler.firefox.com. Check this trace online here! |
|---|
![]() |
You need to have installed a .NET 10.0+ SDK
$ dotnet tool install -g Ultra # The command ultra.exe will be available from your PATH
🚨 The profiler requires to run from an elevated prompt with administrative rights 🚨
This is required to allow to collect full stack traces, including kernel and native functions.
Example: open a terminal with administrative rights, to profile an executable called my_commands.exe:
$ ultra.exe profile -- my_command.exe arg0 arg1 arg2...
⚠️ Notice the
--separator to separate the arguments toultra.exefrom the arguments to the profiled application.
Profiling a running application just requires the PID of the process to profile:
$ ultra.exe profile 15243 # PID of the process to profile
# Wait for a bit and press only one CTRL+C to stop the profiling
On macOS, no elevated privileges are required. The profiler injects a small sampler library into the launched process to collect native and managed call stacks.
$ ultra profile -- my_command arg0 arg1 arg2...
Current limitations on macOS:
--sampling-interval minimum is 1ms).libsystem_pthread.dylib) are not resolved.For more details on how to use Ultra, please visit the user guide.
This software is released under the BSD-2-Clause license.
Alexandre Mutel aka xoofx.
(top 24 of 43)
1,137 followers · starred Nov 2024
1,186 followers · starred Nov 2024
338 followers · starred Nov 2024
432 followers · starred Sep 2025
An advanced profiler for .NET Applications on Windows and macOS
C#
1,202
125 commits
updated Jul 28, 2026
Ultra is an advanced profiler for .NET Applications available on Windows and macOS (Apple Silicon).
📽️ Check this video for a quick tour of ultra! 📽️
.NET, .NET JIT, .NET GC, .NET CLR, Native, KernelGC Allocation Ticks: Details about allocations.GCHeapStats: Statistics about the GCGCSuspendEE, GCRestartEE, GC Start, GC Stop eventsnet8.0+ via dotnet global tool| Screenshot of a trace generated by ultra visualized with https://profiler.firefox.com. Check this trace online here! |
|---|
![]() |
You need to have installed a .NET 10.0+ SDK
$ dotnet tool install -g Ultra # The command ultra.exe will be available from your PATH
🚨 The profiler requires to run from an elevated prompt with administrative rights 🚨
This is required to allow to collect full stack traces, including kernel and native functions.
Example: open a terminal with administrative rights, to profile an executable called my_commands.exe:
$ ultra.exe profile -- my_command.exe arg0 arg1 arg2...
⚠️ Notice the
--separator to separate the arguments toultra.exefrom the arguments to the profiled application.
Profiling a running application just requires the PID of the process to profile:
$ ultra.exe profile 15243 # PID of the process to profile
# Wait for a bit and press only one CTRL+C to stop the profiling
On macOS, no elevated privileges are required. The profiler injects a small sampler library into the launched process to collect native and managed call stacks.
$ ultra profile -- my_command arg0 arg1 arg2...
Current limitations on macOS:
--sampling-interval minimum is 1ms).libsystem_pthread.dylib) are not resolved.For more details on how to use Ultra, please visit the user guide.
This software is released under the BSD-2-Clause license.
Alexandre Mutel aka xoofx.
(top 24 of 43)
1,137 followers · starred Nov 2024
1,186 followers · starred Nov 2024
338 followers · starred Nov 2024
432 followers · starred Sep 2025