Hello,
When I profile my application with dotTrace 5.0, a large percentage of the running time shows up as "[Unsafe stack walking]". I've been unable to find any documentation about this. What exactly does this mean?
Thanks
Joe Strommen
After further investigation, this only happens for the Sampling profiler, and it appears to happen for time spent in a call to a WCF service. So I guess my question is - does dotTrace not support profiling calls to WCF services?
To be clear - this is not a WCF service I am profiling, it is a WPF thick client that calls web services.
Joe
Hi Joe,
The sampling profiler generates stack traces for managed threads by timer. So, there are some reasons when profiler can not get managed stack trace:
- only native code on stack
- unsafe time to walk on stack (for example: can't get thread context, some restriction in inside CLR, ...)
We shows that time in special nodes: [native or optimized code] & [unsafe stack walk] as you can see.
We also have some improvements in our x86/x64 stack walker. Now it's under stress testing. So, I belive that dotTrace 5.0.1 will contain it. New stack walker should decrease time for [...] nodes.
--
Mikhail Pilin
Senior Software Engineer
JetBrains GmbH
http://JetBrains.com
"Develop with pleasure!"