On May 6, 2012, at 12:19 PM, Jed Brown wrote:

> On Sun, May 6, 2012 at 11:07 AM, Barry Smith <bsmith at mcs.anl.gov> wrote:
>   Is your specific questions is: should we replace all MPI_Init() calls in 
> PETSc with MPI_Init_thread(...,MPI_THREAD_FUNNELED,...)?
> 
> Can't do this because of MPI-1 compatibility, but yeah, I'm thinking of 
> always using MPI_THREAD_FUNNELED if configure picks it up.
>  
> 
>  Will there be a performance hit, when one is not using threads? Should we 
> #if defined() do the replacement if the user has turned on OpenMP or Pthread 
> or TBB only and not by default?
> 
> Sounds like there is not likely to be a performance hit because the standard 
> system routines are thread safe.
> 
> http://lists.mcs.anl.gov/pipermail/mpich-discuss/2012-May/012380.html
> 
> MPICH2 does not use POSIX functions like getchar_unlocked() or non-POSIX 
> stuff like fwrite_unlocked(), so it seems like the library will be doing 
> exactly the same thing in both cases.

  I could care less about MPICH2. What happens on the Cray if one switches, 
sudden 50% drop in performance?

   Barry



Reply via email to