in Aachen
Christian Iwainsky
[email protected]
Center for Computing and Communication
RWTH Aachen University
Produktivitätstools unter Linux
Sep 16, RWTH Aachen University
HPC unter Linux IV
16.09.2008 – Ch. Iwainsky
Agenda
Lecture session:
1. Introduction to productivity tools
C. Iwainsky
2. Sun Studio Thread Analyzer
C. Terboven
3. Intel Threading Tools
4. Marmot
C. Iwainsky
5. Performance Analysis Basics
6. Sun Studio Performance Analyzer
7. Intel Tracing Tools
8. Scalasca
9. Vampir
Introduction to Sun Performance Analyzer …
1. Overview of the Sun Performance Analyzer and Collector
2. How to use
3
HPC unter Linux IV
16.09.2008 – Ch. Iwainsky
Overview of the Sun Performance Analyzer …
Facts about Sun Performance Analyzer
• collection of tools, i.e.:
• analyzer
• collect
• works with unmodified binaries
• must be dynamically linked to gain MPI information
• supports C, C++, Fortran and Java
• supports many parallel paradigms:
• OpenMP
• MPI
• POSIX and Solaris threads
Overview of the Sun Performance Analyzer …
Facts about Sun Performance Analyzer
• provides a very sophisticated GUI
• available for
Sun Solaris
Linux
• simple to use
• uses sampling and library wrapping to obtain information
• also called Sun Performance Analyzer and Collector
Summarily called “
analyzer
” from now on.
HPC unter Linux IV
16.09.2008 – Ch. Iwainsky
How to use
To use the Analyzer follow the steps:
1. Execute your application:
OpenMP:
collect -o Mdata.er yourApplication
MPI/MPI and OpenMP
mpiexec -n N collect –m on –g Mdata.erg yourApplication
2. Analyze data:
analyze MData
Thanks
The next slides have been kindly provided by:
Ruud van der Pas
Senior Staff
Technical Developer
Technologies, Sun Microsystems
The collect command
% collect
NOTE: SunOS-64-bit, 1 CPUs, i386 5.11 system amd is correctly patched and set up for use with the Performance tools.
NOTE: The J2SE[tm] version 1.6.0 found at java (picked by PATH) is supported by the Performance tools.
usage: collect <args> target <target-args>
Sun Analyzer 7.6 SunOS_i386 2007/05/03
-p <interval> specify clock-profiling
clock profiling interval range on this system is from 0.500 to 1000.000 millisec.; resolution is 0.001 millisec. -h <ctr_def>...[,<ctr_n_def>]
specify HW counter profiling for up to 4 HW counters see below for more details
-s <threshold> specify synchronization wait tracing -r <option> specify thread analyzer experiment; see man page -H {on|off} specify heap tracing
-m {on|off} specify MPI tracing
-j {on|off|path} specify Java profiling
-J <java-args> specify arguments to Java for Java profiling -P <pid> use dbx to attach and collect data from running process -t <duration> specify time over which to record data
-x specify leaving the target waiting for a debugger attach -n dry run -- don't run target or collect performance data
-y <signal>[,r] specify delayed initialization and pause/resume signal When set, the target starts in paused mode;
if the optional r is provided, it starts in resumed mode -F {on|off|all|=<regex>} specify following descendant processes -A {on|off|copy} specify archiving of load-objects; default is on -S <interval> specify periodic sampling interval (secs.)
-L <size> specify experiment size limit (MB.) -l <signal> specify signal for samples