Apologies if this has been covered in a previous thread - I
went back through a lot of posts without seeing anything
similar.

In an attempt to protect some users from themselves, I was hoping
that OpenMPI could be configured so that an MPI task calling
exit before calling MPI_Finalize() would cause job cleanup, i.e.
behave effectively as if MPI_Abort() was called.  The reason is
that many users dont realise they need to use MPI_Abort()
instead of Fortran stop or C exit.  If exit is called,  all
other processes get stuck in the next blocking call and, for a
large walltime limit batch job, that can be a real waste of
resources.

I think LAM terminated the job if a task exited with non-zero
exit status or due to a signal. OpenMPI appears to cleanup
only in the case a signalled task.  Ideally, any exit before
MPI_Finalize() should be terminal.  Why is this not the case?

Thanks,
David

Reply via email to