.NET Core version 3 and higher supports creating trace profiles appropriate for speedscope. To do this install the trace tool.
dotnet tool install --global dotnet-trace
Once installed, a profile file can be created in two different ways.
dotnet trace collect -p <process id> --format speedscope
dotnet trace convert --format speedscope <trace filename>
Once a properly formatted trace file exists, drop the resulting trace.speedscope.json into (https://www.speedscope.app/)
To view it offline, you'll need to install speedscope via npm:
npm install -g speedscope
Then you should be able to open it like so:
speedscope trace.speedscope.json
There was an error while loading. Please reload this page.