用于具有托管功能的 Win32 平台的低开销(统计)分析器
有人可以推荐 Windows 上的 LOP 吗? 类似于 Linux 的 OProfile 或 OS X 的 鲨鱼。
- 必须能够对
- 能够解析 CLR 堆栈的
- 非检测二进制文件进行采样最好延迟 PDB 符号解析
- 影响足够低,以便能够在实时生产系统上获得良好的读数
Anyone can recommend a LOP on Windows? Similar to Linux's OProfile or to OS X's Shark.
- must be able to sample non-instrumented binaries
- capable of resolving CLR stacks
- preferable delayed PDB resolution of symbols
- impact low enough to be able to get a decent reading on live, production systems
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
Visual Studio Team Suite 分析器非常棒。 它非常擅长它的工作,这让我看起来更擅长我的工作。
Redgate 有一个 性能分析器 和 内存分析器 我没有使用过。
The Visual Studio Team Suite profiler is amazing. It's so good at its job that it makes me seem better at mine.
Redgate has a performance profiler and memory profiler which I haven't used.
自动 QA 的 AQTime 救了我的命。 我用它来解决 .NET Web 服务调用一些令人讨厌的旧 C 代码的问题,并且它做得很好。
Automated QA's AQTime has saved my butt. I used it to figure out a problem with a .NET web service calling some nasty old C code, and it did it well.
这就是我使用的。 虽然它不适合现场制作使用,但它满足了您的其他需求。
对于现场生产使用,您需要对堆栈进行采样的东西。 在我看来,如果有一些小的开销就可以了。 我的目标是发现需要优化的活动,为此我愿意付出暂时的速度代价。
总是存在一个或多个令人感兴趣的时间间隔,例如收到请求和发出响应之间的时间间隔。 令人惊讶的是,在这样的时间间隔内只需要很少的样本就可以找出花费时间的原因。
不需要高精度的计时。 如果发生 X 的事情,通过优化,可以为您节省 50% 的时间间隔,这大约是向您显示 X 的样本的比例。
This is what I use. Although it is not suitable for live production use, it answers your other needs.
For live production use, you need something that samples the stack. In my opinion, it's OK if it has some small overhead. My goal is to discover the activities that need optimization, and for that I'm willing to pay a temporary price in speed.
There is always one or more intervals of interest, like the interval between when a request is received, and the response goes out. It's surprising how few samples you need in such an interval to find out what's taking the time.
High precision of timing is not needed. If there is something X going on that, through optimization, would save you, say, 50% of the interval, that is roughly the fraction of samples that will show you X.