Compare commits

...

5 commits

Author SHA1 Message Date
b4f04211b1 Fix error in mpiP LD_PRELOAD 2024-01-08 16:32:59 +01:00
5b262a0120 Update section on DLB 2024-01-08 16:31:50 +01:00
db7d4fc153 Use gcc also for DLB 2024-01-08 15:52:41 +01:00
9fd004710a Use gcc also for mpiP 2024-01-08 15:48:08 +01:00
c6eb4ab7dd Compile Extrae proper with gcc 2023-12-21 11:59:09 +01:00

View file

@ -69,11 +69,11 @@ else
fi
__MPI=$LMOD_FAMILY_MPI@$LMOD_FAMILY_MPI_VERSION
#spack spec -N -I cheese.extrae%${__COMPILER}~~cuda ^${__MPI} ^binutils@2.36: ^papi@7.0.1
spack install --add cheese.extrae%${__COMPILER}~~cuda ^${__MPI} ^binutils@2.36: ^papi@7.0.1
#spack spec -N -I cheese.extrae%gcc~~cuda ^${__MPI}%${__COMPILER} ^binutils@2.36: ^papi@7.0.1
spack install --add cheese.extrae%gcc~~cuda ^${__MPI}%${__COMPILER} ^binutils@2.36: ^papi@7.0.1
#spack spec -N -I mpip%${__COMPILER} ^${__MPI}
spack install --add mpip%${__COMPILER} ^${__MPI}
#spack spec -N -I mpip%gcc ^${__MPI}%${__COMPILER}
spack install --add mpip%gcc ^${__MPI}%${__COMPILER}
```
Extrae needs a configuration file `extrae_detail_circular.xml`
@ -106,7 +106,7 @@ eval $(spack env activate --sh $SPACK_USER_PREFIX/cheese_env)
# load and configure mpiP
eval $(spack load --sh mpip)
export MPIP="-c -d"
TRACE="env LDPRELOAD=libmpiP.so"
TRACE="env LD_PRELOAD=libmpiP.so"
# add $TRACE before you application executable
srun ... ${TRACE} ./appl ...
@ -158,6 +158,8 @@ Consider doing not just one run, but several to get a feeling for the variation
## Optional: Installing DLB
TALP is a tool which determines some of the POP metrics online while the application is running; no traces are generated. TALP is a part of the library DLB.
Activate your Spack environment as [explained above](#Activating%20Spack%20environment), then load your module environment as usual.
Add the latest Spack recipe for DLB with
@ -176,11 +178,29 @@ else
fi
__MPI=$LMOD_FAMILY_MPI@$LMOD_FAMILY_MPI_VERSION
spack spec -N -I dlb@3.3.1%${__COMPILER} ^${__MPI}
spack install --add dlb@3.3.1%${__COMPILER} ^${__MPI}
#spack spec -N -I dlb@3.3.1%gcc ^${__MPI}%${__COMPILER}
spack install --add dlb@3.3.1%gcc ^${__MPI}%${__COMPILER}
```
TODO: use DLB
You need to modify your jobscripts to attach TALP/DLB to your executable. Add something like this to your jobscript
```bash
# activate Spack environment
export PROJECT_ID=465000533 # put your own here
export SPACK_USER_PREFIX=/project/project_${PROJECT_ID}/spack_ChEESE
module load spack/23.03-2
eval $(spack env activate --sh $SPACK_USER_PREFIX/cheese_env)
# setup your modules, etc
# module load ...
# load and configure mpiP
eval $(spack load --sh dlb)
export DLB_ARGS="--talp --talp-summary=pop-metrics"
TRACE="env LD_PRELOAD=libdlb_mpi.so"
# add $TRACE before you application executable
srun ... ${TRACE} ./appl ...
```
## Optional: Fixing Modulefiles