CMake integration for Score-P.
-
Place the contents of the
src
directory somewhere in yourCMAKE_MODULE_PATH
and includeScorePUtilities
in your CMake configuration. -
Call
scorep_mark
on targets which should be instrumented by Score-P. -
After all targets have been defined call
scorep_determine_instrumentations
and use its output to callfind_package(ScoreP ...)
. -
Call
scorep_enable
to enable Score-P instrumentation.
-
it is advised to call everything after step 2 based on an option for a flexible build configuration
-
if you don't want to vendor the
ScorePUtilities
module it should only be included when the option is enabled and its used functions replaced with dummies otherwise
Examples for using this Score-P integration are located in the examples
directory.
See UTILITIES.md
and AUTODETECT.md
See FINDMODULE.md
Testing using the CTest module requires a POSIX compatible shell to be installed.
The following labels exist:
-
cmake
, indicating a CMake-only test -
scorep
, indicating a test requiring Score-P (with supported components based on the other labels and the compiler selected by CMake) -
c
, indicating a test requiring a C compiler -
openmp
, indicating a test requiring OpenMP -
pthread
, indicating a test requiring pthreads -
openacc
, indicating a test requiring OpenACC -
kokkos
, indicating a test requiring Kokkos with an enabled OpenMP backend -
cuda
, indicating a test requiring CUDA -
boost
, indicating a test requiring certain boost components -
examples
, indicating a test building code examples
The C++ compiler used for compiling examples can be selected with -DCMAKE_CXX_COMPILER=...
.