[MPICH] collective abort of all ranks

Anthony Chan chan at mcs.anl.gov
Mon Jun 11 16:26:35 CDT 2007

I don't know if this will work on your absoft-8.0 compiler, but it works
on our intel-8.1 compiler based on the assumption that array assignment
statement can be resource intensive.

I replaced the return type of func1() from an array to real(WP),
i.e. "real(WP) function func1()" and replace your array assignment

  array1(0:elem_xr-1,0:elem_xr-1) = func1()+func1()+func1()+func1()


  integer :: ii, jj

  do ii = 0, elem_xr-1
     do jj = 0, elem_xr-1
         array1(jj,ii) = func1()+func1()+func1()+func1()

Afterward, I was able to run your program with intel-8.1 compiler with
any number of processes.  Hope this helps.


On Mon, 11 Jun 2007, Kamaraju Kusumanchi wrote:

> > The assignment statement is competing with MPI with memory and it
> > is related to how fortran compiler uses memory.  I am not familar with
> > fortran 90 compiler to say much here, but both intel-8.1 compiler and
> > absoft 8.0 compiler are pretty old, so you may want to use other newer
> > fortran compilers if possible.  If gfortran is working fine, why don't you
> > use gfortran then.
> >
> The test.f90 that I attached is a reduced test case from a large code.
> The original code uses functions from IMSL libraries. These IMSl
> libraries were supplied by absoft compiler. So I am stuck with absoft
> compiler.
> Is there any free equivalent for IMSl libraries?

More information about the mpich-discuss mailing list