SAMPIK is a work-in-progress API for enabling interoperability between Kokkos and Message Passing (e.g. MPI). It enables users to transparently communicate Kokkos views using MPI as a backedn.
- Point-to-point communications:
sendandreceiveviews
Assumptions:
- Views must be contiguous (but may be multi-dimensional)
- Views must reside on the
HostSpacememory space
See the Roadmap.
Before starting, make sure the following software is installed on your machine:
- CMake 3.16+
- C++20 conforming compiler
- Kokkos (packaged as a submodule of this repo)
- MPI implementation
cmake -S . -B build <KOKKOS_FLAGS...>
cmake --build buildRun the test program:
cmake --build build --target send_recv
mpirun -n 2 build/tests/send_recvOr directly using ctest:
cmake --build build --target testContributions are welcome and accepted as pull requests on GitHub.
You may also ask questions or file bug reports on the issue tracker.
Licensed under:
- MIT License (LICENSE-MIT or http://opensource.org/licenses/MIT) at your option.
The SPDX license identifier for this project is MIT.