Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
make it easier to write tesh files by removing the full path to scripts from logs
[simgrid.git] / src / smpi / smpirun.in
index 9dfb521..e151fb3 100755 (executable)
@@ -79,7 +79,7 @@ while true; do
         "-platform")
            PLATFORM="$2"
             if [ ! -f "${PLATFORM}" ]; then
-               echo "[$0] ** error: the file '${PLATFORM}' does not exist. Aborting."
+               echo "[`basename $0`] ** error: the file '${PLATFORM}' does not exist. Aborting."
                exit 1
             fi
            shift 2
@@ -87,7 +87,7 @@ while true; do
         "-hostfile")
            HOSTFILE="$2"
             if [ ! -f "${HOSTFILE}" ]; then
-               echo "[$0] ** error: the file '${HOSTFILE}' does not exist. Aborting."
+               echo "[`basename $0`] ** error: the file '${HOSTFILE}' does not exist. Aborting."
                exit 1
             fi
            shift 2
@@ -96,7 +96,7 @@ while true; do
         "-machinefile")
            HOSTFILE="$2"
             if [ ! -f "${HOSTFILE}" ]; then
-               echo "[$0] ** error: the file '${HOSTFILE}' does not exist. Aborting."
+               echo "[`basename $0`] ** error: the file '${HOSTFILE}' does not exist. Aborting."
                exit 1
             fi
            shift 2
@@ -244,6 +244,10 @@ fi
 
 # Don't use wc -l to compute it to avoid issues with trailing \n at EOF
 hostfile_procs=`grep -c "[a-zA-Z0-9]" $HOSTFILE`
+if [ ${hostfile_procs} = 0 ] ; then
+   echo "[`basename $0`] ** error: the hostfile '${HOSTFILE}' is empty. Aborting." >&2
+   exit 1
+fi
 
 if [ -z "${NUMPROCS}" ] ; then
     # Use the amount of processes in the hostfile as default value for the -np parameter
@@ -350,11 +354,7 @@ fi
 for i in ${SEQ}
 do
     if [ -n "${HOSTFILE}" ]; then
-        if [ ${NUMHOSTS} = 0 ] ; then
-          j= 0
-       else
-          j=$(( $i % ${NUMHOSTS} + 1 ))
-       fi
+       j=$(( $i % ${NUMHOSTS} + 1 ))
     fi
     ##---- optional display of ranks to process mapping
     if [ -n "${MAPOPT}" ]; then