--- mitgcm.org/front_content/make_summary 2009/10/05 16:50:09 1.57 +++ mitgcm.org/front_content/make_summary 2012/09/08 14:22:08 1.75 @@ -1,6 +1,6 @@ #! /usr/bin/env bash -# $Header: /home/ubuntu/mnt/e9_copy/mitgcm.org/front_content/make_summary,v 1.57 2009/10/05 16:50:09 jmc Exp $ +# $Header: /home/ubuntu/mnt/e9_copy/mitgcm.org/front_content/make_summary,v 1.75 2012/09/08 14:22:08 jmc Exp $ # # The purpose of this script is to create HTML summaries of the # directories produced by the "parse_emails" script. @@ -10,15 +10,16 @@ { echo echo "Usage: $0 [OPTIONS]" - echo + echo echo "where possible OPTIONS are:" echo " (-help|-h) print usage" echo " (-date |-d )PERIOD run for PERIOD=\"YYYY_MM\"" echo " [def=\"$PERIOD\"]" - echo + echo exit 1 } +export LC_ALL="en_US.UTF-8" CURR_PER=`date +%Y`"_"`date +%m` # defaults PERIOD=$CURR_PER @@ -29,27 +30,27 @@ # If the previous option needs an argument, assign it. if test -n "$ac_prev"; then - eval "$ac_prev=\$ac_option" - ac_prev= - continue + eval "$ac_prev=\$ac_option" + ac_prev= + continue fi ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'` case $ac_option in - + -help | --help | -h | --h) usage ;; - - -date | --date | -d | --d) - ac_prev=PERIOD ;; - --date=* | -date=*) - PERIOD=$ac_optarg ;; - *) + -date | --date | -d | --d) + ac_prev=PERIOD ;; + --date=* | -date=*) + PERIOD=$ac_optarg ;; + + *) echo "Error: don't understand argument \"$ac_option\"" usage - ;; + ;; esac @@ -66,140 +67,9 @@ # Create the links in $OUTFILE : echo "Creating the \"latest\" file for each machine: " the_date=`date` -cat > $OUTFILE << EOF - - - - - MITgcm testing summary - - - - - - - - - - - - - -

The MITgcm model is tested - (compiled and run) in an automated fashion on a varirety of - different machines. The following is a summary of the MITgcm - verification suite for the time period: $PERIOD.

- -

The machine naming scheme is:

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Machine Type NicknameNotes
Intel P4 "faulks" Fedora Core 6
Intel P4 "meander" Ubuntu 8.10
Intel P4 "lagoon" Fedora 8
Intel Celeron (P4) "mdvia32" Mandriva 2009.1
Intel Celeron (P4) "jauntyia32" Ubuntu 9.04
Opteron Barcelona "harbor" Ubuntu 8.04 LTS (x86_64)
Intel Xeon (Woodcrest) "dickens" Fedora 10 (x86_64)
Intel Core 2 duo "danton" Fedora 11 (x86_64)
ACESgrid Dell Xeon "aces"Fedora Core 2
Intel Xeon (Woodcrest) cluster - "beagle"Rocks 5.2 (x86_64)
SGI Altix Cluster "columbia" - NAS Columbia
IBM POWER4 SP "edvir" AIX 5.2
IBM POWER5+ SP "blueice"NCAR Blueice -
AMD Opteron "starp" SuSE SLES 10 (AMD64)
AMD Opteron "solasrv" Solaris 10
Sun UltraSparc IV "rays" Solaris 10
NEC SX-8 "sx8" Super-UX
PowerPC970MP cluster "bigred"SuSE SLES 9 (PPC)
-


- The complete output for the verification runs can be found in - the summary pages - and the testing archives. - The latest reports are:

