[Mpi-forum] MPI_Initialized, MPI_Query_thread, MPI_Is_thread_main

Jeff Hammond jhammond at alcf.anl.gov
Fri Dec 16 09:44:55 CST 2011


Are MPI_Initialized and MPI_Query_thread guaranteed to be thread-safe
by all implementations?  If these MPI calls cannot be made in a fully
multithreaded context, how can a multithreaded library determine that
it can make MPI calls in an unrestricted fashion, i.e. determine if
MPI was initialized with MPI_THREAD_MULTIPLE?  Must the multithreaded
library mutex around these two MPI calls and assume that
MPI_THREAD_SERIALIZED is always available?

Can MPI_Is_thread_main be called from a thread that is not main when
only MPI_THREAD_FUNNELED is supported?  I recall that the funneled
mode stipulates that only the main thread can make MPI calls and there
is no text excepting this routine from that constraint.

Thanks,

Jeff

-- 
Jeff Hammond
Argonne Leadership Computing Facility
University of Chicago Computation Institute
jhammond at alcf.anl.gov / (630) 252-5381
http://www.linkedin.com/in/jeffhammond
https://wiki-old.alcf.anl.gov/index.php/User:Jhammond



More information about the mpi-forum mailing list