/[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.162 by jmc, Wed May 11 01:51:07 2011 UTC revision 1.170 by mlosch, Thu Dec 22 12:55:05 2011 UTC
# Line 15  usage() Line 15  usage()
15      echo "  (-mpi)                   use MPI to compile and run on 2 processors"      echo "  (-mpi)                   use MPI to compile and run on 2 processors"
16      echo "  (-MPI)  NUMBER           use MPI to compile and run on max NUMBER procs"      echo "  (-MPI)  NUMBER           use MPI to compile and run on max NUMBER procs"
17      echo "  (-mfile|-mf) STRING      MPI: file with list of possible machines to run on"      echo "  (-mfile|-mf) STRING      MPI: file with list of possible machines to run on"
18      echo "  (-ieee/-noieee)          if possible, use IEEE compiler flags"      echo "  (-fast)                  use optfile default for compiler flags (no '-ieee')"
19      echo "                             (DEF=\"-ieee\")"      echo "                            DEF=off => use IEEE numerics option (if available)"
20        echo "  (-devel)                 use optfile developement flags (if available)"
21      echo "  (-gsl)                   compile with \"-gsl\" flag"      echo "  (-gsl)                   compile with \"-gsl\" flag"
22      echo "  (-use_r4|-ur4)           if allowed, use real*4 type for '_RS' variable"      echo "  (-use_r4|-ur4)           if allowed, use real*4 type for '_RS' variable"
23      echo "  (-optfile|-of) STRING    list of optfiles to use"      echo "  (-optfile|-of) STRING    list of optfiles to use"
# Line 47  usage() Line 48  usage()
48      echo "  (-match) NUMBER          Matching Criteria (number of digits)"      echo "  (-match) NUMBER          Matching Criteria (number of digits)"
49      echo "                             (DEF=\"$MATCH_CRIT\")"      echo "                             (DEF=\"$MATCH_CRIT\")"
50      echo "  (-j) JOBS                use \"make -j JOBS\" for parallel builds"      echo "  (-j) JOBS                use \"make -j JOBS\" for parallel builds"
51        echo "  (-ef) STRING             used as genmake2 \"-extra_flag\" argument"
52      echo "  (-clean)                 *ONLY* run \"make CLEAN\" & clean run-dir"      echo "  (-clean)                 *ONLY* run \"make CLEAN\" & clean run-dir"
53      echo "  (-norun|-nr)             skip the \"runmodel\" stage (stop after make)"      echo "  (-norun|-nr)             skip the \"runmodel\" stage (stop after make)"
54        echo "  (-obj)                   only produces objects (=norun & no executable)"
55      echo "  (-runonly|-ro)           *ONLY* run stage (=\"-quick\" without make)"      echo "  (-runonly|-ro)           *ONLY* run stage (=\"-quick\" without make)"
56      echo "  (-quick|-q)              same as \"-nogenmake -noclean -nodepend\""      echo "  (-quick|-q)              same as \"-nogenmake -noclean -nodepend\""
57      echo "  (-nogenmake|-ng)         skip the genmake stage"      echo "  (-nogenmake|-ng)         skip the genmake stage"
# Line 248  testoutput_run() Line 251  testoutput_run()
251                    then echo testoutput_run: testoutput_var $1 cg2d_init_res 1>&2 ; fi                    then echo testoutput_run: testoutput_var $1 cg2d_init_res 1>&2 ; fi
252                    testoutput_var $1 "cg2d_init_res" "Press. Solver (cg2d)" $2 $3; yy=$?                    testoutput_var $1 "cg2d_init_res" "Press. Solver (cg2d)" $2 $3; yy=$?
253                    if [ $debug -gt 0 ] ; then echo testoutput_run: cg2dres=$yy 1>&2 ; fi ;;                    if [ $debug -gt 0 ] ; then echo testoutput_run: cg2dres=$yy 1>&2 ; fi ;;
254            'Cost') testoutput_var $1 "ADM  precision_derivative_cost" "ADM Cost" $2 $3; yy=$? ;;            'Cost') testoutput_var $1 "ADM  ref_cost_function" "ADM CostFct" $2 $3; yy=$? ;;
255            'Grad') testoutput_var $1 "ADM  precision_derivative_grad" "ADM Grad" $2 $3; yy=$? ;;           'AdGrd') testoutput_var $1 "ADM  adjoint_gradient"  "ADM Ad Grad" $2 $3; yy=$? ;;
256             'FDGrd') testoutput_var $1 "ADM  finite-diff_grad"  "ADM FD Grad" $2 $3; yy=$? ;;
257             'Tmn') testoutput_var $1 "dynstat_theta_min"  "Theta minimum"  $2 $3; yy=$? ;;             'Tmn') testoutput_var $1 "dynstat_theta_min"  "Theta minimum"  $2 $3; yy=$? ;;
258             'Tmx') testoutput_var $1 "dynstat_theta_max"  "Theta maximum"  $2 $3; yy=$? ;;             'Tmx') testoutput_var $1 "dynstat_theta_max"  "Theta maximum"  $2 $3; yy=$? ;;
259             'Tav') testoutput_var $1 "dynstat_theta_mean" "Theta mean"     $2 $3; yy=$? ;;             'Tav') testoutput_var $1 "dynstat_theta_mean" "Theta mean"     $2 $3; yy=$? ;;
# Line 286  testoutput_run() Line 290  testoutput_run()
290           'hSImx') testoutput_var $1 "seaice_heff_max"   "SIce Heff max"   $2 $3; yy=$? ;;           'hSImx') testoutput_var $1 "seaice_heff_max"   "SIce Heff max"   $2 $3; yy=$? ;;
291           'hSIav') testoutput_var $1 "seaice_heff_mean"  "SIce Heff mean"  $2 $3; yy=$? ;;           'hSIav') testoutput_var $1 "seaice_heff_mean"  "SIce Heff mean"  $2 $3; yy=$? ;;
292           'hSIsd') testoutput_var $1 "seaice_heff_sd"    "SIce Heff StDv"  $2 $3; yy=$? ;;           'hSIsd') testoutput_var $1 "seaice_heff_sd"    "SIce Heff StDv"  $2 $3; yy=$? ;;
293             'uSImn') testoutput_var $1 "seaice_uice_min"   "SIce Uice min"   $2 $3; yy=$? ;;
294             'uSImx') testoutput_var $1 "seaice_uice_max"   "SIce Uice max"   $2 $3; yy=$? ;;
295             'uSIav') testoutput_var $1 "seaice_uice_mean"  "SIce Uice mean"  $2 $3; yy=$? ;;
296             'uSIsd') testoutput_var $1 "seaice_uice_sd"    "SIce Uice StDv"  $2 $3; yy=$? ;;
297             'vSImn') testoutput_var $1 "seaice_vice_min"   "SIce Vice min"   $2 $3; yy=$? ;;
298             'vSImx') testoutput_var $1 "seaice_vice_max"   "SIce Vice max"   $2 $3; yy=$? ;;
299             'vSIav') testoutput_var $1 "seaice_vice_mean"  "SIce Vice mean"  $2 $3; yy=$? ;;
300             'vSIsd') testoutput_var $1 "seaice_vice_sd"    "SIce Vice StDv"  $2 $3; yy=$? ;;
301          'AthSiG') testoutput_var $1 "thSI_Ice_Area_G" "thSIc Area Global" $2 $3; yy=$? ;;          'AthSiG') testoutput_var $1 "thSI_Ice_Area_G" "thSIc Area Global" $2 $3; yy=$? ;;
302          'AthSiS') testoutput_var $1 "thSI_Ice_Area_S" "thSIc Area South"  $2 $3; yy=$? ;;          'AthSiS') testoutput_var $1 "thSI_Ice_Area_S" "thSIc Area South"  $2 $3; yy=$? ;;
303          'AthSiN') testoutput_var $1 "thSI_Ice_Area_N" "thSIc Area North"  $2 $3; yy=$? ;;          'AthSiN') testoutput_var $1 "thSI_Ice_Area_N" "thSIc Area North"  $2 $3; yy=$? ;;
# Line 338  genmakemodel() Line 350  genmakemodel()
350              if test "x$OPTFILE" != xNONE ; then              if test "x$OPTFILE" != xNONE ; then
351                  command="$command -optfile=$OPTFILE"                  command="$command -optfile=$OPTFILE"
352              fi              fi
353              if test "x$IEEE" != x ; then              if test $OptLev = 1 ; then
354                  command="$command -ieee"                  command="$command -ieee"
355                fi
356                if test $OptLev = 0 ; then
357                    command="$command -devel"
358              fi              fi
359              if test "x$GSL" = xt ; then              if test "x$GSL" = xt ; then
360                  command="$command -gsl"                  command="$command -gsl"
# Line 354  genmakemodel() Line 369  genmakemodel()
369              if test "x$USE_R4" = xt ; then              if test "x$USE_R4" = xt ; then
370                  command="$command -use_r4"                  command="$command -use_r4"
371              fi              fi
372                if test "x$EXTRFLG" != x ; then
373                    command="$command -extra_flag $EXTRFLG"
374                fi
375              if test "x$TS" = xt ; then              if test "x$TS" = xt ; then
376                  command="$command -ts"                  command="$command -ts"
377              fi              fi
# Line 474  makemodel() Line 492  makemodel()
492          cd $1;          cd $1;
493          if test -r Makefile ; then          if test -r Makefile ; then
494              printf 'make ... '              printf 'make ... '
495              if test "x$ADM" = xt ; then              $MAKE $TARG >> make.tr_log 2>&1
                 $MAKE adall >> make.tr_log 2>&1  
             elif test "x$OADM" = xt ; then  
                 $MAKE adAll >> make.tr_log 2>&1  
             else  
                 if test "x$JOBS" = x ; then  
                     $MAKE >> make.tr_log 2>&1  
                 else  
                     $MAKE -j $JOBS >> make.tr_log 2>&1  
                 fi  
             fi  
