[mpich-discuss] Advice on thread support

Rajeev Thakur thakur at mcs.anl.gov
Wed Jan 7 16:34:02 CST 2009


> - Does the current version of MPICH2 support threads in MULTIPLE mode?
>  Is said support stable/reliable?

Yes.

> - What about MPICH2 1.0.7?  (The two clusters I'm currently using for
> test and production purposes are still at that version, and their
> maintenance is beyond my control; I guess I could install 1.0.8 in
> user space, and use that instead, but it would be nice to know if that
> will be necessary or 1.0.7 is recent enough.) 

It does too, although newer versions may have bug fixes.

Rajeev


> -----Original Message-----
> From: mpich-discuss-bounces at mcs.anl.gov 
> [mailto:mpich-discuss-bounces at mcs.anl.gov] On Behalf Of Nicolas Rosner
> Sent: Wednesday, January 07, 2009 12:14 PM
> To: mpich-discuss at mcs.anl.gov
> Subject: [mpich-discuss] Advice on thread support
> 
> Hello all,
> 
> I'm considering a threads-based approach to solve a problem in my C++
> MPI design.  I do know what threads are, and have written a few
> programs that use multiple threads in languages like Java or Python,
> but I don't have any experience with POSIX threads, or any other
> flavor of a threads lib in C++, let alone mixing threads with MPI
> code.  Furthermore, my idea would need different threads (well, at
> least two of them) to be able to call MPI primitives independently,
> thus requiring MPI_THREAD_MULTIPLE mode.
> 
> Since some of the documents I've been reading about this matter seem
> to contradict each other (perhaps because some of them are older than
> others, or because my interpretation of them was incorrect due to
> ignorance of some details, or all of the above), I thought I'd ask you
> a few questions:
> 
> - Does the current version of MPICH2 support threads in MULTIPLE mode?
>  Is said support stable/reliable?
> 
> - What about MPICH2 1.0.7?  (The two clusters I'm currently using for
> test and production purposes are still at that version, and their
> maintenance is beyond my control; I guess I could install 1.0.8 in
> user space, and use that instead, but it would be nice to know if that
> will be necessary or 1.0.7 is recent enough.)
> 
> - What about MVAPICH?  (We intend to run experiments on a cluster with
> an InfiniBand switch next month.)
> 
> - What about other MPI implementations?  Generally speaking, would you
> say such support is reasonably widespread?
> 
> Not that I'm planning to move away from MPICH anytime soon -- I'm very
> satisfied with it so far, and it's what most systems down here seem to
> be using anyway.  But our original decision to use MPI was driven by
> portability; in particular, we're still trying to gain access to some
> newer, more powerful clusters, and would like our program to be able
> to run on them with few or no modifications.
> 
> (Actually, small changes wouldn't be a major concern, since deployment
> on a new cluster is by no means a frequent event. But it would be a
> problem if we decided to add MPI_THREAD_MULTIPLE support as a strict
> requirement, only to end up realizing, later on, that too many
> potential clusters don't provide it at all.)
> 
> Thanks in advance for your opinion and any comments that 
> might be of help.
> 
> Regards (and happy 2009!),
> 
> Nicolás Rosner
> Universidad de Buenos Aires
> Argentina
> 




More information about the mpich-discuss mailing list