A
lgorithmique
N
umérique
D
istribuée
Public GIT Repository
projects
/
simgrid.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
removing README.tracing because its contents are in the FAQ
[simgrid.git]
/
src
/
smpi
/
smpirun.in
diff --git
a/src/smpi/smpirun.in
b/src/smpi/smpirun.in
index
0fda9b4
..
b2699d9
100755
(executable)
--- a/
src/smpi/smpirun.in
+++ b/
src/smpi/smpirun.in
@@
-45,12
+45,7
@@
while true; do
;;
"-map")
;;
"-map")
- MAPOPT="on"
- shift 1
- ;;
-
- "-quiet")
- QUIET="true"
+ MAPOPT="true"
shift 1
;;
shift 1
;;
@@
-59,7
+54,7
@@
while true; do
shift 1
;;
shift 1
;;
- "-help" | "--help" | "-h")
+ "-help" | "--help" | "-h")
echo "usage:"
echo "$0 [-quiet] [-keep-temps] [-np <numprocs>] -platform <xmldesc> -hostfile <hostfile> [-map] program [program-options]"
echo "or (deprecated usage):"
echo "usage:"
echo "$0 [-quiet] [-keep-temps] [-np <numprocs>] -platform <xmldesc> -hostfile <hostfile> [-map] program [program-options]"
echo "or (deprecated usage):"
@@
-67,9
+62,12
@@
while true; do
echo
exit
;;
echo
exit
;;
-
- "--cfg="*)
- SIMOPTS="$SIMOPTS $1"
+
+ "--cfg="*|"--log="*)
+ for OPT in ${1#*=}
+ do
+ SIMOPTS="$SIMOPTS ${1%%=*}=$OPT"
+ done
shift 1
;;
*)
shift 1
;;
*)
@@
-87,7
+85,7
@@
shift
##-------------------------------- DEFAULT or SPECIFIED PLATFORM --------------------------------------
##-------------------------------- DEFAULT or SPECIFIED PLATFORM --------------------------------------
-if [ -z "${PLATFORM}" ]; then
+if [ -z "${PLATFORM}" ]; then
PLATFORMTMP="$(mktemp tmpXXXXXX)"
cat > ${PLATFORMTMP} <<PLATFORMHEAD
PLATFORMTMP="$(mktemp tmpXXXXXX)"
cat > ${PLATFORMTMP} <<PLATFORMHEAD
@@
-145,16
+143,29
@@
fi
## hostfile has less than i lines.
##----------------------------------------------------------
## hostfile has less than i lines.
##----------------------------------------------------------
+HAVE_SEQ="`which seq`"
+HAVE_JOT="`which jot`"
+
+if [ -n "${HAVE_SEQ}" ]; then
+ SEQ=`${HAVE_SEQ} 0 $((${NUMPROCS}-1))`
+else
+ cnt=0
+ while (( $cnt < ${NUMPROCS} )) ; do
+ SEQ="$SEQ $cnt"
+ cnt=$((cnt + 1));
+ done
+fi
+
##---- generate <process> tags------------------------------
##---- generate <process> tags------------------------------
-for i in
`seq 0 $((${NUMPROCS}-1))`
+for i in
${SEQ}
do
if [ -n "${HOSTFILE}" ]; then
j=$(( $i % ${NUMHOSTS} ))
do
if [ -n "${HOSTFILE}" ]; then
j=$(( $i % ${NUMHOSTS} ))
- fi
+ fi
##---- optional display of ranks to process mapping
##---- optional display of ranks to process mapping
- if [ -n
${MAPOPT}
]; then
- echo "[rank $i] -> ${hostnames[$j]}"
+ if [ -n
"${MAPOPT}"
]; then
+ echo "[rank $i] -> ${hostnames[$j]}"
fi
if [ -z "${hostnames[$j]}" ]; then
fi
if [ -z "${hostnames[$j]}" ]; then
@@
-175,17
+186,14
@@
cat >> ${APPLICATIONTMP} <<APPLICATIONFOOT
APPLICATIONFOOT
##-------------------------------- end DEFAULT APPLICATION --------------------------------------
APPLICATIONFOOT
##-------------------------------- end DEFAULT APPLICATION --------------------------------------
-if [ -
z "${QUIET
}" ] ; then
+if [ -
n "${KEEP
}" ] ; then
echo ${EXEC} ${SIMOPTS} ${PLATFORMTMP} ${APPLICATIONTMP}
fi
${EXEC} ${SIMOPTS} ${PLATFORMTMP} ${APPLICATIONTMP}
echo ${EXEC} ${SIMOPTS} ${PLATFORMTMP} ${APPLICATIONTMP}
fi
${EXEC} ${SIMOPTS} ${PLATFORMTMP} ${APPLICATIONTMP}
-if [ "x$?" == "x0" ] && [ -n ${KEEP} ] ; then
- if [ -z "${QUIET}" ] ; then
- echo "[$0] cleaning up temp files"
- fi
+if [ -z "${KEEP}" ] ; then
if [ -z "${PLATFORM}" ]; then
if [ -z "${PLATFORM}" ]; then
- rm ${PLATFORMTMP}
+ rm ${PLATFORMTMP}
fi
rm ${APPLICATIONTMP}
fi
rm ${APPLICATIONTMP}
-fi
\ No newline at end of file
+fi