On Dec 6, 2010, at 9:26 AM, Hicham Mouline wrote:

> Thanks, it is now clarified that  a call to MPI_INIT has the same effect as a 
> call to MPI_INIT_THREAD with
> a required = MPI_THREAD_SINGLE.  Perhaps it should be added here:
> http://www.open-mpi.org/doc/v1.4/man3/MPI_Init_thread.3.php
> as well.

Done.

> It is still unclear to me the difference between MPI_THREAD_SINGLE and 
> MPI_THREAD_FUNNELED.

In Open MPI, there's no difference.  In other MPI's there may be.  The language 
defining these levels in the MPI spec is intentionally squirrely so that 
implementations can do different things if they want/need to.

> Whether a program is or no multi threaded, if using MPI only from 1 thread 
> (the one that calls MPI_INIT) would have no bearing on the mpi 
> implementation, or?

In Open MPI, it's ok if you a) have a multi-threaded program that b) uses 
MPI_THREAD_SINGLE and c) only uses MPI from one thread.

Technically, that's not what the standard says, though -- MPI_THREAD_SINGLE is 
supposed to be used only with single-threaded applications.

-- 
Jeff Squyres
jsquy...@cisco.com
For corporate legal information go to:
http://www.cisco.com/web/about/doing_business/legal/cri/


Reply via email to