Replies: 1 comment
-
This looks better than the For now, partial specialization of the API on |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
As seen here: https://github.com/cwpearson/kokkos-comm/compare/develop..experiments/non-contig-trait
I was trying to separate out non-contiguous data handling from MPI transport, and I came up with something like this:
This interface supports anything you can do to a buffer as one shot: packing, transposing, splitting into multiple messages, constructing MPI datatypes...
You could use a different (compatible!) strategy at the receiver, or provide different strategies for send and recv buffers:
The basic interface would just define a few hooks
Wish list items that I haven't figured out yet
Plan
object has some dynamic allocations in it, which would be a hindrance on the GPUAnother missing thing that might be useful
NC
(all state must only exist in the plan). This is a minor limitation that could be addressed with a default argument in addition to the template parameter.Beta Was this translation helpful? Give feedback.
All reactions