The most advanced and easy to use performance optimization product for single and multi-threaded applications.
ThreadSpotter helps eliminate performance issues by analyzing memory bandwidth and latency, data locality, and thread communications/interaction, to pinpoint performance issues. Unlike traditional profilers that gather data but provide little analysis, ThreadSpotter provides specific guidance on performance issues by identifying them; estimating each issue’s importance and rank ordering them; and guiding the developer to the location in the source code where the issues are located.
This enables performance experts to be more productive, while also allowing non-experts to optimize the performance of their code, while developing a mastery of this exceptionally difficult aspect of parallel development.
"I first tried [ThreadSpotter] on some highly optimized code . . . It immediately identified some performance improvement opportunity in a structure originally designed for perfect cache usage. A new version of a library had silently altered the size of a data structure and this had destroyed the performance. No other tool would have managed to pinpoint such a problem!"
Jeffrey M. Birnbaum, Chief Architect, Merril Lynch
"At Pantor, we use [ThreadSpotter] to quickly gain a thorough understanding of code performance qualities. We also use [ThreadSpotter] on a regular basis to alert us of harmful code and to quickly catch performance regressions. It improves performance work productivity by offering unique insight into these problems."
Anders Furuhed, CTO, Pantor Engineering
"Using [ThreadSpotter] to drill down and find code slowspots, the productivity gain in our performance tuning process is nothing short of amazing. In one recent case, we were able to identify what appeared to be a trivial issue in a Contact Analysis Simulation of Bevel Gears. We had thought that this code was already extremely cache friendly, but [ThreadSpotter] showed us that there was still considerable room for improvement."
Dieter an Mey, HPC Team Lead, Aachen University, Germany
Zero ramp-up time
Upon starting ThreadSpotter’s intuitive GUI, the user is immediately presented with a high level overview and diagnostics of the applications in four major performance areas: memory bandwidth, memory latency, data locality and thread communication/interaction (such as false sharing and race conditions). This initial analysis provides a quick overview of the areas that should be addressed first to quickly reap performance improvements.
Increased productivity for experts and non-experts
ThreadSpotter pinpoints slow spots in the code, explains what the performance issues are, and how to fix the problems. A context sensitive manual quickly provides the user background and advice on how to solve the problems and allows experts as well as non experts to quickly determine where to focus. Each problem flagged also points back to the corresponding source code or data structure.