4 ms·
It would be nice if .NET Core profiling was a bit easier on Linux, Microsoft has a shell script[1] to do profiling but it requires Windows only tools. They don
by rhinoceraptor 8y ago
It would be nice if .NET Core profiling was a bit easier on Linux, Microsoft has a shell script[1] to do profiling but it requires Windows only tools.
They don't ship Crossgen with the Linux packages, and you have to manually generate the .NET runtime symbols.
I've gotten things like FlameGraphs working using BCC profile[2], but it took quite a bit of work.
[1]: https://raw.githubusercontent.com/dotnet/corefx-tools/master/src/performance/perfcollect/perfcollect https://raw.githubusercontent.com/dotnet/corefx-tools/master...
[2]: https://github.com/iovisor/bcc/blob/master/tools/profile.py https://github.com/iovisor/bcc/blob/master/tools/profile.py
- tluyben2 8y agoThe perf script from MS is what we use to profile and fix issues on linux. I do not have Windows; no issues so far with just Linux. We managed to diagnose and fix every perf issue so far. Not sure what you mean by windows only tools or manually generate symbols?
- rhinoceraptor 8y agoI haven't tried the script, the documentation says you need PerfView to view the data so I didn't bother running it. For generating symbols, (I misspoke a bit, I mean downloading them) I'm talking about the native CLR runtime symbols. According to the docs if you want those, you need to use dotnet-symbol and manually download the symbols for the CLR alongside the CLR .so files.
- NicoJuicy 8y agoWell, .net was for a long time only available on windows (since 2002 and development in late 1990's). I think making the tools cross-platform after such a long time is not that easy/fast.
- tluyben2 8y agoI view in the Linux cli and I can drill down, sort etc everything there and see exactly what the issues are. No Windows or PerfView needed.