When profiling web api application I noticed in hot spots section calls to StackExchange.Redis.SocketManaget.WriteAllQueues. For testing purposes I disabled caching, I don't even create ConnectionMultiplexer but still the same calls to WriteAllQueues are being displayed in hot spots. I even tried to profiel my app without and load and still the same calls are displayed in hot spot section. Is it profiler making some false hot spots? I'm using dotTrace 2018.2.3, and StackExchange.Redis 2.0.519 on .NET Framework 4.6.
1 Answer
DotTrace has a few different ways of measuring execution time:
Per default, dotTrace selects "Real time". It is useful to find out why your code is taking so long to execute. However, it is not representative of CPU usage since the threads could be sleeping. If you want to optimize for CPU usage, make sure to use "Thread time" or "Thread cycle time" instead.

