Statistics
| Branch: | Revision:

root / synthbench / euroben-dm / .svn / text-base / xrun.svn-base @ 0:839f52ef7657

History | View | Annotate | Download (948 Bytes)

1 0:839f52ef7657 louridas
#!/bin/sh
2 0:839f52ef7657 louridas
#
3 0:839f52ef7657 louridas
# Execute script for a module program of the EuroBen MPI Benchmark.
4 0:839f52ef7657 louridas
#
5 0:839f52ef7657 louridas
LOGDIR=Log.`hostname`
6 0:839f52ef7657 louridas
PROG=$1/x.$1
7 0:839f52ef7657 louridas
8 0:839f52ef7657 louridas
if test ! -d ${LOGDIR}
9 0:839f52ef7657 louridas
then
10 0:839f52ef7657 louridas
  mkdir ${LOGDIR}
11 0:839f52ef7657 louridas
fi
12 0:839f52ef7657 louridas
13 0:839f52ef7657 louridas
if [ $1 = "mod1h" ]; then
14 0:839f52ef7657 louridas
  NP=6
15 0:839f52ef7657 louridas
elif [ $1 = "mod1j" -o $1 = "mod1k" ]; then
16 0:839f52ef7657 louridas
  NP=2
17 0:839f52ef7657 louridas
elif [ $1 = "mod2f" -o $1 = "mod2g" ]; then
18 0:839f52ef7657 louridas
  m=0
19 0:839f52ef7657 louridas
  NP=$NPROCS
20 0:839f52ef7657 louridas
  while [ "$NP" -gt 1 ]; do
21 0:839f52ef7657 louridas
    NP=`expr $NP / 2`
22 0:839f52ef7657 louridas
    m=`expr $m + 1`
23 0:839f52ef7657 louridas
  done
24 0:839f52ef7657 louridas
  while [ "$m" -gt 0 ]; do
25 0:839f52ef7657 louridas
    NP=`expr "$NP" \* 2`
26 0:839f52ef7657 louridas
    m=`expr $m - 1`
27 0:839f52ef7657 louridas
  done
28 0:839f52ef7657 louridas
  if [ "$NP" -ne "$NPROCS" ]; then
29 0:839f52ef7657 louridas
    echo "$1: NPROCS has been modified to Max(n) for which 2^n < NPROCS."
30 0:839f52ef7657 louridas
  fi
31 0:839f52ef7657 louridas
else
32 0:839f52ef7657 louridas
  NP=$NPROCS
33 0:839f52ef7657 louridas
fi
34 0:839f52ef7657 louridas
35 0:839f52ef7657 louridas
if [ "$NP" -lt 10 ]; then
36 0:839f52ef7657 louridas
  LOGFILE=${LOGDIR}/$1.p0${NP}.log
37 0:839f52ef7657 louridas
else
38 0:839f52ef7657 louridas
  LOGFILE=${LOGDIR}/$1.p${NP}.log
39 0:839f52ef7657 louridas
fi
40 0:839f52ef7657 louridas
41 0:839f52ef7657 louridas
if test -f ${PROG}; then
42 0:839f52ef7657 louridas
  exec 1>> ${LOGFILE} 2>&1
43 0:839f52ef7657 louridas
  echo ; echo ; echo start $1 at `date` id = $$
44 0:839f52ef7657 louridas
  (cd $1; time mpirun -np $NP ./x.$1)
45 0:839f52ef7657 louridas
  echo ; echo end $1 at `date` 'id =' $$
46 0:839f52ef7657 louridas
else
47 0:839f52ef7657 louridas
  exec 1>> ${LOGFILE} 2>&1
48 0:839f52ef7657 louridas
  echo "$1 not found"
49 0:839f52ef7657 louridas
fi