分析线程同步锁争用

问题描述 投票:0回答:3

过去我使用性能分析工具,如 nprof、Equatec 分析器和 Yourkit 分析器来识别和消除/减少主要在一个线程(序列化执行)中运行的代码中的性能瓶颈。现在我写了很多多线程代码,这些代码可能会因锁争用而变慢;可以使用哪些工具和技巧来确定发生锁争用的位置以及发生的程度?

.net multithreading profiling performance parallel-processing
3个回答
1
投票

这很快可用,目前在 Visual Studio 2010 beta 2 中发布。这是该工具的视频。告诉您如何下载和安装并发可视化工具的登录页面目前在这里


1
投票

试试英特尔的ThreadChecker。它适用于 Windows 和 Linux。如果您在 Windows 上工作,请尝试 Parallel Studio。它提供了一个易于使用的锁定等待分析器。它显示了运行时的总体并发性,这给出了锁争用和并发性差的提示。这些工具现在正在做你想做的事。


0
投票

对于在 Windows 上开发,软件验证有一些(http://www.softwareverify.com/thread.html).

对于 C、C++、Delphi,请尝试线程验证器。

对于 Java,还有 Java Thread Validator。

还有 Python 和 Ruby 的实验版本。

© www.soinside.com 2019 - 2024. All rights reserved.