+sed "s/_PERIOD/$PERIOD/" summary_head > $OUTFILE +cat <>$OUTFILE @@ -215,9 +85,9 @@ color="#bbffdd" ncolor="#bbddff" -MACHINES="faulks meander lagoon harbor dickens danton aces" -MACHINES="$MACHINES beagle columbia edvir rays solssrv solasrv sx8" -MACHINES="$MACHINES bigred starp" +MACHINES="faulks meander aces- acesgrid baudelaire dickens danton beagle harbor" +MACHINES="$MACHINES pleiades iblade rays solasrv sx8" +MACHINES="$MACHINES trane dodongo dokdo stomp bigred" ( cd $INDIR ; ls -1 -t */summary.txt | sed 's/\/summary.txt//' ) > ./dir_all @@ -225,14 +95,14 @@ for madd in $MALL ; do present=0 for m in $MACHINES ; do - echo $madd | grep $m > /dev/null 2>&1 - RETVAL=$? - test $RETVAL = 0 && present=1 - continue + echo $madd | grep $m > /dev/null 2>&1 + RETVAL=$? + test $RETVAL = 0 && present=1 + continue done test $present = 0 && MACHINES="$MACHINES $madd" done -#MACHINES="faulks" +#MACHINES="baudelaire" for mname in $MACHINES ; do @@ -265,29 +135,79 @@ OPTFILE="not_explicitly_specified" fi + # EXTRA = non-standard list of experiment ADJOINT= + TANGLIN= RESTART=0 - NOI3E=0 + EXTRA= + FAST=0 + DVLP=0 + MPI=0 MTH=0 + UR4=0 if test -r $dir/summary.txt ; then comm=`grep 'ADJOINT=true' $dir/summary.txt 2>/dev/null` eval $comm + comm=`grep 'TANGLIN=true' $dir/summary.txt 2>/dev/null` + eval $comm RESTART=`grep -c 'test 2+2=4 summary' $dir/summary.txt` - NOI3E=`grep -c "^run: .*testreport.* '*-noieee'*" $dir/summary.txt` - MTH=`grep -c "^run: .*testreport.* -mth " $dir/summary.txt` + comm=`grep '^run: .*testreport.* ' $dir/summary.txt` + EXTRA=`echo "$comm" | grep " -*-tdir\>" | sed -e "s/^.* -*-tdir\>//" -e "s/ -.*$//"` + if test "x$EXTRA" = x ; then + EXTRA=`echo "$comm" | grep " -*-t\>" | sed -e "s/^.*-*-t\>//" -e "s/ -.*$//"` + fi + if test "x$EXTRA" = x ; then EXTRA=0 ; else + #echo -n "EXTRA=$EXTRA" + nn0=`echo $EXTRA | sed "s/ *' *//g" | wc -w` + nn1=`echo $EXTRA | sed "s/ *' *//g" | tr ' ' '\n' | grep -c "\"` + if test "x$FAST" = x0 ; then + FAST=`echo "$comm" | grep -c " '*-noieee'*"` + fi + DVLP=`echo "$comm" | grep -c " -*-devel\>"` + MPI=`echo "$comm" | grep -c " -*-mpi\>"` + if test "x$MPI" = x0 ; then + MPI=`echo "$comm" | grep -c " -*-MPI\>"` + fi + MTH=`echo "$comm" | grep -c " -*-mth\>"` + UR4=`echo "$comm" | grep -c " -*-use_r4\>"` + if test "x$UR4" = x0 ; then + UR4=`echo "$comm" | grep -c " -*-ur4\>"` + fi fi - if test "x$RESTART" = x0 ; then - kind="forward" - test "x$ADJOINT" = xtrue && kind="adjoint" + if test "x$ADJOINT" = xtrue ; then + kind="adjoint" ; order=0 + elif test "x$TANGLIN" = xtrue ; then + kind="tanglin" ; order=1 + elif test "x$RESTART" = x0 ; then + kind="forward" ; order=2 else - kind="restart" + kind="restart" ; order=3 + fi + order=`expr $order + 10 \* $EXTRA` + order=`printf '%3.3i' $order` + if test "x$UR4" = x1 ; then + OPTFILE="${OPTFILE}.use_r4" + fi + if test "x$MPI" = x1 ; then + yy=`echo $OPTFILE | grep -c '+mpi'` + if test $yy = 0 ; then OPTFILE="${OPTFILE}+mpi" ; fi fi if test "x$MTH" = x1 ; then yy=`echo $OPTFILE | grep -c '+mth$'` if test $yy = 0 ; then OPTFILE="${OPTFILE}+mth" ; fi fi - if test "x$NOI3E" = x1 ; then - OPTFILE="${OPTFILE}.noieee" + if test "x$FAST" = x1 ; then + OPTFILE="${OPTFILE}.fast" + fi + if test "x$DVLP" = x1 ; then + OPTFILE="${OPTFILE}.dvlp" fi t_pass="--" @@ -305,10 +225,10 @@ for tok in $tokens ; do echo $tok >> ./ms_tmp done - DAY=`cat ./ms_tmp | awk '(length($1)==8 && substr($1,0,3)=="200")'` + DAY=`cat ./ms_tmp | awk '(length($1)==8 && substr($1,0,2)=="20")'` rm -f ./ms_tmp - echo "$OPTFILE$kind $DAY $OPTFILE $kind $i $t_pass:$t_tot" >> ./mlist + echo "$OPTFILE$order $DAY $OPTFILE $kind $i $t_pass:$t_tot" >> ./mlist done @@ -320,9 +240,9 @@ if test $num -gt 0 ; then # swap colors - ctmp=$color - color=$ncolor - ncolor=$ctmp + ctmp=$color + color=$ncolor + ncolor=$ctmp keys=`cat ./mlist | cut -d " " -f 1 | sort | uniq` @@ -334,9 +254,14 @@ optf=`echo $tline | cut -d " " -f 3` DAY=`echo $tline | cut -d " " -f 2` URL="results/$PERIOD/$ldir" + #-- machine name to print: + sname=`echo $mname | sed 's/-$//'` + alt=`echo $key | sed "s/$optf//"` + #if [ $alt -ge 30 ] ; then sname="${sname}.darwin" + #elif [ $alt -ge 20 ] ; then sname="${sname}.monod" ; fi cat <>$OUTFILE - + @@ -357,7 +282,7 @@
Nickname
$mname $sname $optf $kind $DAY

Examples of the scripts used for these testing runs can be obtained from: +href="http://mitgcm.org/viewvc/MITgcm/MITgcm/tools/example_scripts/"> MITgcm/tools/example_scripts.