/usr/lib/mpich/bin/mpirun is in mpich-bin 1.2.7-10ubuntu1.
This file is owned by root:root, with mode 0o755.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 | #! /bin/sh
# MPIRUN for MPICH
# (Don't change the above line - we use it to identify MPICH mpirun as
# opposed to others (e.g., SGI's mpirun)
#
# This script tries to start jobs on whatever kind of machine you're on.
# Strategy - This program is built with a default device it uses in
# certain ways. The user can override this default from the command line.
#
# This sh script is designed to use other scripts to provide the commands
# to run each system, using the . filename.sh mechanism
#
# Debuggers should be handled by running
# mpirun.db.<debugger_name>
# e.g., mpirun.db.gdb or mpirun.db.xxgdb.
# This will allow users to add there own debuggers
# (with -debug=<debugger_name>)
#
# Set default variables
AUTOMOUNTFIX="sed -e s@/tmp_mnt/@/@g"
DEFAULT_DEVICE=ch_p4
RSHCOMMAND="/usr/bin/rsh"
SYNCLOC=/bin/sync
CC="cc"
COMM=
GLOBUSDIR=@GLOBUSDIR@
CLINKER="cc"
prefix=/usr/lib/mpich
bindir=/usr/lib/mpich/bin
# Record the value of sbindir. Some useful utilities, such as
# cleanipcs (used for cleaning up shared memory segments and semaphores)
# are placed in this directory.
# exec_prefix is set because the sbindir by default is exec_prefix/sbin
exec_prefix=${prefix}
sbindir=${exec_prefix}/sbin
# This value for datadir is the default value setup by configure
# This value for datadir is the default value setup by configure
datadir=/usr/lib/mpich/share
DEFAULT_MACHINE=ch_p4
DEFAULT_ARCH=LINUX
# Derived variables
MPIRUN_BIN=$bindir
MPIRUN_HOME=$MPIRUN_BIN
MPIVERSION="1.2.7 (release) of : 2005/11/04 11:54:51"
# The command line argument for the head and tail commands. Some
# later versions of GNU utilities do not accept the classic commandline
# option (!!)
HEADARG="-"
#set verbose
#
# Local routines
#
# End of routine
#
#
# Special, system specific values
#
# polling_mode is for systems that can select between polling and
# interrupt-driven operation. Currently, only IBM POE is so supported
# (TMC CMMD has some support for this choice of mode)
polling_mode=1
# Parse command line arguments
# The ultimate goal is to determine what kind of parallel machine this
# is we are running on. Then we know how to start jobs...
#
# Process common arguments (currently does ALL, but should pass unrecognized
# ones to called files)
#
hasprinthelp=1
. $MPIRUN_HOME/mpirun.args
argsset=1
#
# Jump to the correct code for the device (by pseudo machine)
#
mpirun_version=""
case $machine in
ch_cmmd)
mpirun_version=$MPIRUN_HOME/mpirun.ch_cmmd
;;
ibmspx|ch_eui|ch_mpl)
mpirun_version=$MPIRUN_HOME/mpirun.ch_mpl
;;
anlspx)
mpirun_version=$MPIRUN_HOME/mpirun.anlspx
;;
ch_meiko|meiko)
mpirun_version=$MPIRUN_HOME/mpirun.meiko
;;
cray_t3d|t3d)
mpirun_version=$MPIRUN_HOME/mpirun.t3d
;;
ch_nc)
mpirun_version=$MPIRUN_HOME/mpirun.ch_nc
;;
paragon|ch_nx|nx)
mpirun_version=$MPIRUN_HOME/mpirun.paragon
;;
inteldelta)
mpirun_version=$MPIRUN_HOME/mpirun.delta
;;
i860|ipsc860)
mpirun_version=$MPIRUN_HOME/mpirun.i860
;;
p4|ch_p4|sgi_mp)
mpirun_version=$MPIRUN_HOME/mpirun.ch_p4
;;
gm|ch_gm|myrinet)
mpirun_version=$MPIRUN_HOME/mpirun.ch_gm
;;
execer)
mpirun_version=$MPIRUN_HOME/mpirun.execer
;;
ch_shmem|ch_spp|smp|convex_spp)
# sgi_mp is reserved for the p4 version
mpirun_version=$MPIRUN_HOME/mpirun.ch_shmem
;;
ksr|symm_ptx)
mpirun_version=$MPIRUN_HOME/mpirun.p4shmem
;;
ch_tcp|tcp)
mpirun_version=$MPIRUN_HOME/mpirun.ch_tcp
;;
globus)
mpirun_version=$MPIRUN_HOME/mpirun.globus
;;
*)
#
# This allows us to add a device without changing the base mpirun
# code
if [ -x $MPIRUN_HOME/mpirun.$device ] ; then
mpirun_version=$MPIRUN_HOME/mpirun.$device
elif [ -x $MPIRUN_HOME/mpirun.$default_device ] ; then
mpirun_version=$MPIRUN_HOME/mpirun.$default_device
device=$default_device
else
echo "Cannot find MPIRUN machine file for machine $machine"
echo "and architecture $arch ."
if [ -n "$device" ] ; then
echo "(Looking for $MPIRUN_HOME/mpirun.$device)"
else
echo "(No device specified.)"
fi
# . $MPIRUN_HOME/mpirun.default
exit 1
fi
;;
esac
exitstatus=1
if [ -n "$mpirun_version" ] ; then
if [ -x $mpirun_version ] ; then
# The mpirun script *must* set exitstatus (or exit itself)
. $mpirun_version
else
echo "$mpirun_version is not available."
exit 1
fi
else
echo "No mpirun script for this configuration!"
exit 1
fi
exit $exitstatus
|