Don’t try to cancel sends.

https://github.com/mpi-forum/mpi-issues/issues/27 has some useful info.

Jeff

On Wed, Oct 2, 2019 at 7:17 AM Christian Von Kutzleben via users <
users@lists.open-mpi.org> wrote:

> Hi,
>
> I’m currently evaluating to use openmpi (4.0.1) in our application.
>
> We are using a construct like this for some cleanup functionality, to
> cancel some Send requests:
>
> *if* (*req != MPI_REQUEST_NULL) {
> MPI_Cancel(req);
> MPI_Wait(req, MPI_STATUS_IGNORE);
> assert(*req == MPI_REQUEST_NULL);
> }
>
> However the MPI_Wait hangs indefinitely and I’ve debugged into it and I
> came across this in pml_ob1_sendreq.c, eventually invoked from MPI_Cancel
> in my scenario:
>
> *static* *int* *mca_pml_ob1_send_request_cancel*(*struct* ompi_request_t*
> request, *int* complete)
> {
>     /* we dont cancel send requests by now */
>     *return* OMPI_SUCCESS;
> }
>
> The man page for MPI_Cancel does not mention that cancelling Send requests
> does not work, so I’m wondering,
> whether this is a current limitation or are we not supposed to end up in
> this specific …_request_cancel implementation?
>
> Thank you in advance!
>
> Christian
>
-- 
Jeff Hammond
jeff.scie...@gmail.com
http://jeffhammond.github.io/

Reply via email to