Categories: Debugging and Profiling, Software
Print this article
Performance optimization is a key issue for the development of efficient parallel software applications. Vampir provides a manageable framework for analysis, which enables developers to quickly display program behavior at any level of detail. Detailed performance data obtained from a parallel program execution can be analyzed with a collection of different performance views. Intuitive navigation and zooming are the key features of the tool, which help to quickly identify inefficient or faulty parts of a program code.
Vampir supports program analysis for MPI, OpenMP and CUDA-accelerated applications and their combinations. VampirClient is the graphical user interface, installed on the user’s local machine. The analysis is done using VampirServer, running on the parallel machine, like Titan. This allows handling of large traces with additional information, such as function call-stacks, PAPI hardware performance counters and user supplied events and markers. Traces can be generated using Score-P, please check the corresponding NCCS information page.
Using VampirClient on your workstation:
titan$ module load vampir titan$ vampirserver start -a <proj> workstation$ # Start VampirClient and connect to the running server
Please follow the instructions of the vampirserver script. This script will launch a batch job and provides you with all necessary information to create a ssh tunnel to the running VampirServer instance. For details, see ‘vampirserver -h’.
Vampir using X11 forwarding:
workstation$ ssh -X titan.ccs.ornl.gov titan$ module load vampir titan$ vampir &
Note: It’s highly recommended to use the server/client version, see above, because of slow X11 forwarding and interferences by other users on the login nodes.
VampirClient Installation on workstation
- Download VampirClient for target platform (scp from home or any other NCCS system)
- Download vampir.license from the same directory
- Install Vampir (platform specific)
- Start Vampir and import vampir.license
- Follow the instructions to activate Vampir, if necessary (Attention: Users w/o ORNL e-mail address must use the remote client, see below)
- Conntect to Titan via ssh tunnel and open trace files
$ scp <user>@home.ccs.ornl.gov:/sw/sources/vampir/client/vampir-*-x86.bin . # 32bit $ scp <user>@home.ccs.ornl.gov:/sw/sources/vampir/client/vampir-*-x86_64.bin . # 64bit $ scp <user>@home.ccs.ornl.gov:/sw/sources/vampir/client/vampir.license . $ bash ./vampir-*.bin $ ./vampir-*/bin/vampir
Mac OS X:
$ scp <user>@home.ccs.ornl.gov:/sw/sources/vampir/client/vampir-*.dmg . $ scp <user>@home.ccs.ornl.gov:/sw/sources/vampir/client/vampir.license . # Proceed with dmg installation by opening it and dragging the Vampir icon to your preferred launch spot. Start Vampir using this icon.
# Copy home.ccs.ornl.gov:/sw/sources/vampir/client/vampir-*-x86.exe #32bit # or home.ccs.ornl.gov:/sw/sources/vampir/client/vampir-*-x86_64.exe #64bit # as well as vampir.license, e.g. using winscp.
This client doesn’t have the ability to analyze traces w/o connection to a running VampirServer but can be used by all users and without activation. Use the instructions above to download the client and license, but use the remote license file instead.
$ scp <user>@home.ccs.ornl.gov:/sw/sources/vampir/client/vampir-remote.license .
To use Vampir from your workstation/laptop, please follow the guidelines provided in the document Vampir usage at NCCS.
The VampirClient is usually executed on your workstation/laptop. The latest installation files for the GUI licensed to ORNL can be downloaded from the directoy /sw/sources/vampir/client. The installation files are available for Linux (.bin), Windows (.exe) and Mac OS X (.dmg).