This version (2024/10/24 10:28) is a draft.
Approvals: 0/1
The Previously approved version (2022/11/04 10:12) is available.Diff

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.

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 !

/opt/sw/x86_64/glibc-2.17/ivybridge-ep/allinea/20.1_FORGE/doc/userguide-forge.pdf ( part 4, explanations, examples, typical cases )

  • doku/perf-report.txt
  • Last modified: 2024/10/24 10:28
  • by 127.0.0.1