On Wed, 4 May 2011, Eugene Loh wrote:

Depending on what version you use, the option has been renamed
--enable-mpi-thread-multiple.

Anyhow, there is widespread concern whether the support is robust.  The
support is known to be limited and the performance poor.

Thanks :)

I absolutely see why support for MPI_THREAD_MULTIPLE is a configure option (not at all related to the fact I'm on a platform where my best interconnect gets disabled if you ask for it).

However, do the same concerns apply to MPI_THREAD_FUNNELED and MPI_THREAD_SERIALIZED? They are disabled by default too and they look difficult to enable without enabling some other functionality.


Details:

Jeff said (on this list, Tue, 14 Dec 2010 22:52:40) that, in OpenMPI, there's no difference between MPI_THREAD_SINGLE and MPI_THREAD_FUNNELED. Yet, with the default configure options, MPI_Init_thread will always return MPI_THREAD_SINGLE.

* Release 1.4.3 - MPI_THREAD_(FUNNELED|SERIALIZED) are only available if you specify "--mpi-threads". Codes that sensibly negotiate their thread level automatically start using MPI_THREAD_MULTIPLE and my interconnect (openib) is disabled.

* Release 1.5.3 - MPI_THREAD_(FUNNELED|SERIALIZED) are only available if you specify "--mpi-threads" (same problems as with 1.4.3), or enable asynchronous communication progress (whatever that is - but it sounds scary) with "--enable-progress-threads"

Things do look different again in trunk, but seem to require you to at least ask for "--enable-opal-multi-threads".


Are we supposed to be able to use MPI_THREAD_FUNNELED by default or not?

Best wishes,

Mark
--
-----------------------------------------------------------------
Mark Dixon                       Email    : m.c.di...@leeds.ac.uk
HPC/Grid Systems Support         Tel (int): 35429
Information Systems Services     Tel (ext): +44(0)113 343 5429
University of Leeds, LS2 9JT, UK
-----------------------------------------------------------------

Reply via email to