[mpich-discuss] version 1.1 strange behavior : all processes become idle for extensive period

Darius Buntinas buntinas at mcs.anl.gov
Mon Jul 13 10:30:19 CDT 2009


Tan,

Did you just re-link the applications, or did you recompile them?
Version 1.1 is most likely not binary compatible with 1.0.6, so you
really need to recompile the application.

Next, don't use the --enable-threads=multiple flag when configuring
mpich2.  By default, mpich2 supports all thread levels and will select
the thread level at run time (depending on the parameters passed to
MPI_Init_thread).  By allowing the thread level to be selected
automatically at run time, you'll avoid the overhead of thread safety
when it's not needed, allowing your non-threaded applications to run faster.

Let us know if either of these fixes the problem, especially if just
removing the --enable-threads option fixes this.

Thanks,
-d

On 07/10/2009 06:19 PM, chong tan wrote:
> I am seeing this funny situation which I did not see on 1.0.6 and
> 1.0.8.  Some background:
>  
> machine : INTEL 4Xcore 2
>  
> running mpiexec -n 4
>  
> machine has 32G of mem. 
>  
> when my application runs,  almost all memory are used.  However, there
> is no swapping.
> I have exclusive use of the machine, so contention is not an issue.
>  
> issue #1 :  processes take extra long to be initialized, compared to 1.0.6
> issue #2 : during the run, at time all of them will become idle at the
> same time, for almost a
>                 minute.  We never observed this with 1.0.6
>  
>  
> The codes are the same, only linked with different versions of MPICH2.
>  
> MPICH2 was built with --enable-threads=multiple for 1.1.  without for
> 1.0.6 or 1.0.8
>  
> MPI calls are all in the main application thread.  I used only 4 MPI
> functions :
> init(), Send(), Recv() and Barrier(). 
>  
>  
>  
> any suggestion ?
>  
> thanks
> tan
> 
>  
> 
>      
> 
> 


More information about the mpich-discuss mailing list