Approvals: 0/1The Previously approved version (2022/11/04 10:12) is available.
Performance Reports
Synopsis:
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 ARM (formerly Allinea) https://developer.arm.com/tools-and-software/server-and-hpc/debug-and-profile/arm-forge and very easy to use, i.e. by simply prefixing the usual executable with a call to perf-report
.
It is nowadays integral part of ARM's forge.
Usage:
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 --ntasks-per-node=16 #SBATCH --ntasks-per-core=1 module purge module load openmpi/4.1.4-gcc-12.2.0-x6sxxj3 arm/20.1_FORGE perf-report srun --jobid $SLURM_JOB_ID --mpi=pmi2 -n 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. Note the 'Energy' section in recent releases !
Further Reading:
/opt/sw/x86_64/glibc-2.17/ivybridge-ep/allinea/20.1_FORGE/doc/userguide-forge.pdf
( part 4, explanations, examples, typical cases )