RE: mpiexec exit code 1 even though NONMEM MPI run was successful
Nick:
In NONMEM, Exit condition 1 is issued as an identification of a worker, and
Exit condition 0 is issued as identification of the (successful) manager. This
is in case a user wants a special action taken on manager versus worker. You
can create a wrapper script, such as this example, let's call it nonmem_wrap,
so that a final exit 0 is called:
#!/bin/bash
exefile=$1
shift
./$exefile $*
status=$?
# Manager returns status 0, while workers return status 1.
if [ ! $status -eq 1 ]; then
# do something here if manager
exit 0
else
# do something here if worker
exit 0
fi
Modify your pnm file so it calls the wrapper script (which in turn calls the
nonmem executable), for example:
srun --export=ALL -n [nodes] ./nonmem_wrap <<nmexec>> $* -awnf
By over-sight I did not have this feature documented, but I shall do so.
Robert J. Bauer, Ph.D.
Senior Director
Pharmacometrics R&D
ICON Early Phase
820 W. Diamond Avenue
Suite 100
Gaithersburg, MD 20878
Office: (215) 616-6428
Mobile: (925) 286-0769
[email protected]<mailto:[email protected]>
http://www.iconplc.com