496              RETVAL=$?              RETVAL=$?
497              if test "x$RETVAL" != x0 ; then              if test "x$RETVAL" != x0 ; then
498                  tail make.tr_log                  tail make.tr_log
499                  echo failed                  echo failed
500                  cp make.tr_log genmake.log genmake.tr_log $CDIR                  cp genmake.log genmake.tr_log $CDIR
501                    tail -$NBLINES_MKLOG make.tr_log > $CDIR"/make.tr_log_tail"
502                  rm -f $EXECUTABLE                  rm -f $EXECUTABLE
503                  mk_fail=1                  mk_fail=1
504              else              else
# Line 915  check_eedata() Line 924  check_eedata()
924  #  Default properties  #  Default properties
925  debug=0  debug=0
926  verbose=1  verbose=1
927    NBLINES_MKLOG=16000
928    
929  IEEE=true  IEEE=true
930  if test "x$MITGCM_IEEE" != x ; then  if test "x$MITGCM_IEEE" != x ; then
931      IEEE=$MITGCM_IEEE      IEEE=$MITGCM_IEEE
932  fi  fi
933    OptLev=1
934  GSL=f  GSL=f
935    
936  CLEANUP=f  CLEANUP=f
# Line 948  if test "x$CC" = x ; then Line 959  if test "x$CC" = x ; then
959      CC=cc      CC=cc
960  fi  fi
961  JOBS=  JOBS=
962    TARG=
963  MPI=0  MPI=0
964  MPI_MFILE=  MPI_MFILE=
965  MULTI_THREAD=f  MULTI_THREAD=f
966  OUTDIR=  OUTDIR=
967  DELDIR=  DELDIR=
968  USE_R4=  USE_R4=
969    EXTRFLG=
970    
971  ADM=  ADM=
972  OADM=  OADM=
# Line 1018  for ac_option ; do Line 1031  for ac_option ; do
1031          -j | --j) ac_prev=JOBS ;;          -j | --j) ac_prev=JOBS ;;
1032          -j=* | --j=*) JOBS=$ac_optarg ;;          -j=* | --j=*) JOBS=$ac_optarg ;;
1033    
1034            -ef | --ef) ac_prev=EXTRFLG ;;
1035            -ef=* | --ef=*) EXTRFLG=$ac_optarg ;;
1036    
1037          -clean | --clean) CLEANUP=t ; DELDIR=t ;;          -clean | --clean) CLEANUP=t ; DELDIR=t ;;
1038    
1039          -norun | --norun | -nr | --nr) NORUN=t ;;          -norun | --norun | -nr | --nr) NORUN=t ;;
1040            -obj | --obj ) TARG='obj' ; NORUN=t ;;
1041          -runonly | --runonly | -ro | --ro) QUICK=t ; NOMAKE=t ;;          -runonly | --runonly | -ro | --ro) QUICK=t ; NOMAKE=t ;;
1042          -quick | --quick | -q | --q) QUICK=t ;;          -quick | --quick | -q | --q) QUICK=t ;;
1043          -nogenmake | --nogenmake | -ng | --ng) NOGENMAKE=t ;;          -nogenmake | --nogenmake | -ng | --ng) NOGENMAKE=t ;;
# Line 1042  for ac_option ; do Line 1059  for ac_option ; do
1059          -adm | -ad) ADM=t ;;          -adm | -ad) ADM=t ;;
1060          -oad) OADM=t; NODEPEND=t ;;          -oad) OADM=t; NODEPEND=t ;;
1061    
1062          -ieee) IEEE=true ;;          -ieee)   echo "Warning: ignore option '-ieee' (already the default)"
1063          -noieee) IEEE= ;;                   printf " ... " ;;
1064            -noieee) echo "Warning: will use option '-fast' instead of '-noieee' (obsolete)"
1065                     printf " ... " ; OptLev=`expr $OptLev \* 2` ;;
1066            -fast)  OptLev=`expr $OptLev \* 2` ;;
1067            -devel) OptLev=0 ;;
1068          -gsl) GSL=t ;;          -gsl) GSL=t ;;
1069    
1070          -verbose) verbose=2 ;;          -verbose) verbose=2 ;;
# Line 1092  fi Line 1113  fi
1113    
1114  #- setting for forward or ADM testing  #- setting for forward or ADM testing
1115  if test "x$ADM" = xt ; then  if test "x$ADM" = xt ; then
1116        if test "x$TARG" = xobj ; then TARG=adobj ; else TARG=adall ; fi
1117      code_dir=code_ad      code_dir=code_ad
1118      inputdir=input_ad      inputdir=input_ad
1119      ref_outp="output_adm.txt"      ref_outp="output_adm.txt"
1120      EXECUTABLE="mitgcmuv_ad"      EXECUTABLE="mitgcmuv_ad"
1121  elif test "x$OADM" = xt ; then  elif test "x$OADM" = xt ; then
1122        TARG=adAll
1123      code_dir=code_oad      code_dir=code_oad
1124      inputdir=input_oad      inputdir=input_oad
1125      ref_outp="output_oadm.txt"      ref_outp="output_oadm.txt"
1126      EXECUTABLE="mitgcmuv_ad"      EXECUTABLE="mitgcmuv_ad"
1127  else  else
1128        if test "x$JOBS" != x ; then TARG="-j $JOBS $TARG" ; fi
1129      code_dir=code      code_dir=code
1130      inputdir=input      inputdir=input
1131      ref_outp="output.txt"      ref_outp="output.txt"
# Line 1180  if test "x$ADM" = x -a "x$OADM" = x; the Line 1204  if test "x$ADM" = x -a "x$OADM" = x; the
1204      ii=`echo $EMPTY_RESULTS | awk '{print NF}'`      ii=`echo $EMPTY_RESULTS | awk '{print NF}'`
1205      EMPTY_RESULTS=$EMPTY_RESULTS`expr $LEN_CHECK_LIST - $ii | awk 'BEGIN{FS=":"}{for(i=1;i<=$1;i++){printf "  ."}}'`      EMPTY_RESULTS=$EMPTY_RESULTS`expr $LEN_CHECK_LIST - $ii | awk 'BEGIN{FS=":"}{for(i=1;i<=$1;i++){printf "  ."}}'`
1206  else  else
1207      DEF_CHECK_LIST='Grad Cost Grad'      DEF_CHECK_LIST='AdGrd Cost AdGrd FDGrd'
1208      EMPTY_RESULTS='.. ..'      EMPTY_RESULTS='.. .. ..'
1209      LEN_CHECK_LIST=`echo $DEF_CHECK_LIST | sed 's/ [a-zA-Z0-9]*+/&mn &mx &av &sd/g' | awk '{print NF-1}'`      LEN_CHECK_LIST=`echo $DEF_CHECK_LIST | sed 's/ [a-zA-Z0-9]*+/&mn &mx &av &sd/g' | awk '{print NF-1}'`
1210  fi  fi
1211    
# Line 1267  if test "x$ADM" = x -a "x$OADM" = x; the Line 1291  if test "x$ADM" = x -a "x$OADM" = x; the
1291      else line_0="default "$MATCH_CRIT ; fi      else line_0="default "$MATCH_CRIT ; fi
1292         line_0="$line_0  ----T-----  ----S-----  ----U-----  ----V-----"         line_0="$line_0  ----T-----  ----S-----  ----U-----  ----V-----"
1293      line_1="G D M    c        m  s        m  s        m  s        m  s"      line_1="G D M    c        m  s        m  s        m  s        m  s"
1294      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  ."
1295      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"
1296      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  ."
1297      for ii in $PTRACERS_NUM ; do      for ii in $PTRACERS_NUM ; do
1298          line_0="$line_0  --PTR 0"$ii"--"          line_0="$line_0  --PTR 0"$ii"--"
# Line 1291  else Line 1315  else
1315      else line_0="default    "$MATCH_CRIT ; fi      else line_0="default    "$MATCH_CRIT ; fi
1316      echo "$line_0" | tee -a $SUMMARY      echo "$line_0" | tee -a $SUMMARY
1317      cat << EOF | tee -a $SUMMARY      cat << EOF | tee -a $SUMMARY
1318  G D M    C  G  G D M    C  A  F
1319  E p a R  o  r  e p a R  o  d  D
1320  N n k u  s  a  n n k u  s  G  G
1321  2 d e n  t  d  2 d e n  t  r  r
1322    
1323  EOF  EOF
1324  fi  fi
# Line 1524  for dir in $TESTDIRS ; do Line 1548  for dir in $TESTDIRS ; do
1548              if test "x$RETVAL" = x0 ; then              if test "x$RETVAL" = x0 ; then
1549                  echo "from '$gmkLog', extract compiler version:" >> $DRESULTS/genmake_state                  echo "from '$gmkLog', extract compiler version:" >> $DRESULTS/genmake_state
1550                  sed -n '/Get compiler version/,/<-- compiler version/p' $gmkLog \                  sed -n '/Get compiler version/,/<-- compiler version/p' $gmkLog \
1551                         | grep -v '^... compiler version ' > tr_1.tmp_log                          | grep -v '^... compiler version ' > tr_1.tmp_log
1552                  sed -n '1,/^$/p' tr_1.tmp_log | sed '/^$/d' | sed 's/^./ &/' \                  sed -n '1p' tr_1.tmp_log >> $DRESULTS/genmake_state
1553                    sed -n '2,/^$/p' tr_1.tmp_log | sed '/^$/d' | sed 's/^./ &/' \
1554                          >> $DRESULTS/genmake_state                          >> $DRESULTS/genmake_state
1555                  rm -f tr_1.tmp_log                  rm -f tr_1.tmp_log
1556              fi              fi

Legend:
Removed from v.1.162  
changed lines
  Added in v.1.170

  ViewVC Help
Powered by ViewVC 1.1.22