19 |
exit 1 |
exit 1 |
20 |
} |
} |
21 |
|
|
22 |
|
old_summary() |
23 |
|
{ |
24 |
|
# Create the old-style summary file for $PERIOD |
25 |
|
echo -n "Creating the summary file for the period \"$PERIOD\" ... " |
26 |
|
cat > $OUTFILE << EOF |
27 |
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" |
28 |
|
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
29 |
|
|
30 |
|
<html xmlns="http://www.w3.org/1999/xhtml"> |
31 |
|
<head> |
32 |
|
<title>MITgcm testing summary</title> |
33 |
|
<meta name="author" content="Ed Hill" /> |
34 |
|
<base href="http://mitgcm.org/testing/summary/" /> |
35 |
|
</head> |
36 |
|
<body> |
37 |
|
<table cellpadding="0" cellspacing="0" border="0" width="100%"> |
38 |
|
|
39 |
|
EOF |
40 |
|
|
41 |
|
# all_files=`find $INDIR -name summary.txt` |
42 |
|
all_files=`( cd $INDIR ; find . -name summary.txt )` |
43 |
|
|
44 |
|
for f in $all_files ; do |
45 |
|
|
46 |
|
file=$INDIR"/"${f/.\//} |
47 |
|
grep "^fresults" $file > /dev/null 2>&1 |
48 |
|
RETVAL=$? |
49 |
|
if test "x$RETVAL" != x0 ; then |
50 |
|
continue |
51 |
|
fi |
52 |
|
|
53 |
|
url=`echo $file | sed -e 's|/u/edhill/www|http://mitgcm.org/~edhill|'` |
54 |
|
url=`echo $url | sed -e 's|summary.txt||'` |
55 |
|
MACH= |
56 |
|
fresults= |
57 |
|
color="#eeeeee" |
58 |
|
|
59 |
|
source $file |
60 |
|
echo $fresults | grep FAIL > /dev/null 2>&1 |
61 |
|
if test "x$?" = x0 ; then |
62 |
|
color="#ff99ff" |
63 |
|
fi |
64 |
|
echo $fresults | grep pass > /dev/null 2>&1 |
65 |
|
if test "x$?" = x0 ; then |
66 |
|
color="#99ffff" |
67 |
|
fi |
68 |
|
|
69 |
|
gm_state=`echo $file | sed -e 's/summary.txt/genmake_state/g'` |
70 |
|
if test -r $gm_state ; then |
71 |
|
grep '^OPTFILE=' $gm_state > ./tmp_state |
72 |
|
source ./tmp_state |
73 |
|
else |
74 |
|
optfile="unknown" |
75 |
|
fi |
76 |
|
optfile=`echo $OPTFILE | awk -F '/' '{print $NF}'` |
77 |
|
|
78 |
|
echo "<tr bgcolor=\"$color\">" >> $OUTFILE |
79 |
|
echo "<td height=\"0\">$MACH</td>" >> $OUTFILE |
80 |
|
echo "<td><a href=\"$url\">$DATE</a></td>" >> $OUTFILE |
81 |
|
for i in $fresults ; do |
82 |
|
if test "x$i" = xN ; then |
83 |
|
echo -n "<td bgcolor=\"#ff6666\">$i</td>" >> $OUTFILE |
84 |
|
else |
85 |
|
echo -n "<td>$i</td>" >> $OUTFILE |
86 |
|
fi |
87 |
|
done |
88 |
|
echo "<td>$optfile</td>" >> $OUTFILE |
89 |
|
echo "</tr>" >> $OUTFILE |
90 |
|
|
91 |
|
done |
92 |
|
|
93 |
|
cat >> $OUTFILE << EOF |
94 |
|
|
95 |
|
</table> |
96 |
|
</body> |
97 |
|
</html> |
98 |
|
EOF |
99 |
|
|
100 |
|
chmod a+r $OUTFILE |
101 |
|
echo "done" |
102 |
|
} |
103 |
|
|
104 |
|
|
105 |
# defaults |
# defaults |
106 |
PERIOD=`date +%Y`"_"`date +%m` |
PERIOD=`date +%Y`"_"`date +%m` |
107 |
|
|
141 |
OUTDIR="/u/u0/httpd/html/testing/summary" |
OUTDIR="/u/u0/httpd/html/testing/summary" |
142 |
OUTFILE=$OUTDIR"/summary_"$PERIOD".html" |
OUTFILE=$OUTDIR"/summary_"$PERIOD".html" |
143 |
|
|
|
|
|
|
# Create the summary file for $PERIOD |
|
|
echo -n "Creating the summary file for the period \"$PERIOD\" ... " |
|
|
cat > $OUTFILE << EOF |
|
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" |
|
|
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
|
|
|
|
|
<html xmlns="http://www.w3.org/1999/xhtml"> |
|
|
<head> |
|
|
<title>MITgcm testing summary</title> |
|
|
<meta name="author" content="Ed Hill" /> |
|
|
<base href="http://mitgcm.org/testing/summary/" /> |
|
|
</head> |
|
|
<body> |
|
|
<table cellpadding="0" cellspacing="0" border="0" width="100%"> |
|
|
|
|
|
EOF |
|
|
|
|
|
# all_files=`find $INDIR -name summary.txt` |
|
|
all_files=`( cd $INDIR ; find . -name summary.txt )` |
|
|
|
|
|
for f in $all_files ; do |
|
|
|
|
|
file=$INDIR"/"${f/.\//} |
|
|
grep "^fresults" $file > /dev/null 2>&1 |
|
|
RETVAL=$? |
|
|
if test "x$RETVAL" != x0 ; then |
|
|
continue |
|
|
fi |
|
|
|
|
|
url=`echo $file | sed -e 's|/u/edhill/www|http://mitgcm.org/~edhill|'` |
|
|
url=`echo $url | sed -e 's|summary.txt||'` |
|
|
MACH= |
|
|
fresults= |
|
|
color="#eeeeee" |
|
|
|
|
|
source $file |
|
|
echo $fresults | grep FAIL > /dev/null 2>&1 |
|
|
if test "x$?" = x0 ; then |
|
|
color="#ff99ff" |
|
|
fi |
|
|
echo $fresults | grep pass > /dev/null 2>&1 |
|
|
if test "x$?" = x0 ; then |
|
|
color="#99ffff" |
|
|
fi |
|
|
|
|
|
gm_state=`echo $file | sed -e 's/summary.txt/genmake_state/g'` |
|
|
if test -r $gm_state ; then |
|
|
grep '^OPTFILE=' $gm_state > ./tmp_state |
|
|
source ./tmp_state |
|
|
else |
|
|
optfile="unknown" |
|
|
fi |
|
|
optfile=`echo $OPTFILE | awk -F '/' '{print $NF}'` |
|
|
|
|
|
echo "<tr bgcolor=\"$color\">" >> $OUTFILE |
|
|
echo "<td height=\"0\">$MACH</td>" >> $OUTFILE |
|
|
echo "<td><a href=\"$url\">$DATE</a></td>" >> $OUTFILE |
|
|
for i in $fresults ; do |
|
|
if test "x$i" = xN ; then |
|
|
echo -n "<td bgcolor=\"#ff6666\">$i</td>" >> $OUTFILE |
|
|
else |
|
|
echo -n "<td>$i</td>" >> $OUTFILE |
|
|
fi |
|
|
done |
|
|
echo "<td>$optfile</td>" >> $OUTFILE |
|
|
echo "</tr>" >> $OUTFILE |
|
|
|
|
|
done |
|
|
|
|
|
cat >> $OUTFILE << EOF |
|
|
|
|
|
</table> |
|
|
</body> |
|
|
</html> |
|
|
|
|
|
EOF |
|
|
|
|
|
chmod a+r $OUTFILE |
|
|
echo "done" |
|
|
|
|
|
|
|
144 |
# Create the "latest" links |
# Create the "latest" links |
145 |
echo "Creating the \"latest\" file for each machine: " |
echo "Creating the \"latest\" file for each machine: " |
146 |
LATEST=$OUTDIR"/latest_"$PERIOD".html" |
LATEST=$OUTDIR"/latest_"$PERIOD".html" |
207 |
<tr bgcolor="#bbddff"> <td> AMD Opteron </td> <td>"eaps"</td> |
<tr bgcolor="#bbddff"> <td> AMD Opteron </td> <td>"eaps"</td> |
208 |
<td>SuSE Linux 9.0 (x86-64)</td> </tr> |
<td>SuSE Linux 9.0 (x86-64)</td> </tr> |
209 |
|
|
210 |
|
<tr bgcolor="#bbffdd"> <td> Sun UltraSparc </td> <td>"slough"</td> |
211 |
|
<td>Solaris 8</td> </tr> |
212 |
|
<tr bgcolor="#bbddff"> <td> Intel P4 Mosix Cluster </td> <td>"sea"</td> |
213 |
|
<td>Red Hat v7.2</td> </tr> |
214 |
|
|
215 |
<!-- |
<!-- |
216 |
<tr bgcolor="#bbddff"> <td> </td> <td>""</td> |
<tr bgcolor="#bbddff"> <td> </td> <td>""</td> |
217 |
<td></td> </tr> |
<td></td> </tr> |
231 |
<td> <b>Type</b> </td> |
<td> <b>Type</b> </td> |
232 |
<td> <b>Date</b> </td> |
<td> <b>Date</b> </td> |
233 |
<td> <b>Summary</b> </td> |
<td> <b>Summary</b> </td> |
234 |
|
<td> <b>Ratio</b> </td> |
235 |
</tr> |
</tr> |
236 |
|
|
237 |
EOF |
EOF |
239 |
color="#bbffdd" |
color="#bbffdd" |
240 |
res_url="http://mitgcm.org/testing/" |
res_url="http://mitgcm.org/testing/" |
241 |
|
|
242 |
MACHINES="faulks shelley myrinet eaps halem hopper lomax orion bf bs" |
MACHINES="faulks shelley myrinet eaps halem hopper lomax orion bf bs slough sea" |
243 |
|
|
244 |
( cd $INDIR ; ls -1 ) > ./dir_all |
( cd $INDIR ; ls -1 ) > ./dir_all |
245 |
|
|
290 |
test "x$ADJOINT" = xtrue && kind="adjoint" |
test "x$ADJOINT" = xtrue && kind="adjoint" |
291 |
fi |
fi |
292 |
|
|
293 |
|
t_pass="--" |
294 |
|
t_tot="--" |
295 |
|
if test -r $dir/summary.txt ; then |
296 |
|
grep '^[YN] [YN] [YN] [YN] ' $dir/summary.txt > ./all_tests 2>/dev/null |
297 |
|
t_tot=`cat ./all_tests | wc -l | sed -e 's| ||g'` |
298 |
|
grep '^Y Y Y Y ' ./all_tests > ./all_ran 2>/dev/null |
299 |
|
t_advect=`grep advect_ ./all_ran 2>/dev/null | wc -l | sed -e 's| ||g'` |
300 |
|
t_advect=${t_advect/ /} |
301 |
|
grep -v advect ./all_ran 2>/dev/null > ./all_ran_noadvect |
302 |
|
digits=`cat ./all_ran_noadvect | awk '{print $5}'` |
303 |
|
t_sum=0 |
304 |
|
for k in $digits ; do |
305 |
|
test "x$k" = x-- && k=0 |
306 |
|
test $k -ge 9 && t_sum=$(( $t_sum + 1 )) |
307 |
|
done |
308 |
|
t_pass=$(( $t_sum + $t_advect )) |
309 |
|
fi |
310 |
|
rm -f ./all_tests ./all_ran ./all_ran_noadvect |
311 |
|
# echo "${dir##*/} : $t_pass out of $t_tot" |
312 |
|
|
313 |
tokens=`echo $i | sed -e 's|_| |g'` |
tokens=`echo $i | sed -e 's|_| |g'` |
314 |
echo "" > ./ms_tmp |
echo "" > ./ms_tmp |
315 |
for tok in $tokens ; do |
for tok in $tokens ; do |
318 |
DAY=`cat ./ms_tmp | awk '(length($1)==8 && substr($1,0,3)=="200")'` |
DAY=`cat ./ms_tmp | awk '(length($1)==8 && substr($1,0,3)=="200")'` |
319 |
rm -f ./ms_tmp |
rm -f ./ms_tmp |
320 |
|
|
321 |
echo "$OPTFILE$kind $DAY $OPTFILE $kind $i" >> ./mlist |
echo "$OPTFILE$kind $DAY $OPTFILE $kind $i $t_pass:$t_tot" >> ./mlist |
322 |
|
|
323 |
done |
done |
324 |
|
|
332 |
|
|
333 |
for key in $keys ; do |
for key in $keys ; do |
334 |
tline=`grep "^$key " ./mlist | sort -r | head -1` |
tline=`grep "^$key " ./mlist | sort -r | head -1` |
335 |
|
ratio=`echo $tline | cut -d " " -f 6` |
336 |
ldir=`echo $tline | cut -d " " -f 5` |
ldir=`echo $tline | cut -d " " -f 5` |
337 |
kind=`echo $tline | cut -d " " -f 4` |
kind=`echo $tline | cut -d " " -f 4` |
338 |
optf=`echo $tline | cut -d " " -f 3` |
optf=`echo $tline | cut -d " " -f 3` |
345 |
<td> $kind </td> |
<td> $kind </td> |
346 |
<td> <a href="$res_url$URL">$DAY</a> </td> |
<td> <a href="$res_url$URL">$DAY</a> </td> |
347 |
<td> <a href="$res_url$URL/summary.txt"> summary.txt </a> </td> |
<td> <a href="$res_url$URL/summary.txt"> summary.txt </a> </td> |
348 |
|
<td> $ratio </td> |
349 |
</tr> |
</tr> |
350 |
EOF |
EOF |
351 |
done |
done |
355 |
|
|
356 |
cat >> $LATEST << EOF |
cat >> $LATEST << EOF |
357 |
<tr bgcolor="#00cccc"> |
<tr bgcolor="#00cccc"> |
358 |
<td height="0" colspan="5" align="center" > |
<td height="0" colspan="6" align="center" >This table generated on: $the_date</td> |
359 |
=== This table generated on: $the_date === |
</tr> |
|
</td> |
|
|
</tr> |
|
360 |
|
|
361 |
</table> |
</table> |
362 |
|
|
363 |
|
<p>Examples of the scripts used for these testing runs can be obtained |
364 |
|
from <a |
365 |
|
href="http://dev.mitgcm.org/cgi-bin/viewcvs.cgi/MITgcm_contrib/test_scripts/"> |
366 |
|
the "contrib" area of the MITgcm CVS archive</a>.</p> |
367 |
|
|
368 |
|
|
369 |
</body> |
</body> |
370 |
</html> |
</html> |
371 |
|
|