--- mitgcm.org/front_content/make_summary 2004/06/02 19:08:03 1.16 +++ mitgcm.org/front_content/make_summary 2010/03/05 20:18:54 1.62 @@ -1,6 +1,6 @@ #! /usr/bin/env bash -# $Header: /home/ubuntu/mnt/e9_copy/mitgcm.org/front_content/make_summary,v 1.16 2004/06/02 19:08:03 edhill Exp $ +# $Header: /home/ubuntu/mnt/e9_copy/mitgcm.org/front_content/make_summary,v 1.62 2010/03/05 20:18:54 jmc Exp $ # # The purpose of this script is to create HTML summaries of the # directories produced by the "parse_emails" script. @@ -19,105 +19,24 @@ exit 1 } -old_summary() -{ - # Create the old-style summary file for $PERIOD - echo -n "Creating the summary file for the period \"$PERIOD\" ... " - cat > $OUTFILE << EOF - - - -
-$MACH | " >> $OUTFILE - echo "$DATE | " >> $OUTFILE - for i in $fresults ; do - if test "x$i" = xN ; then - echo -n "$i | " >> $OUTFILE - else - echo -n "$i | " >> $OUTFILE - fi - done - echo "$optfile | " >> $OUTFILE - echo "
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 | Nickname | -Notes |
Intel P4 | "faulks" | -Fedora Core 1 [formerly Red Hat 7.3] |
Intel P4 | "hemmingway" | -Fedora Core 1 (gcc 3.3.2) |
Intel P3/P4 Beowulf | "myrinet" | -MITgcm cluster - facility |
Alpha cluster | "halem" | -- NASA NCCS Halem |
SGI Origin 2000 | "hopper" | -- NAS SGI Origin 2000 |
SGI Origin 3000 | "lomax" | -- NAS SGI Origin 3000 |
SGI Altix | "orion" | -JPL Supercomputing and - Visualization Facility |
IBM POWER3 SP | "bf" | -NCAR Blackforest - |
IBM POWER4 SP | "bs" | -NCAR Bluesky - |
AMD Opteron | "adams" | -RHEL v3 (AMD64) |
Sun UltraSparc | "slough" | -Solaris 8 |
Intel P4 Mosix Cluster | "sea" | -Red Hat v7.2 |
AMD Athlon XP 2500+ | "eddy" | -Fedora Core 2 (Red Hat gcc 3.3.3) |
AMD Opteron cluster | "dolphin" | -SuSE SLES v8.1 |
- The complete output for the verification runs can be found in
- the summary pages
- and the testing archives.
- The latest reports are:
Nickname | @@ -247,12 +84,25 @@ color="#bbffdd" ncolor="#bbddff" -res_url="http://mitgcm.org/testing/" -MACHINES="faulks shelley myrinet eaps halem hopper lomax orion bf bs slough sea" -MACHINES="$MACHINES eddy adams dolphin hemmingway" - -( cd $INDIR ; ls -1 ) > ./dir_all +MACHINES="faulks meander lagoon harbor dickens danton aces" +MACHINES="$MACHINES beagle columbia pleiades iblade rays solssrv solasrv sx8" +MACHINES="$MACHINES bigred starp" + +( cd $INDIR ; ls -1 -t */summary.txt | sed 's/\/summary.txt//' ) > ./dir_all + +MALL=`cat ./dir_all | sed -e 's|_| |g' | awk '{print $2}' | sort | uniq` +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 + done + test $present = 0 && MACHINES="$MACHINES $madd" +done +#MACHINES="faulks" for mname in $MACHINES ; do @@ -276,7 +126,7 @@ OPTFILE=${OPTFILE##*/} fi if test "x$OPTFILE" = x ; then - comm=`grep '^# OPTFILE=' $dir/*/Makefile 2>/dev/null | head -1` + comm=`grep '^# OPTFILE=' $dir/*/Makefile* 2>/dev/null | head -1` comm=${comm##*#} eval $comm OPTFILE=${OPTFILE##*/} @@ -286,40 +136,46 @@ fi ADJOINT= + RESTART=0 + NOI3E=0 + MTH=0 + UR4=0 if test -r $dir/summary.txt ; then comm=`grep 'ADJOINT=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` + UR4=`grep -c "^run: .*testreport.* -use_r4 " $dir/summary.txt` + if test "x$UR4" = x0 ; then + UR4=`grep -c "^run: .*testreport.* -ur4 " $dir/summary.txt` + fi fi - if test "x$ADJOINT" = x ; then + if test "x$RESTART" = x0 ; then kind="forward" - else test "x$ADJOINT" = xtrue && kind="adjoint" + else + kind="restart" + fi + if test "x$UR4" = x1 ; then + OPTFILE="${OPTFILE}.use_r4" + 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" fi t_pass="--" t_tot="--" if test -r $dir/summary.txt ; then - grep '^[YN] [YN] [YN] [YN] ' $dir/summary.txt > ./all_tests 2>/dev/null + grep '^[YN] [YN] [YN] [YN]' $dir/summary.txt > ./all_tests 2>/dev/null t_tot=`cat ./all_tests | wc -l | sed -e 's| ||g'` - grep '^Y Y Y Y ' ./all_tests > ./all_ran 2>/dev/null - grep advect_ ./all_ran 2>/dev/null > ./all_ran_advect - t_advect=`cat ./all_ran_advect | wc -l | sed -e 's| ||g'` - digits=`cat ./all_ran_advect | awk '{print $9}'` - t_advect_pass=0 - for k in $digits ; do - test "x$k" = x-- && k=0 - test $k -ge 9 && t_advect_pass=$(( $t_advect_pass + 1 )) - done - grep -v advect ./all_ran 2>/dev/null > ./all_ran_noadvect - digits=`cat ./all_ran_noadvect | awk '{print $5}'` - t_sum=0 - for k in $digits ; do - test "x$k" = x-- && k=0 - test $k -ge 9 && t_sum=$(( $t_sum + 1 )) - done - t_pass=$(( $t_sum + $t_advect_pass )) + t_pass=`grep '^Y Y Y Y' ./all_tests | grep 'pass ' | wc -l | sed -e 's| ||g'` fi - rm -f ./all_tests ./all_ran ./all_ran_advect ./all_ran_noadvect + rm -f ./all_tests # echo "${dir##*/} : $t_pass out of $t_tot" tokens=`echo $i | sed -e 's|_| |g'` @@ -327,7 +183,7 @@ 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 @@ -349,14 +205,14 @@ keys=`cat ./mlist | cut -d " " -f 1 | sort | uniq` for key in $keys ; do - tline=`grep "^$key " ./mlist | sort -r | head -1` + tline=`grep "^$key " ./mlist | head -1` ratio=`echo $tline | cut -d " " -f 6` ldir=`echo $tline | cut -d " " -f 5` kind=`echo $tline | cut -d " " -f 4` optf=`echo $tline | cut -d " " -f 3` DAY=`echo $tline | cut -d " " -f 2` URL="results/$PERIOD/$ldir" - cat <||||||||
$mname | $optf | @@ -371,17 +227,16 @@ done -cat >> $LATEST << EOF +cat >> $OUTFILE << EOF|||||||
This table generated on: $the_date |
Examples of the scripts used for these testing runs can be obtained -from -the "contrib" area of the MITgcm CVS archive.
+Examples of the scripts used for these testing runs can be obtained from: +MITgcm/tools/example_scripts.
@@ -391,7 +246,12 @@ rm -f ./dir_all ./mlist -CURR_PER=`date +%Y`"_"`date +%m` +#- put the file in place +chgrp gcmpack $OUTFILE +chmod 664 $OUTFILE +LATEST=$OUTDIR"/latest_"$PERIOD".html" +mv -f $OUTFILE $LATEST + if test "x$PERIOD" = "x$CURR_PER" ; then cp $LATEST ./testing.xml (