<meta http-equiv="Content-Type" content="text/html; charset=utf-8">For what it's worth, I've built MPICH 3 from source on SGI ICE and it works pretty well. Great for RMA. Collectives have issues for obvious reasons. <div><br></div><div>Jeff <span></span><br><br>On Thursday, April 9, 2015, Michael L. Stokes <<a href="mailto:Michael.Stokes@uah.edu">Michael.Stokes@uah.edu</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Jeff,<br>
<br>
It is true that "mpirun" is not part of the MPI standard, but that "really" had nothing to do with the question regarding the exit status.<br>
<br>
For anyone interested, I found what I was looking for in the MPI 3.0 report.  On p. 362 the MPI_Abort() call is discussed where it is stated<br>
<br>
... "This function does not require that the invoking environment take any action with the error code. However, a Unix or POSIX environment should handle this as a return errorcode from the main program."<br>
<br>
It goes on say ...<br>
<br>
Advice to users. Whether the errorcode is returned from the executable or from the MPI process startup mechanism (e.g., mpiexec), is an aspect of quality of the MPI library but not mandatory. (End of advice to users.)<br>
<br>
Advice to implementors. Where possible, a high-quality implementation will try to return the errorcode from the MPI process startup mechanism (e.g. mpiexec or singleton init). (End of advice to implementors.)<br>
<br>
So the MPI standard is clear that returning the errorcode is not required. However not providing it in a "high-quality implementation" for a POSIX environment (Linux is considered POSIX.1 compliant) should be expected.  So I guess I'll have to find out if SGI considers MPT a high-quality implementation.<br>
<br>
I think this also raises another point.  While the MPI spec seems to distance itself (for portability reasons) how an MPI process starts, it does seem to care, at least partially, how it ends (see arguments to MPI_Abort()).<br>
<br>
I recommend that the spec include some way that the exit status be made available to the user environment regardless of whether MPI fails or not.  Maybe the standard should have an MPI_Exit() call ???  or maybe a argument to MPI_Finalize() ???<br>
<br>
<br>
<br>
On 04/09/2015 12:26 PM, Jeff Hammond wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
mpirun is not part of the MPI standard.  This is something that you'll<br>
have to discuss with your MPI implementer at SGI.<br>
<br>
Best,<br>
<br>
Jeff<br>
<br>
On Thu, Apr 9, 2015 at 9:36 AM, Michael L. Stokes<br>
<<a>Michael.Stokes@uah.edu</a>> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
This question is not MPICH specific, but I'm sure the expertise is here to<br>
answer this question.<br>
<br>
While running tests on <a href="http://spirit.afrl.hpc.mil" target="_blank">spirit.afrl.hpc.mil</a> (SGI ICE X) using the MPT/2.11<br>
stack, I noticed that mpirun returns 0 to the shell regardless of the exit<br>
value ( <stdlib.h> exit(int) ), or the return value (return(int)) from the<br>
main.<br>
<br>
Would this behavior be regarded as an error?  What are the issues?<br>
<br>
--Mike<br>
______________________________<u></u>_________________<br>
discuss mailing list     <a>discuss@mpich.org</a><br>
To manage subscription options or unsubscribe:<br>
<a href="https://lists.mpich.org/mailman/listinfo/discuss" target="_blank">https://lists.mpich.org/<u></u>mailman/listinfo/discuss</a><br>
</blockquote>
<br>
<br>
</blockquote>
<br>
______________________________<u></u>_________________<br>
discuss mailing list     <a>discuss@mpich.org</a><br>
To manage subscription options or unsubscribe:<br>
<a href="https://lists.mpich.org/mailman/listinfo/discuss" target="_blank">https://lists.mpich.org/<u></u>mailman/listinfo/discuss</a><br>
</blockquote></div><br><br>-- <br>Jeff Hammond<br><a href="mailto:jeff.science@gmail.com" target="_blank">jeff.science@gmail.com</a><br><a href="http://jeffhammond.github.io/" target="_blank">http://jeffhammond.github.io/</a><br>