Closed niklas-uhl closed 7 months ago
Because inplace operations have semantics different from the non-inplace counterparts, it would have made the parameter selection machinery even harder to understand, if we integrated it in the same member function. Therefore I extracted it to alltoall_inplace
, which is automatically called from alltoall
if a send_recv_buf
is passed instead of a send_buf
. It looks like using send_recv_*
everywhere is less error prone than allowing to pass send_buf(inplace)
. The one thing I am not sure about is whether resizing makes sense for inplace operations. So let's discuss this draft.
Do we want the user to be able to directly call alltoall_inplace
, from my perspective it would be sufficient to only have alltoall with the send_recv_buf()
option?
MPI-4.0: Data sent and received must have the same type map as specified by recvcount and recvtype
Hence, resizing should never be required?
First step towards implementing #28