[Mpi3-hybridpm] new text for MPI_INIT/MPI_FINALIZE
Darius Buntinas
buntinas at mcs.anl.gov
Thu Feb 2 13:30:36 CST 2012
Hi Marc,
Page 317, line 18: Can we change that to:
"Each MPI process must call an MPI initialization routine, MPI_INIT or MPI_INIT_THREAD, exactly once."
The way it's currently written seems a little awkward to me.
P318 L7: I know you're not changing the current meaning, but that sentence seems to mean that processes must call MPI_FINALIZE if it calls MPI_ABORT. I suspect the idea is that a program that calls MPI_ABORT does not "exit" but rather "aborts," but the way it's written appears contradictory to me. Can we change that to:
"Unless there has been a call to MPI_ABORT, before each process exits, the process must call MPI_FINALIZE. Each process must ensure that all pending nonblocking communications are (locally) complete before calling MPI_FINALIZE."
P320, L1: Here you're adding the requirement that the MPI implementation must track any object it allocates. MPICH currently keeps track most objects (maybe all), but I don't think we should force that on an implementation. I feel users should clean up after themselves; any good programmer already does. Also, this requirement would mean that a buffer allocated with MPI_MEM_ALLOC is freed at MPI_FINALIZE. Do we really want to do that?
-d
On Feb 1, 2012, at 8:33 PM, Marc Snir wrote:
> <init-finalize.pdf>_______________________________________________
> Mpi3-hybridpm mailing list
> Mpi3-hybridpm at lists.mpi-forum.org
> http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi3-hybridpm
More information about the mpiwg-hybridpm
mailing list