- Infos im HLRS Wiki sind nicht rechtsverbindlich und ohne Gewähr -

Threadspotter

From HLRS Platforms
RogueWave (formerly Acumem) ThreadSpotter analyses the application on a binary level (your optimized code compiled with debugging symbols, aka -O2 -g), finding occurrences of inefficient memory access patterns, such as bad cache usage (using only parts of a cacheline, evicting cache-lines) and cache-effects due to multiple threads. The strength of the tool is in the reporting of problematic source code, giving hints in the code, proposing changes and offering information, how the change may affect cache usage.
Roguewave-logo.jpg
Developer: RogueWave (formely Acumem)
Platforms: NEC Nehalem Cluster, Cray XE6
Category: Performance Analyzer
License: Commercial
Website: Roguewave homepage


Usage

Threadspotter is available through modules. After loading the module, the application in question needs to be sampled. This can either be done through a graphical user interface (GUI), which invokes the application, or by calling sample

module load performance/threadspotter threadspotter


Note: Do not forget to compile your application with debugging info (-g option) in order to get line-based source-code information.


Threadspotter 2011.1 GUI on Nehalem

Note: Please note, that for the graphical user interface (GUI) running on compute nodes, You need to submit the interactive session with X11 forwarding: {{{qsub -I -X ...}}}


Examples

Starting on the nodes interactively

Set up the environment

qsub -I -X ... module load performance/threadspotter


Collecting traces from MPI parallel applications

Set up the environment, loading an MPI implementation, then calling sample with proper script:

module load performance/threadspotter XXX


See also

External links