Exercise: MiniMD Trace Collection
Build the MiniMD without likwid:
$ cd ~/Tools-Material/MINIMD
$ make
Run the uninstrumented MiniMD proxy app with 4 ranks and 10 threads each (ensure, that you are in the 'MINIMD/data' directory):
$ cd data
$ OMP_NUM_THREADS=10 mpirun -n 4 ../miniMD-ICC -t 10 --half_neigh 1
Build with modified Makefile configuration:
$ cd ..
$ make TAG=ICC.scorep
$ cd data
Run instrumented MiniMD proxy app:
$ export SCOREP_EXPERIMENT_DIRECTORY=scorep-minimd-4x10-profile
$ OMP_NUM_THREADS=10 mpirun -n 4 ../miniMD-ICC.scorep -t 10 --half_neigh 1
Examine scoring:
$ scorep-score scorep-minimd-4x10-profile/profile.cubex
List also individual functions causing trace buffer requirements:
$ scorep-score -r scorep-minimd-4x10-profile/profile.cubex
Generate an initial filter file base on default heuristic:
$ scorep-score -g scorep-minimd-4x10-profile/profile.cubex
Examine filter file:
$ cat initial_scorep.filter
Apply filter file to determine expected reduction:
$ scorep-score -f initial_scorep.filter scorep-minimd-4x10-profile/profile.cubex
Apply filter file to measurement and re-run MiniMD:
$ export SCOREP_EXPERIMENT_DIRECTORY=scorep-minimd-4x10-filtered
$ export SCOREP_FILTERING_FILE=initial_scorep.filter
$ OMP_NUM_THREADS=10 mpirun -n 4 ../miniMD-ICC.scorep -t 10 --half_neigh 1
Re-examine effect of filter file:
$ scorep-score scorep-minimd-2x10-filtered/profile.cubex
Enable trace file collection:
$ export SCOREP_EXPERIMENT_DIRECTORY=scorep-minimd-4x10-tracing
$ export SCOREP_ENABLE_TRACING=true
$ export SCOQREP_TOTAL_MEMORY=23MB
$ OMP_NUM_THREADS=10 mpirun -n 4 ../miniMD-ICC.scorep -t 10 --half_neigh 1
Examine experiment result:
$ ls -la scorep-minimd-4x10-tracing
"Switch to XFCE Dekstop" and start Vampir:
$ vampir scorep-minimd-4x10-tracing/traces.otf2
Questions:
- What functions are filtered out of the measurement? Does this list make sense in a parallel performance engineering context?
- How much overhead was there in the initial measurement? Is this an acceptable value?
- How much overhead was there in the filtered measurement? Is this an acceptable value?
Last modified: Thursday, 20 June 2024, 8:39 PM