--- mitgcm.org/front_content/make_summary 2007/12/25 17:38:26 1.32 +++ mitgcm.org/front_content/make_summary 2013/04/05 21:15:06 1.77 @@ -1,6 +1,6 @@ #! /usr/bin/env bash -# $Header: /home/ubuntu/mnt/e9_copy/mitgcm.org/front_content/make_summary,v 1.32 2007/12/25 17:38:26 jmc Exp $ +# $Header: /home/ubuntu/mnt/e9_copy/mitgcm.org/front_content/make_summary,v 1.77 2013/04/05 21:15:06 jmc Exp $ # # The purpose of this script is to create HTML summaries of the # directories produced by the "parse_emails" script. @@ -10,159 +10,66 @@ { 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=`date +%Y`"_"`date +%m` +PERIOD=$CURR_PER # Parse options ac_prev= for ac_option ; do - + # 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 - + done +#INDIR="/net/orwell/export/export-9/mitgcm-testing/results/$PERIOD" +#OUTDIR="/home/jmc/mitgcm/test_web/summary" INDIR="/u/u0/httpd/html/testing/results/$PERIOD" OUTDIR="/u/u0/httpd/html/testing/summary" -OUTFILE=$OUTDIR"/summary_"$PERIOD".html" -# Create the "latest" links +OUTFILE=$OUTDIR"/output_"$PERIOD".html" +res_url="http://mitgcm.org/testing/" + +# Create the links in $OUTFILE : echo "Creating the \"latest\" file for each machine: " -LATEST=$OUTDIR"/latest_"$PERIOD".html" the_date=`date` -cat > $LATEST << EOF - - - -
-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 3 |
Intel P4 | "hemmingway" | -Fedora Core 3 |
Intel P3/P4 Beowulf | "myrinet" | -MITgcm cluster - facility |
Alpha cluster | "halem" | -- NASA NCCS Halem |
SGI Altix 350 | "altix350" | -MIT ACESgrid - GeoCluster |
IBM POWER3 SP | "bf" | -NCAR Blackforest - |
IBM POWER4 SP | "bs" | -NCAR Bluesky - |
AMD Opteron | "adams" | -Fedora Core 4 (AMD64) |
Sun UltraSparc | "slough" | -Solaris 8 |
Intel P4 Mosix Cluster | "sea" | -Red Hat v7.2 |
Intel P4 | "eddy" | -Fedora Core 5 |
AMD Opteron cluster | "dolphin" | -SuSE SLES v8.1 |
IBM/Apple dual G5 | "two" | -Mac OSX 10.3 (gcc 3.4) |
ACESgrid Dell - Xeon | "aces" | Fedora Core 2 |
- The complete output for the verification runs can be found in
- the summary pages
- and the testing archives.
- The latest reports are:
Nickname | @@ -177,25 +84,24 @@ color="#bbffdd" ncolor="#bbddff" -res_url="http://mitgcm.org/testing/" -MACHINES="faulks aces eddy bay meander" -MACHINES="$MACHINES edvir rays1 model columbia" -MACHINES="$MACHINES xd1 batsi starp" +MACHINES="aces- acesgrid baudelaire dickens danton beagle" +MACHINES="$MACHINES pleiades iblade sx8 uv100 solasrv stomp weber" -( cd $INDIR ; ls -1 -t ) > ./dir_all +( 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 + echo $madd | grep $m > /dev/null 2>&1 + RETVAL=$? + test $RETVAL = 0 && present=1 + continue done test $present = 0 && MACHINES="$MACHINES $madd" done +#MACHINES="baudelaire" for mname in $MACHINES ; do @@ -228,18 +134,90 @@ OPTFILE="not_explicitly_specified" fi - ADJOINT= + # EXTRA = non-standard list of experiment + ADJOINT=0 + TANGLIN=0 + OPENAD=0 RESTART=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 + ADJOINT=`grep -c -i '^ADJOINT' $dir/summary.txt` + if test "x$ADJOINT" = x1 ; then + OPENAD=`grep -c '^Adjoint .* OpenAD' $dir/summary.txt` + fi + TANGLIN=`grep -c -i '^TANGLIN' $dir/summary.txt` + if test "x$TANGLIN" = x1 ; then + OPENAD=`grep -c '^TangLin .* OpenAD' $dir/summary.txt` + fi RESTART=`grep -c 'test 2+2=4 summary' $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 "\|||||||||||
$mname | +$sname | $optf | $kind | $DAY | @@ -301,7 +284,7 @@ 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: +href="http://mitgcm.org/viewvc/MITgcm/MITgcm/tools/example_scripts/"> MITgcm/tools/example_scripts.
@@ -320,7 +303,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 (