https://github.com/deric-w/findscorep
CMake find module for Score-P
https://github.com/deric-w/findscorep
cmake cmake-module score-p
Last synced: 4 months ago
JSON representation
CMake find module for Score-P
- Host: GitHub
- URL: https://github.com/deric-w/findscorep
- Owner: Deric-W
- License: apache-2.0
- Created: 2024-05-03T20:21:57.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-08-29T02:53:01.000Z (9 months ago)
- Last Synced: 2024-08-29T23:51:59.232Z (9 months ago)
- Topics: cmake, cmake-module, score-p
- Language: CMake
- Homepage:
- Size: 441 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# FindScoreP
CMake integration for [Score-P](https://score-p.org).
This is the old repository, future development happens in [score-p/scorep_cmake](https://github.com/score-p/scorep_cmake).
## Usage
1. Place the contents of the `src` directory somewhere in your
[`CMAKE_MODULE_PATH`](https://cmake.org/cmake/help/latest/variable/CMAKE_MODULE_PATH.html) and include `ScorePUtilities` in your CMake configuration.2. Call `scorep_mark` on targets which should be instrumented by Score-P.
3. After all targets have been defined call `scorep_determine_instrumentations` and use its output
to call [`find_package(ScoreP ...)`](https://cmake.org/cmake/help/latest/command/find_package.html).4. 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
Examples for using this Score-P integration are located in the `examples` directory.
## ScorePUtilities Module
See [`UTILITIES.md`](docs/UTILITIES.md) and [`AUTODETECT.md`](docs/AUTODETECT.md)
## Find Module
See [`FINDMODULE.md`](docs/FINDMODULE.md)
## Paper
This project was created as part of a introductory seminar course, which produced a paper.
Its source code and attachments can be found in the `paper` subdirectory.
## Tests
Testing using the [CTest](https://cmake.org/cmake/help/latest/module/CTest.html)
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=...`.