perf-report is a lightweight profiling tool that provides basic information about where the computing time is actually spent in a given application. It is developed by Allinea http://www.allinea.com/products/allinea-performance-reports and very easy to use, i.e. by simply inserting the call to
perf-report prior to the usual execution of the program.
For example, analyzing a simple MPI job could be done with the help of the following submit script to SLURM
#!/bin/bash # #SBATCH -J prflng #SBATCH -N 2 #SBATCH -L allinea@vsc #SBATCH --ntasks-per-node=16 #SBATCH --ntasks-per-core=1 #SBATCH --time=00:10:00 module purge module load intel-mpi/5 module load allinea/6.0.6_PR perf-report mpirun -np 32 a.out
This will result in the creation of two summary files in *.txt and *.html format providing an overview of the relative time spent in MPI, I/O, OpenMP etc.
Explanations, examples, typical cases at http://content.allinea.com/downloads/getting-started.pdf