Profiling tools are available that allow users to profile their application/code to determine the performance of the component routines. This can be particularly useful when designing a parallel version of a sequential code.
GNU Profiler: gprof
- This is a non-graphical interface.
- gprof manual
PGI Profiler: pgprof
- This is a graphical performance profiler for parallel MPI and OpenMP applications.
- Load one of the PGI modules to set the PATH for pgprof.
- Show available PGI modules: module avail PGI
- Load the default PGI module: module load pgi
- pgprof guide
Performance Application Programming Interface: PAPI
- This is an API (Application Programming Interface) for accessing hardware performance counters.
- These interface is a library.
- Load the PAPI module to set the paths for papi: module load papi
- PAPI user guide
- PAPI programmer's reference
Lightweight, Scalable MPI Profiling: mpip
- The mpip profiler gathers statistical information about MPI functions.
- This is a link-time library.
- Load one of the mpip modules.
- Show available PAPI modules: module avail mpip
- mpip documentation
