[mpich-discuss] mpi/openmp hybrid seg fault

Jeff Hammond jhammond at alcf.anl.gov
Thu Dec 22 07:26:26 CST 2011

The portable equivalent of KMP_STACKSIZE is OMP_STACKSIZE.  We have
found on Blue Gene/P that when values of this parameter are too small,
segfaults occur without an obvious indication that this is the
problem.  I assume this is not a platform-specific problem.

The Intel Fortran compiler puts all static arrays on the stack by
default.  You can change this.  See
for details, but I recommend you use "-heap-arrays".  GNU Fortran
(gfortran) does not have this problem, so recompiling with it is a
fast way to determine if stack allocation - independent of OpenMP - is
the problem.


On Thu, Dec 22, 2011 at 1:22 AM, Anthony Chan <chan at mcs.anl.gov> wrote:
> ----- Original Message -----
>> The fact that I need this to work for the much larger problem is why
>> simply
>> changing static arrays to dynamic equivalents is not a viable solution
>> unfortunately.
> I didn't check your program, but based on your description of problem,
> you may want to increase the stack size of your threaded program.
> Try setting "ulimit -s" and "KMP_STACKSIZE" to what your program's
> need.  See ifort's manpage on KMP_STACKSIZE's definition.
> A.Chan
> _______________________________________________
> mpich-discuss mailing list     mpich-discuss at mcs.anl.gov
> To manage subscription options or unsubscribe:
> https://lists.mcs.anl.gov/mailman/listinfo/mpich-discuss

Jeff Hammond
Argonne Leadership Computing Facility
University of Chicago Computation Institute
jhammond at alcf.anl.gov / (630) 252-5381

More information about the mpich-discuss mailing list