UL HPC Tutorial: Advanced debugging on the UL HPC platform
Copyright (c) 2013-2019 UL HPC Team <hpc-sysadmins@uni.lu>
The objective of this tutorial is to practice running and debugging applications on the UL HPC clusters.
It's important that you read the slides first.
They review:
- basic tools you can use to view and understand how your application is running
- HPC oriented debugging, profiling and analysis tools:
- Allinea Forge (DDT+MAP) and Allinea Performance Reports
- Intel Advisor, Inspector, ITAC and VTune Amplifier
- Scalasca and Score-P
Your tasks
- Compile and make a first timed run of unmodified HPCG v3.0 (MPI only) as per the ULHPC HPCG tutorial
- full single node, use >=
80 80 80
for input params (edithpcg.dat
) - use
/usr/bin/time -v
to get details (especially as regards timing and memory usage)
- full single node, use >=
- Run HPCG (timed) through Allinea Performance Reports
- use
perf-report
(bonus points if usingiris
to get energy metrics)
- use
- Instrument and measure HPCG execution with Scalasca
- Re-compile HPCG with debugging symbols and run under Allinea DDT (GUI mode) and MAP (batch mode)
Helper notes:
-
Choose your toolchain (compilers, libraries, MPI implementations):
module load toolchain/intel
ormodule load toolchain/foss
-
Run HPCG in parallel:
- Gaia, Chaos clusters:
mpirun -hostfile $OAR_NODEFILE ./xhpcg
- Iris cluster:
srun ./xhpcg
- Gaia, Chaos clusters:
-
Run HPCG with Allinea Performance Reports:
- Gaia, Chaos clusters:
perf-report mpirun -hostfile $OAR_NODEFILE ./xhpcg
- Iris cluster:
perf-report srun ./xhpcg
- Gaia, Chaos clusters:
-
Compile and run HPCG with Scalasca/Score-P:
- use
toolchain/foss
,perf/Scalasca
andperf/Score-P
- edit HPCG's setup file and prepend the compiler (e.g.
mpicxx
) on the theCXX =
line withscorep
(e.g.CXX = scorep mpicxx
) - compile HPCG
- run HPCG with Scalasca in summary mode:
- Gaia, Chaos clusters:
scan -s mpirun -hostfile $OAR_NODEFILE ./xhpcg
- Iris cluster:
scan -s srun ./xhpcg
- generate text report
square -s scorep_xhpcg_*_sum
and see it withcat scorep_xhpcg_*_sum/scorep.score
- use
Note: 2019 software environment (new compilers, debuggers, profilers) can be tested with module load swenv/default-env/devel
. This is only necessary for the HPC School 2019.06, as this environment will become the new default production during summer 2019.