Skip to content

MPIAdvance Stream-triggering support#230

Draft
EvanDrakeSuggs wants to merge 15 commits into
kokkos:developfrom
EvanDrakeSuggs:stream-triggering
Draft

MPIAdvance Stream-triggering support#230
EvanDrakeSuggs wants to merge 15 commits into
kokkos:developfrom
EvanDrakeSuggs:stream-triggering

Conversation

@EvanDrakeSuggs

@EvanDrakeSuggs EvanDrakeSuggs commented Apr 23, 2026

Copy link
Copy Markdown
Contributor

Description

Add backend support for the MPIAdvance stream-triggering library. Currently, there is only an include statement no major code changes, but unit testsand perf tests do not run correctly. Everything compiles on our test system, LLNL's Tuolumne, but some of the tests timeout or don't work correctly.

We got the library working with Cabana in a similar way and I have included that projects build script, which should mean you only have to supply proper paths to kokkos-comm (cmake -DCMAKE_PREFIX_PATH=/apps/stream-triggering/ -DKokkos_DIR=/apps/kokkos/lib64/cmake/Kokkos/ -DCMAKE_CXX_COMPILER=CC -DCMAKE_INSTALL_PREFIX=/apps/kokkos-comm/ ..). Hopefully, this is just a small bug in the CMake, but it is good to get it out there.

Additional context

Changes

  • Affected areas:
  • CMakes for main directory, unit tests and perf tests. Addition of stream-triggering includes in send.hpp and recv.hpp.
  • Breaking change(s)?
  • CMake or includes are causing breaking.

Checklist

  • Ensure that tests run while detecting stream-triggering, even if no changes are made.
  • Add separate stream-triggering back-end functions.

Evan Drake Suggs and others added 4 commits February 24, 2026 13:22
* chore: update version before 0.1.0 release

* build(nccl): require NCCL 2.20+ and ensure CUDA is enabled

* build(mpi): also require MPI-3+ standard revision

This requirement was already made clear in the docs, but not enforced in
the CMake.

Signed-off-by: Gabriel Dos Santos <gabriel.dossantos@cea.fr>
@EvanDrakeSuggs

EvanDrakeSuggs commented May 1, 2026

Copy link
Copy Markdown
Contributor Author

Figured out that my code is not the issue as it has the same problems with earlier commits. However, I did redo everything and it works with 13/18 tests. Thinking there might be conflicts between what stream-triggering and Kokkos require for HIP on Tuolumne. Non-working tests are: test.core.p2p, test.core.alltoall, test.mpi.view-access, test.mpi.sendrecv, test.mpi.isendrecv.

Evan Drake Suggs and others added 11 commits May 8, 2026 15:56
…i sendrecv test, but links stream-triggering.h
…st 1000+, but not fully tested) hang. Working on Derek to fix. Plan is to split stream triggering stages to three on context object: init context with stream, queue, etc; send/recv set up their own requests and tasks on queue; finally, enqueue on context object.
…m info from fine to coarse (bug), but still did not change larger size bug.
…es Standard mode, not ready mode, but that is available in MPI Advance Stream-Triggering. Syncronous mode is currently not, nor are there plans to add. Also, cleaned up code base.
… to packing error with packing view lifetime or that packing needs to only happen after MPIS_Recv has completed and its request is over.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants