/[MITgcm]/MITgcm/verification/testreport
ViewVC logotype

Diff of /MITgcm/verification/testreport

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph | View Patch Patch

revision 1.49 by edhill, Tue Nov 23 21:25:24 2004 UTC revision 1.77 by jmc, Mon Mar 20 21:50:36 2006 UTC
# Line 27  usage() Line 27  usage()
27      echo "                             (DEF=\"make output.txt\")"      echo "                             (DEF=\"make output.txt\")"
28      echo "  (-m|-make) STRING        command to use for \"make\""      echo "  (-m|-make) STRING        command to use for \"make\""
29      echo "                             (DEF=\"make\")"      echo "                             (DEF=\"make\")"
30        echo "  (-odir) STRING           used to build output directory name"
31        echo "                             (DEF=\"hostname\")"
32        echo "  (-ptracers|-ptr) STRING  specify which ptracers to test"
33        echo "                             (DEF=\"1 2 3 4 5\")"
34      echo "  (-j) JOBS                use \"make -j JOBS\" for parallel builds"      echo "  (-j) JOBS                use \"make -j JOBS\" for parallel builds"
35      echo "  (-clean)                 *ONLY* run \"make CLEAN\""      echo "  (-clean)                 *ONLY* run \"make CLEAN\""
36      echo "  (-quick|-q)              same as \"-nogenmake -noclean -nodepend\""      echo "  (-quick|-q)              same as \"-nogenmake -noclean -nodepend\""
# Line 35  usage() Line 39  usage()
39      echo "  (-nodepend|-nd)          skip the \"make depend\" stage"      echo "  (-nodepend|-nd)          skip the \"make depend\" stage"
40      echo "  (-deldir|-dd)            on success, delete the output directory"      echo "  (-deldir|-dd)            on success, delete the output directory"
41      echo      echo
42      echo "and where STRING follows a whitespace-delimited format"      echo "and where STRING can be a whitespace-delimited list"
43      echo "such as:"      echo "such as:"
44        echo
45      echo "  -t 'exp0 exp2 exp3' "      echo "  -t 'exp0 exp2 exp3' "
46      echo "  -addr='abc@123.com testing@home.org'"      echo "  -addr='abc@123.com testing@home.org'"
47      echo      echo
48        echo "provided that the expression is properly quoted within the current"
49        echo "shell (note the use of single quotes to protect white space)."
50        echo
51      exit 1      exit 1
52  }  }
53    
# Line 89  testoutput_for_prop() Line 97  testoutput_for_prop()
97      fi      fi
98      if [ -r $1/$4/output.txt ]; then      if [ -r $1/$4/output.txt ]; then
99          grep "$2" $1/$4/output.txt | sed 's/.*=//' | cat -n > tmp1.txt          grep "$2" $1/$4/output.txt | sed 's/.*=//' | cat -n > tmp1.txt
100          lncnt=`wc -l tmp1.txt | awk '{print $1}' `          lncntA=`wc -l tmp1.txt | awk '{print $1}' `
101          if [ $lncnt -lt 3 ]; then          if [ $lncntA -lt 3 ]; then
102              if [ $verbose -gt 0 ]; then              if [ $verbose -gt 0 ]; then
103                  echo Not enough lines of output when searching for "$2" 1>&2                  echo Not enough lines of output when searching for "$2" 1>&2
104              fi              fi
# Line 104  testoutput_for_prop() Line 112  testoutput_for_prop()
112          echo testoutput_for_prop: grep "$2" $1/results/output.txt$5 1>&2          echo testoutput_for_prop: grep "$2" $1/results/output.txt$5 1>&2
113      fi      fi
114      grep "$2" $1/results/output.txt$5 | sed 's/.*=//' | cat -n > tmp2.txt      grep "$2" $1/results/output.txt$5 | sed 's/.*=//' | cat -n > tmp2.txt
115      lncnt=`wc -l tmp2.txt | awk '{print $1}' `      lncntB=`wc -l tmp2.txt | awk '{print $1}' `
116      if [ $lncnt -lt 3 ]; then      if [ $lncntB -lt 3 ]; then
117          if [ $verbose -gt 0 ]; then          if [ $verbose -gt 0 ]; then
118              echo Not enough lines of output when searching for "$2" 1>&2              echo Not enough lines of output when searching for "$2" 1>&2
119          fi          fi
120          return 99          return 99
121      fi      fi
122        if [ $lncntA -ne $lncntB ]; then
123            if [ $verbose -gt 0 ]; then
124                echo Not same Nb of lines when searching for "$2" ":" $lncntA $lncntB 1>&2
125            fi
126            return 99
127        fi
128        has_nan=`cat tmp1.txt | grep -i nan | wc -l`
129        if [ $has_nan -gt 0  ] ; then
130            echo testoutput_for_prop: output.txt contains $has_nan NaN values  1>&2
131            return 99
132        fi
133        has_inf=`cat tmp1.txt | grep -i inf | wc -l`
134        if [ $has_inf -gt 0  ] ; then
135            echo testoutput_for_prop: output.txt contains $has_inf Inf values  1>&2
136            return 99
137        fi
138      if [ $debug -gt 0 ]; then      if [ $debug -gt 0 ]; then
139          echo testoutput_for_prop: join tmp1.txt tmp2.txt 1>&2          echo testoutput_for_prop: join tmp1.txt tmp2.txt 1>&2
140      fi      fi
# Line 178  check_for_add_mon_output() Line 202  check_for_add_mon_output()
202          return          return
203      fi      fi
204    
205        for ii in $PTRACERS_NUM ; do
206            eval "HAVE_PTR0"$ii"=f"
207        done
208    
209      ptr_add="trcstat_ptracerXX_min trcstat_ptracerXX_max"      ptr_add="trcstat_ptracerXX_min trcstat_ptracerXX_max"
210      ptr_add="$ptr_add trcstat_ptracerXX_mean trcstat_ptracerXX_sd"      ptr_add="$ptr_add trcstat_ptracerXX_mean trcstat_ptracerXX_sd"
211      for ii in 1 2 3 4 5 ; do      for ii in $PTRACERS_NUM ; do
212          for jj in $ptr_add ; do          for jj in $ptr_add ; do
213              name=`eval "echo $jj | sed -e 's|XX|0"$ii"|g'"`              name=`eval "echo $jj | sed -e 's|XX|0"$ii"|g'"`
214              tst=`grep $name $1 | wc -l | awk '{print $1}'`              tst=`grep $name $1 | wc -l | awk '{print $1}'`
# Line 222  testoutput() Line 250  testoutput()
250          testoutput_for_prop $1 "dynstat_vvel_mean" "V mean" $2 $3; vmean=$?          testoutput_for_prop $1 "dynstat_vvel_mean" "V mean" $2 $3; vmean=$?
251          testoutput_for_prop $1 "dynstat_vvel_sd" "V s.d." $2 $3; vsd=$?          testoutput_for_prop $1 "dynstat_vvel_sd" "V s.d." $2 $3; vsd=$?
252    
253          for ii in 1 2 3 4 5 ; do          #  This is for PTRACERS
254              testoutput_for_prop $1 "trcstat_ptracer0"$ii"_min"  "p0"$ii"_min"  $2 $3          for ii in $PTRACERS_NUM ; do
255              RETVAL=$? ; eval `echo "p0"$ii"_min="$RETVAL`              eval `echo "p0"$ii"_min=99"`
256              testoutput_for_prop $1 "trcstat_ptracer0"$ii"_max"  "p0"$ii"_max"  $2 $3              eval `echo "p0"$ii"_max=99"`
257              RETVAL=$? ; eval `echo "p0"$ii"_max="$RETVAL`              eval `echo "p0"$ii"_mean=99"`
258              testoutput_for_prop $1 "trcstat_ptracer0"$ii"_mean" "p0"$ii"_mean" $2 $3              eval `echo "p0"$ii"_sd=99"`
259              RETVAL=$? ; eval `echo "p0"$ii"_mean="$RETVAL`              tst=`eval 'echo "$HAVE_PTR0'$ii'"'`
260              testoutput_for_prop $1 "trcstat_ptracer0"$ii"_sd"   "p0"$ii"_sd"   $2 $3              #echo 'tst = '$tst
261              RETVAL=$? ; eval `echo "p0"$ii"_sd="$RETVAL`              if test "x$tst" = xt ; then
262                    a="trcstat_ptracer0"
263                    testoutput_for_prop $1 "$a"$ii"_min"  "p0"$ii"_min"  $2 $3
264                    RETVAL=$? ; eval `echo "p0"$ii"_min="$RETVAL`
265                    testoutput_for_prop $1 "$a"$ii"_max"  "p0"$ii"_max"  $2 $3
266                    RETVAL=$? ; eval `echo "p0"$ii"_max="$RETVAL`
267                    testoutput_for_prop $1 "$a"$ii"_mean" "p0"$ii"_mean" $2 $3
268                    RETVAL=$? ; eval `echo "p0"$ii"_mean="$RETVAL`
269                    testoutput_for_prop $1 "$a"$ii"_sd"   "p0"$ii"_sd"   $2 $3
270                    RETVAL=$? ; eval `echo "p0"$ii"_sd="$RETVAL`
271                fi
272          done          done
273    
274          allargs="$cg2dres $tmin $tmax $tmean $tsd $smin $smax $smean $ssd"          allargs="$cg2dres $tmin $tmax $tmean $tsd $smin $smax $smean $ssd"
# Line 274  genmakemodel() Line 312  genmakemodel()
312              if test "x$IEEE" != x ; then              if test "x$IEEE" != x ; then
313                  command="$command -ieee"                  command="$command -ieee"
314              fi              fi
315                if test "x$MPI" = xt ; then
316                    command="$command -mpi"
317                fi
318              printf 'genmake ... ' 1>&2              printf 'genmake ... ' 1>&2
319              $command > make.log 2>&1              $command > make.log 2>&1
320              RETVAL=$?              RETVAL=$?
# Line 319  makeclean() Line 360  makeclean()
360      fi      fi
361  }  }
362    
363    postclean()
364    {
365        # postclean directory
366        if test "x$POSTCLEAN" = xt ; then
367            (
368                cd $1;
369                if test -r Makefile ; then
370                    $MAKE CLEAN >> /dev/null 2>&1
371                fi
372                exit 0
373            )
374        fi
375    }
376    
377  makedependmodel()  makedependmodel()
378  {  {
379      # makedependmodel directory      # makedependmodel directory
# Line 430  linkdata() Line 485  linkdata()
485              if test "x$ADM" = x ; then              if test "x$ADM" = x ; then
486                  files=`( cd ../input ; ls -1 | grep -v CVS )`                  files=`( cd ../input ; ls -1 | grep -v CVS )`
487                  for i in $files ; do                  for i in $files ; do
488                      if test ! -d "../input/"$i ; then                      if test ! -d "../input/"$i -a ! -f $i ; then
489                          ln -sf "../input/"$i $i                          ln -sf "../input/"$i $i
490                      fi                      fi
491                  done                  done
# Line 460  runmodel() Line 515  runmodel()
515      #  (where "$COMMAND" is relative to "directory")      #  (where "$COMMAND" is relative to "directory")
516      (      (
517          cd $1          cd $1
518          printf 'runmodel ... ' 1>&2          printf 'runmodel in %s ...' $1 1>&2
519          # make output.txt          # make output.txt
520          echo          echo
521          rm -f run.log          rm -f run.log
522            if test $OUTPUTFILE -ot $EXECUTABLE ; then
523               ( eval $COMMAND ) > run.log 2>&1
524               RETVAL=$?
525            else
526               echo " $OUTPUTFILE is up to date " > run.log 2>&1
527               RETVAL=0
528            fi
529          # echo "COMMAND='$COMMAND'"          # echo "COMMAND='$COMMAND'"
530          # echo "pwd='"`pwd`"'"          # echo "pwd='"`pwd`"'"
         ( eval $COMMAND ) > run.log 2>&1  
         RETVAL=$?  
531          if test "x$RETVAL" = x0 ; then          if test "x$RETVAL" = x0 ; then
532              tail run.log              tail run.log
533              echo successful 1>&2              echo successful 1>&2
# Line 499  createcodelet() Line 559  createcodelet()
559  #include <math.h>  #include <math.h>
560  int main( int argc, char** argv )  {  int main( int argc, char** argv )  {
561    int linnum,best,lncnt;    int linnum,best,lncnt;
562    double a,b,diff;    double a,b,abave,relerr;
563    best = -16;    best = -22;
564    lncnt = 0;    lncnt = 0;
565    while( 1 & (lncnt+=1) < 999 )  {    while( 1 & (lncnt+=1) < 999 )  {
566      scanf("%d", &linnum);      scanf("%d", &linnum);
567      if (linnum == -1)  break;      if (linnum == -1)  break;
568      scanf("%lf", &a);  scanf("%lf", &b);      scanf("%lf", &a);  scanf("%lf", &b);
569      diff = 0.5*(fabs(a)+fabs(b));      abave = 0.5*(fabs(a)+fabs(b));
570      if (diff > 1.e-12) {      if (abave > 0.0) {
571        diff=fabs(a-b)/diff;        relerr=fabs(a-b)/abave;
572        if (diff > 0.0) {        if (relerr > 0.0) { linnum = (int)rint(log10(relerr)); }
573          linnum = (int)log10(diff);        else { linnum = -16 ; }
574          best = (best > linnum) ? best : linnum;        best = (best > linnum) ? best : linnum;
       }  
       else {  
         if (best == -16 && diff != 0)  best = -22;  
       }  
575      }      }
576    }    }
577    if (lncnt == 999) best=-29;    if (lncnt == 999) best=-29;
# Line 523  int main( int argc, char** argv )  { Line 579  int main( int argc, char** argv )  {
579    return 0;    return 0;
580  }  }
581  EOF  EOF
582      cc -o tmp_cmpnum tmp_cmpnum.c -lm      $CC -o tmp_cmpnum tmp_cmpnum.c -lm
583    
584      if [ -x ./tmp_cmpnum ]; then      if [ -x ./tmp_cmpnum ]; then
585          echo "OK"          echo "OK"
586          return 0          return 0
587      else      else
588          echo          echo
589          echo "ERROR: failed to compile comparison code"          echo "ERROR: failed to compile comparison code -- please specify"
590            echo "  a C compiler using the CC environment variable."
591          exit 1          exit 1
592      fi      fi
593  }  }
# Line 610  QUICK=f Line 667  QUICK=f
667  NOGENMAKE=f  NOGENMAKE=f
668  NOCLEAN=f  NOCLEAN=f
669  NODEPEND=f  NODEPEND=f
670    POSTCLEAN=f
671    
672  BASH=  BASH=
673  OPTFILE=NONE  OPTFILE=NONE
# Line 619  MPACKDIR="../tools/mpack-1.6" Line 677  MPACKDIR="../tools/mpack-1.6"
677  HAVE_MPACK=  HAVE_MPACK=
678  MPACK="$MPACKDIR/mpack"  MPACK="$MPACKDIR/mpack"
679  COMMAND=  COMMAND=
680  MAKE=make  if test "x$MAKE" = x ; then
681        MAKE=make
682    fi
683    if test "x$CC" = x ; then
684        CC=cc
685    fi
686  JOBS=  JOBS=
687  MPI=f  MPI=f
688    OUTDIR=
689  DELDIR=  DELDIR=
690    
691  ADM=  ADM=
692    
693  # Additional monitor types  # Additional monitor types
694  # HAVE_PTR01=  PTRACERS_NUM="1 2 3 4 5"
 # HAVE_PTR02=  
 # HAVE_PTR03=  
 # HAVE_PTR04=  
 # HAVE_PTR05=  
695    
696  printf "parsing options...  "  printf "parsing options...  "
697    
# Line 682  for ac_option ; do Line 742  for ac_option ; do
742          -make=* | --make=*)          -make=* | --make=*)
743              MAKE=$ac_optarg ;;              MAKE=$ac_optarg ;;
744    
745            -odir | --odir)
746                ac_prev=OUTDIR ;;
747            -odir=* | --odir=*)
748                OUTDIR=$ac_optarg ;;
749    
750            -ptracers | --ptracers | -ptr | --ptr)
751                ac_prev=PTRACERS_NUM ;;
752            -ptracers=* | --ptracers=* | -ptr=* | --ptr=*)
753                PTRACERS_NUM=$ac_optarg ;;
754    
755          -j) ac_prev=JOBS ;;          -j) ac_prev=JOBS ;;
756          -j=*) JOBS=$ac_optarg ;;          -j=*) JOBS=$ac_optarg ;;
757    
758          -clean | --clean)          -clean | --clean)
759              CLEANUP=t ;;              CLEANUP=t ; DELDIR=t ;;
760    
761          -quick | --quick | -q | --q)          -quick | --quick | -q | --q)
762              QUICK=t ;;              QUICK=t ;;
# Line 697  for ac_option ; do Line 767  for ac_option ; do
767          -nodepend | --nodepend | -nd | --nd)          -nodepend | --nodepend | -nd | --nd)
768              NODEPEND=t ;;              NODEPEND=t ;;
769    
770            -postclean | --postclean | -pc | --pc)
771                POSTCLEAN=t ;;
772    
773          -mpi) MPI=t ;;          -mpi) MPI=t ;;
774    
775          -adm | -ad) ADM=t ;;          -adm | -ad) ADM=t ;;
# Line 738  if test "x$OPTFILE" = xNONE -a "x$MITGCM Line 811  if test "x$OPTFILE" = xNONE -a "x$MITGCM
811      OPTFILE=$MITGCM_OF      OPTFILE=$MITGCM_OF
812  fi  fi
813    
814    if test "x$ADM" = xt ; then
815        EXECUTABLE="mitgcmuv_ad"
816        OUTPUTFILE="output.txt_adm"
817    else
818        EXECUTABLE="mitgcmuv"
819        OUTPUTFILE="output.txt"
820    fi
821    
822  if test "x$ADM" = xt -a "x$COMMAND" = x ; then  if test "x$ADM" = xt -a "x$COMMAND" = x ; then
823      COMMAND="./mitgcmuv_ad > output.txt_adm 2>&1"      COMMAND="./$EXECUTABLE > $OUTPUTFILE"
824  fi  fi
825    
826  if test "x$COMMAND" = x ; then  if test "x$COMMAND" = x ; then
827      COMMAND="$MAKE output.txt"      COMMAND="./$EXECUTABLE > $OUTPUTFILE"
828  fi  fi
829    
830  echo "OK"  #echo "OK"
831    echo "OK (COMMAND= $COMMAND )"
832    
833  #  create the FORTRAN comparison code  #  create the FORTRAN comparison code
834  createcodelet  createcodelet
# Line 763  MACH=`hostname` Line 845  MACH=`hostname`
845  UNAMEA=`uname -a`  UNAMEA=`uname -a`
846  DATE=`date +%Y%m%d`  DATE=`date +%Y%m%d`
847  BASE="tr_"$MACH"_"$DATE"_"  BASE="tr_"$MACH"_"$DATE"_"
848    if test "x$OUTDIR" != x ; then
849        BASE="tr_"$OUTDIR"_"$DATE"_"
850    fi
851  DNUM=0  DNUM=0
852  DRESULTS="$BASE$DNUM"  DRESULTS="$BASE$DNUM"
853  while test -e $DRESULTS ; do  while test -e $DRESULTS ; do
# Line 813  if test "x$ADM" = x ; then Line 898  if test "x$ADM" = x ; then
898      line_2="E p a R  g  m  m  e  .  m  m  e  .  m  m  e  .  m  m  e  ."      line_2="E p a R  g  m  m  e  .  m  m  e  .  m  m  e  .  m  m  e  ."
899      line_3="N n k u  2  i  a  a  d  i  a  a  d  i  a  a  d  i  a  a  d"      line_3="N n k u  2  i  a  a  d  i  a  a  d  i  a  a  d  i  a  a  d"
900      line_4="2 d e n  d  n  x  n  .  n  x  n  .  n  x  n  .  n  x  n  ."      line_4="2 d e n  d  n  x  n  .  n  x  n  .  n  x  n  .  n  x  n  ."
901      for ii in 1 2 3 4 5 ; do      for ii in $PTRACERS_NUM ; do
902          #  tst=`eval 'echo $HAVE_PTR0'$ii`          #  tst=`eval 'echo $HAVE_PTR0'$ii`
903          #  if test "x$tst" = xt ; then          #  if test "x$tst" = xt ; then
904          line_0="$line_0  --PTR 0"$ii"--"          line_0="$line_0  --PTR 0"$ii"--"
# Line 852  for dir in $TESTDIRS ; do Line 937  for dir in $TESTDIRS ; do
937          if test -r $dir/input/Makefile ; then          if test -r $dir/input/Makefile ; then
938              ( cd $dir/input ; make CLEAN )              ( cd $dir/input ; make CLEAN )
939          fi          fi
940            (
941                cd $dir
942                rm -rf tr_run.*
943            )
944          continue          continue
945      fi      fi
946    
# Line 867  for dir in $TESTDIRS ; do Line 956  for dir in $TESTDIRS ; do
956          echo "can't read \"$fout\" -- skipping $dir"          echo "can't read \"$fout\" -- skipping $dir"
957          continue          continue
958      fi      fi
959        if test "x$ADM" = x ; then
960            check_for_add_mon_output  $fout
961        fi
962    
963      # Check for additional types of monitor output      # Check for additional types of monitor output
     check_for_add_mon_output  $fout  
964    
965      builddir="input"      builddir="input"
966      rundir="input"      rundir="input"
# Line 914  for dir in $TESTDIRS ; do Line 1005  for dir in $TESTDIRS ; do
1005      echo "Experiment:  $dir"      echo "Experiment:  $dir"
1006      echo      echo
1007      unset genmake makedepend make run      unset genmake makedepend make run
1008      results='-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --'      results='-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --'
1009    
1010      #  Create an output dir for each OPTFILE/tdir combination      #  Create an output dir for each OPTFILE/tdir combination
1011      rel_CDIR=$DRESULTS"/"$dir      rel_CDIR=$DRESULTS"/"$dir
# Line 945  for dir in $TESTDIRS ; do Line 1036  for dir in $TESTDIRS ; do
1036          echo "DATE='$DATE'" >> $CDIR"/summary.txt"          echo "DATE='$DATE'" >> $CDIR"/summary.txt"
1037          echo "tdir='$dir'" >> $CDIR"/summary.txt"          echo "tdir='$dir'" >> $CDIR"/summary.txt"
1038    
         OLD_COMMAND=$COMMAND  
         COMMAND="./mitgcmuv > output.txt"  
1039          for ex in $extra_runs ; do          for ex in $extra_runs ; do
1040              test -e "$dir/tr_run.$ex" && rm -rf "$dir/tr_run.$ex"              unset run
1041              mkdir "$dir/tr_run.$ex"              results='-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --'
1042              links=`( cd "$dir/input" > /dev/null 2>&1 ; ls -1 | grep -v CVS )`              #  Create an output dir for each OPTFILE/tdir.ex combination
1043                rel_CDIR=$DRESULTS"/"$dir"."$ex
1044                mkdir $rel_CDIR
1045                CDIR=`pwd`"/$rel_CDIR"
1046                test ! -e "$dir/tr_run.$ex" && mkdir "$dir/tr_run.$ex"
1047                for ldir in input.$ex input ; do
1048                    (
1049                        cd "$dir/$ldir" > /dev/null 2>&1
1050                        ls -1 2>/dev/null \
1051                            | sed -e 's|^CVS$||g' | sed -e 's|^output.txt$||g'
1052                    ) > tr_exrun_links
1053                    (
1054                        cd "$dir/tr_run.$ex"
1055                        cat ../../tr_exrun_links | while read i ; do
1056                            if test ! "x$i" = x ; then
1057                                test ! -r $i  &&  ln -s "../"$ldir"/"$i $i
1058                            fi
1059                        done
1060                    )
1061                    test -e tr_exrun_links  &&  rm -f tr_exrun_links
1062                done
1063                ldir=build
1064              (              (
1065                  cd "$dir/tr_run.$ex"                  cd $dir/tr_run.$ex
1066                  for i in $links; do                  test ! -e mitgcmuv  &&  ln -s "../"$ldir"/"mitgcmuv .
                     ln -s ../input/$i $i  
                 done  
             )  
             links=`( cd "$dir/input.$ex" > /dev/null 2>&1 ; ls -1 | grep -v CVS )`  
             (  
                 cd "$dir/tr_run.$ex"  
                 for i in $links; do  
                     test -e $i  &&  rm -f $i  
                     ln -s ../input.$ex/$i $i  
                 done  
                 ln -s ../$builddir/mitgcmuv mitgcmuv  
1067              )              )
1068              runmodel $dir/tr_run.$ex && run=Y \              runmodel $dir/tr_run.$ex && run=Y \
1069                  && results=`testoutput $dir tr_run.$ex "."$ex`                  && results=`testoutput $dir tr_run.$ex "."$ex`
# Line 977  for dir in $TESTDIRS ; do Line 1076  for dir in $TESTDIRS ; do
1076              echo "MACH='$MACH'" >> $CDIR"/summary.txt"              echo "MACH='$MACH'" >> $CDIR"/summary.txt"
1077              echo "UNAMEA='$UNAMEA'" >> $CDIR"/summary.txt"              echo "UNAMEA='$UNAMEA'" >> $CDIR"/summary.txt"
1078              echo "DATE='$DATE'" >> $CDIR"/summary.txt"              echo "DATE='$DATE'" >> $CDIR"/summary.txt"
1079              echo "tdir='$dir'" >> $CDIR"/summary.txt"              echo "tdir='$dir.$ex'" >> $CDIR"/summary.txt"
1080          done          done
         COMMAND=$OLD_COMMAND  
1081      else      else
1082          fres=`printf '%s %s %s %s' ${genmake:-N} ${makedepend:-N} ${make:-N} ${run:-N}`          fres=`printf '%s %s %s %s' ${genmake:-N} ${makedepend:-N} ${make:-N} ${run:-N}`
1083          fres=$fres"$results   $dir"          fres=$fres"$results   $dir"
# Line 990  for dir in $TESTDIRS ; do Line 1088  for dir in $TESTDIRS ; do
1088          echo "UNAMEA='$UNAMEA'" >> $CDIR"/summary.txt"          echo "UNAMEA='$UNAMEA'" >> $CDIR"/summary.txt"
1089          echo "DATE='$DATE'" >> $CDIR"/summary.txt"          echo "DATE='$DATE'" >> $CDIR"/summary.txt"
1090          echo "tdir='$dir'" >> $CDIR"/summary.txt"          echo "tdir='$dir'" >> $CDIR"/summary.txt"
1091            grep -A3 'Seconds in section "ALL' $dir/$rundir/$OUTPUTFILE \
1092                               >> $CDIR"/summary.txt"
1093      fi      fi
1094    
1095        postclean $dir/$builddir
1096            
1097      echo "-------------------------------------------------------------------------------"      echo "-------------------------------------------------------------------------------"
1098            
# Line 1032  fi Line 1134  fi
1134  rm -f tmp_cmpnum.c tmp_cmpnum  rm -f tmp_cmpnum.c tmp_cmpnum
1135    
1136  if test "x$CLEANUP" != xt ; then  if test "x$CLEANUP" != xt ; then
1137      cat $SUMMARY      cat $SUMMARY | sed 's/ -- -- -- --//g'
1138      if test -e tr_out.txt ; then      if test -e tr_out.txt ; then
1139          mv tr_out.txt tr_out.txt.old          mv tr_out.txt tr_out.txt.old
1140      fi      fi
1141      cat $SUMMARY > tr_out.txt      cat $SUMMARY | sed 's/ -- -- -- --//g' > tr_out.txt
1142  fi  fi
1143    
1144  if test "x$DELDIR" = xt ; then  if test "x$DELDIR" = xt ; then

Legend:
Removed from v.1.49  
changed lines
  Added in v.1.77

  ViewVC Help
Powered by ViewVC 1.1.22