1
1
openmpi/ompi
Gilles Gouaillardet c9e4240e70 mpi: retain operation and datatype in non blocking collectives
MPI standard states a user MPI_Op and/or user MPI_Datatype can be free'd
after a call to a non blocking collective and before the non-blocking
collective completes.
Retain user (only) MPI_Op and MPI_Datatype when the non blocking call is
invoked, and set a request callback so they are free'd when the MPI_Request
completes.

Thanks Thomas Ponweiser for reporting this

Fixes open-mpi/ompi#2151
Fixes open-mpi/ompi#1304

Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>

(cherry picked from commit open-mpi/ompi@0fe756d416)
2019-07-12 10:27:04 +09:00
..
attribute ompi/attributes: revamp attribute handling. 2017-07-12 10:27:45 +09:00
class Revert "Update to sync with OMPI master and cleanup to build" 2016-11-22 15:03:20 -08:00
communicator Cart/Graph create would not run the next_cid algorithm and create 2019-02-22 15:11:56 -05:00
contrib ompitrace: MPI_Address -> MPI_Get_address 2018-05-01 15:20:02 -06:00
datatype Fix integer overflows with indexed datatype creation. 2019-03-13 14:20:26 -04:00
debuggers ompi/debuggers: stomp a compiler warning in dlopen_test.c 2018-05-30 10:08:14 -07:00
dpm pmix: added check for pmix fence status 2018-08-17 21:33:50 +06:00
errhandler mpi/finalized: revamp INITIALIZED/FINALIZED 2018-06-01 13:36:29 -07:00
etc Revert "Update to sync with OMPI master and cleanup to build" 2016-11-22 15:03:20 -08:00
file ompi/file: rename ompi_file_t's f_mutex into f_lock 2017-12-01 16:06:22 +09:00
group opal/asm: remove opal_atomic_bool_cmpset functions 2017-11-30 10:41:22 -07:00
include mpi: mark MPI_COMBINER_{HVECTOR,HINDEXED,STRUCT}_INTEGER removed 2019-05-01 10:50:57 +09:00
info ompi/info: plug memory leaks in ompi_mpiinfo_finalize() 2018-09-10 09:18:15 +09:00
interlib Update the interlib example to show an alternative method for model declaration. Add a missing range value to the OPAL layer. Make it easier to see OMPI model callbacks 2017-10-23 11:27:42 -07:00
mca mpi: retain operation and datatype in non blocking collectives 2019-07-12 10:27:04 +09:00
message predefined MPI object padding: set to fixed number of bytes (#3634) 2017-06-01 15:28:23 -04:00
mpi mpi: retain operation and datatype in non blocking collectives 2019-07-12 10:27:04 +09:00
mpiext mpi: retain operation and datatype in non blocking collectives 2019-07-12 10:27:04 +09:00
op ompi/op: fix support of non predefined datatypes with predefined operators 2019-01-30 10:29:39 +09:00
patterns scripted symbol name change (ompi_ prefix) 2017-07-11 02:13:23 -04:00
peruse mpi/finalized: revamp INITIALIZED/FINALIZED 2018-06-01 13:36:29 -07:00
proc ompi: Avoid unnecessary PMIx lookups when adding procs (step 2). 2017-03-16 07:47:27 +07:00
request Be conservative with the array_of_indices 2018-09-18 12:05:51 -07:00
runtime Fix the SPC initialization. 2019-05-31 00:19:14 -04:00
tools ompi_info: report whether MPI1 compat is enabled 2019-03-11 13:13:29 -06:00
util timings: added new timing points 2018-03-21 05:16:25 +02:00
win ompi/attributes: revamp attribute handling. 2017-07-12 10:27:45 +09:00
Makefile.am fortran/use-mpi-f08: fix [p]ompi_FOO_f symbols handling 2018-09-20 10:37:01 +09:00